We have a new documentation site for cPanel & WHM! You can find our new documentation site at docs.cpanel.net.

We will continue to maintain our API documentation on this server.

Child pages
  • UAPI Functions - DirectoryPrivacy::configure_directory_protection
Skip to end of metadata
Go to start of metadata

Description

This function enables or disables password protection for a directory on the cPanel account.

Examples


 cPanel or Webmail Session URL
https://hostname.example.com:2083/cpsess##########/execute/DirectoryPrivacy/configure_directory_protection?dir=/home/example/example.com&enabled=1&authname=protectandserve


Note:

This example calls the UAPI function via a cPanel session. For more information, read our Guide to UAPI documentation. 

 LiveAPI PHP Class
$cpanel = new CPANEL(); // Connect to cPanel - only do this once.
 
// Enable password protection for the /home/example/example.com directory.
$configure_directory_protection = $cpanel->uapi(
    'DirectoryPrivacy', 'configure_directory_protection',
    array(
        'dir'    => '/home/example/example.com',
		'enabled'  => '1',
		'authname' => 'protectandserve',
  )
);


Note:

For more information, read our Guide to the LiveAPI System.

 LiveAPI Perl Module
my $cpliveapi = Cpanel::LiveAPI->new(); # Connect to cPanel - only do this once.
 
# Enable password protection for the /home/example/example.com is password protected.
my $configure_directory_protection = $cpliveapi->uapi(
    'DirectoryPrivacy', 'configure_directory_protection',
    {
        'dir'      => '/home/example/example.com',
		'enabled'  => '1',
		'authname' => 'protectandserve',
    }
);


Note:

For more information, read our Guide to the LiveAPI System.

 

 Command Line
uapi --user=username DirectoryPrivacy configure_directory_protection dir=/home/example/example.com enabled=1 authname=protectandserve


Notes:

  • You must URI-encode values.
  • username represents your account-level username.
  • For more information and additional output options, read our Guide to UAPI documentation or run the uapi --help command. 
  • If you run CloudLinux™, you must use the full path of the uapi command:

    /usr/local/cpanel/bin/uapi


 Output (JSON)
{ 
   "errors":null,
   "data":{ 
      "auth_type":"Basic",
      "protected":1,
      "passwd_file":"/home/example/.htpasswds/example.com/passwd",
      "auth_name":"protectandserve"
   },
   "warnings":null,
   "status":1,
   "messages":null,
   "metadata":{ 

   }
}


Note:

Use cPanel's API Shell interface (cPanel >> Home >> Advanced >> API Shell) to directly test cPanel API calls.

Parameters

ParameterTypeDescriptionPossible valuesExample
dirstring

Required

The directory for which to enable or disable password protection.

  • An absolute directory path on the cPanel account.
  • A filepath relative to the user's home directory.
/home/example/example.com
enabled Boolean

Required

Whether to enable password protection for the directory.

  • 1 — Enable
  • 0 — Disable
1 
authname string

Required

The name of the directory protection authorization instance.

Note:

Only use this parameter when you enable password protection.

A valid string.protectandserve

Returns

ReturnTypeDescriptionPossible valuesExample

protected

Boolean

Whether the directory uses password protection.

  • 1 — Protected.
  • 0 — Not protected.
1 

passwd_file

string

The path to the directory's password file.

A valid file path./home/example/.htpasswds/example.com/passwd

auth_type

string

The directory's authentication type.

  • Basic
  • None 
Basic 

auth_name

string

The authentication resource name.

A valid string.protectandserve