- Created by Documentation, last modified on Jan 17, 2019
Backup:: fullbackup_to_ftp
Backup:: fullbackup_to_homedir
Backup:: fullbackup_to_scp_with_key
Backup:: fullbackup_to_scp_with_password
Backup:: list_backups
Batch:: strict
Brand:: read
Branding:: file
Branding:: get_applications
Branding:: get_application_information
Branding:: get_available_applications
Branding:: get_information_for_applications
Branding:: image
Branding:: include
Branding:: spritelist
Chkservd:: get_exim_ports
Chkservd:: get_exim_ports_ssl
Chrome:: get_dom
Contactus:: is_enabled
cPGreyList:: disable_all_domains
cPGreyList:: disable_domains
cPGreyList:: enable_all_domains
cPGreyList:: enable_domains
cPGreyList:: has_greylisting_enabled
cPGreyList:: list_domains
DomainInfo:: domains_data
DomainInfo:: list_domains
DomainInfo:: main_domain_builtin_subdomain_aliases
DomainInfo:: single_domain_data
DNSSEC:: disable_dnssec
DNSSEC:: enable_dnssec
DNSSEC:: fetch_ds_records
DNSSEC:: set_nsec3
DNSSEC:: unset_nsec3
Email:: account_name
Email:: add_auto_responder
Email:: add_domain_forwarder
Email:: add_forwarder
Email:: add_list
Email:: add_mailman_delegates
Email:: add_mx
Email:: add_pop
Email:: add_spam_filter
Email:: browse_mailbox
Email:: change_mx
Email:: check_fastmail
Email:: check_pipe_forwarder
Email:: delete_auto_responder
Email:: delete_domain_forwarder
Email:: delete_filter
Email:: delete_forwarder
Email:: delete_held_messages
Email:: delete_list
Email:: delete_mx
Email:: delete_pop
Email:: disable_filter
Email:: disable_mailbox_autocreate
Email:: disable_spam_assassin
Email:: disable_spam_autodelete
Email:: disable_spam_box
Email:: dispatch_client_settings
Email:: edit_pop_quota
Email:: enable_filter
Email:: enable_mailbox_autocreate
Email:: enable_spam_assassin
Email:: enable_spam_box
Email:: fetch_charmaps
Email:: fts_rescan_mailbox
Email:: generate_mailman_otp
Email:: get_auto_responder
Email:: get_charsets
Email:: get_client_settings
Email:: get_default_email_quota
Email:: get_default_email_quota_mib
Email:: get_disk_usage
Email:: get_filter
Email:: get_held_message_count
Email:: get_mailbox_autocreate
Email:: get_mailman_delegates
Email:: get_main_account_disk_usage
Email:: get_main_account_disk_usage_bytes
Email:: get_max_email_quota
Email:: get_max_email_quota_mib
Email:: get_pop_quota
Email:: get_spam_settings
Email:: get_webmail_settings
Email:: has_delegated_mailman_lists
Email:: has_plaintext_authentication
Email:: hold_outgoing
Email:: is_integer
Email:: list_auto_responders
Email:: list_default_address
Email:: list_domain_forwarders
Email:: list_filters
Email:: list_filters_backups
Email:: list_forwarders
Email:: list_forwarders_backups
Email:: list_lists
Email:: list_mail_domains
Email:: list_mxs
Email:: list_pops
Email:: list_pops_with_disk
Email:: list_system_filter_info
Email:: passwd_list
Email:: passwd_pop
Email:: release_outgoing
Email:: remove_mailman_delegates
Email:: reorder_filters
Email:: set_always_accept
Email:: set_default_address
Email:: set_list_privacy_options
Email:: stats_db_status
Email:: store_filter
Email:: suspend_incoming
Email:: suspend_login
Email:: suspend_outgoing
Email:: trace_filter
Email:: unsuspend_incoming
Email:: unsuspend_login
Email:: unsuspend_outgoing
Email:: verify_password
EmailAuth:: disable_dkim
EmailAuth:: enable_dkim
EmailAuth:: ensure_dkim_keys_exist
EmailAuth:: fetch_dkim_private_keys
EmailAuth:: install_dkim_private_keys
EmailAuth:: install_spf_records
EmailAuth:: validate_current_dkims
EmailAuth:: validate_current_ptrs
EmailAuth:: validate_current_spfs
ExternalAuthentication:: add_authn_link
ExternalAuthentication:: configured_modules
ExternalAuthentication:: get_authn_links
ExternalAuthentication:: has_external_auth_modules_configured
ExternalAuthentication:: remove_authn_link
Features:: has_feature
Features:: list_features
Fileman:: autocompletedir
Fileman:: empty_trash
Fileman:: get_file_content
Fileman:: get_file_information
Fileman:: list_files
Fileman:: save_file_content
Fileman:: transcode
Fileman:: upload_files
Ftp:: add_ftp
Ftp:: allows_anonymous_ftp
Ftp:: allows_anonymous_ftp_incoming
Ftp:: delete_ftp
Ftp:: ftp_exists
Ftp:: get_ftp_daemon_info
Ftp:: get_port
Ftp:: get_quota
Ftp:: get_welcome_message
Ftp:: kill_session
Ftp:: list_ftp
Ftp:: list_ftp_with_disk
Ftp:: list_sessions
Ftp:: passwd
Ftp:: server_name
Ftp:: set_anonymous_ftp
Ftp:: set_anonymous_ftp_incoming
Ftp:: set_homedir
Ftp:: set_quota
Ftp:: set_welcome_message
Integration:: fetch_url
LangPHP:: php_get_domain_handler
LangPHP:: php_get_impacted_domains
LangPHP:: php_get_installed_versions
LangPHP:: php_get_system_default_version
LangPHP:: php_get_vhost_versions
LangPHP:: php_ini_get_user_basic_directives
LangPHP:: php_ini_get_user_content
LangPHP:: php_ini_get_user_paths
LangPHP:: php_ini_set_user_basic_directives
LangPHP:: php_ini_set_user_content
LangPHP:: php_set_vhost_versions
LastLogin:: get_last_or_current_logged_in_ip
Locale:: get_attributes
Mailboxes:: expunge_mailbox_messages
Mailboxes:: expunge_messages_for_mailbox_guid
Mailboxes:: get_mailbox_status
Mailboxes:: has_utf8_mailbox_names
Mailboxes:: set_utf8_mailbox_names
Market:: cancel_pending_ssl_certificate
Market:: create_shopping_cart
Market:: get_all_products
Market:: get_certificate_status_details
Market:: get_login_url
Market:: get_pending_ssl_certificates
Market:: get_provider_specific_dcv_constraints
Market:: get_providers_list
Market:: get_ssl_certificate_if_available
Market:: process_ssl_pending_queue
Market:: request_ssl_certificates
Market:: set_status_of_pending_queue_items
Market:: set_url_after_checkout
Market:: validate_login_token
Mime:: add_handler
Mime:: add_hotlink
Mime:: add_mime
Mime:: add_redirect
Mime:: delete_handler
Mime:: delete_hotlink
Mime:: delete_mime
Mime:: delete_redirect
Mime:: list_handlers
Mime:: list_hotlinks
Mime:: list_mime
Mime:: list_redirects
Mime:: redirect_info
ModSecurity:: disable_all_domains
ModSecurity:: disable_domains
ModSecurity:: enable_all_domains
ModSecurity:: enable_domains
ModSecurity:: has_modsecurity_installed
ModSecurity:: list_domains
Mysql:: add_host
Mysql:: add_host_note
Mysql :: check_database
Mysql:: create_database
Mysql:: create_user
Mysql:: delete_database
Mysql:: delete_host
Mysql:: delete_user
Mysql:: get_host_notes
Mysql:: get_privileges_on_database
Mysql:: get_restrictions
Mysql:: get_server_information
Mysql:: locate_server
Mysql:: rename_database
Mysql:: rename_user
Mysql:: repair_database
Mysql:: revoke_access_to_database
Mysql:: set_password
Mysql:: set_privileges_on_database
Notifications:: get_notifications_count
Parser:: firstfile_relative_uri
PassengerApps:: disable_application
PassengerApps:: edit_application
PassengerApps:: enable_application
PassengerApps:: list_applications
PassengerApps:: register_application
PassengerApps:: unregister_application
PasswdStrength:: get_required_strength
Postgresql:: create_database
Postgresql:: create_user
Postgresql:: delete_database
Postgresql:: get_restrictions
Postgresql:: grant_all_privileges
Postgresql:: rename_database
Postgresql:: rename_user
Postgresql:: rename_user_no_password
Postgresql:: revoke_all_privileges
Postgresql:: set_password
Pushbullet:: send_test_message
Quota:: get_quota_info
Resellers:: list_accounts
ResourceUsage:: get_usages
Session:: create_temp_user
SpamAssassin :: clear_spam_box
SpamAssassin:: get_symbolic_test_names
SpamAssassin:: get_user_preferences
SpamAssassin:: update_user_preference
SSH:: get_port
SSL:: add_autossl_excluded_domains
SSL:: check_shared_cert
SSL:: delete_cert
SSL:: delete_csr
SSL:: delete_key
SSL:: delete_ssl
SSL :: disable_mail_sni
SSL:: enable_mail_sni
SSL:: fetch_best_for_domain
SSL:: fetch_cert_info
SSL:: fetch_certificates_for_fqdns
SSL:: fetch_key_and_cabundle_for_certificate
SSL:: find_certificates_for_key
SSL:: find_csrs_for_key
SSL:: generate_cert
SSL:: generate_csr
SSL:: generate_key
SSL:: get_autossl_excluded_domains
SSL:: get_autossl_pending_queue
SSL:: get_autossl_problems
SSL:: get_cabundle
SSL:: get_cn_name
SSL:: install_ssl
SSL:: installed_host
SSL:: installed_hosts
SSL:: is_autossl_check_in_progress
SSL:: is_mail_sni_supported
SSL:: is_sni_supported
SSL:: list_certs
SSL:: list_csrs
SSL:: list_keys
SSL:: list_ssl_items
SSL:: mail_sni_status
SSL:: rebuild_mail_sni_config
SSL:: rebuildssldb
SSL:: remove_autossl_excluded_domains
SSL:: set_autossl_excluded_domains
SSL:: set_cert_friendly_name
SSL:: set_csr_friendly_name
SSL:: set_key_friendly_name
SSL:: set_primary_ssl
SSL:: set_ssl_share
SSL:: show_cert
SSL:: show_csr
SSL:: show_key
SSL:: start_autossl_check
SSL:: upload_cert
SSL:: upload_key
StatsBar:: get_stats
SubDomain:: addsubdomain
TwoFactorAuth:: generate_user_configuration
TwoFactorAuth:: get_user_configuration
TwoFactorAuth:: remove_user_configuration
TwoFactorAuth:: set_user_configuration
UserManager:: check_account_conflicts
UserManager:: create_user
UserManager:: delete_user
UserManager:: dismiss_user
UserManager:: edit_user
UserManager:: list_users
UserManager:: lookup_service_account
UserManager:: lookup_user
UserManager:: merge_service_account
UserManager:: unlink_service_account
WebmailApps:: listwebmailapps
WebVhost:: list_domains
WebVhost:: list_ssl_capable_domains
WordPressBackup:: any_running
WordPressBackup:: cancel
WordPressBackup:: cleanup
WordPressBackup:: get_available_backups
WordPressBackup:: is_running
WordPressBackup:: start
WordPressInstanceManager:: cancel_scan
WordPressInstanceManager:: cleanup_scan
WordPressInstanceManager:: change_admin_password
WordPressInstanceManager:: configure_autoupdate
WordPressInstanceManager:: get_api_version
WordPressInstanceManager:: get_instance_by_id
WordPressInstanceManager:: get_instances
WordPressInstanceManager:: get_latest_wordpress_version_from_wordpress_org
WordPressInstanceManager:: get_scan_results
WordPressInstanceManager:: is_installable_addon_available
WordPressInstanceManager:: start_scan
Description
This function checks whether the account's domains can pass Domain Control Validation (DCV) via an HTTP request.
Examples
https://hostname.example.com:2083/cpsess##########/execute/DCV/check_domains_via_http?domain=example.com&domain-1=example2.com&domain-2=example3.com&dcv_file_allowed_characters=[0,1,2,3,4,5,6,7,8,9,"A","B","C","D","E","F"]&dcv_file_random_character_count=32&dcv_file_extension=txt&dcv_file_relative_path=.well-known%2Fpki-validation&dcv_user_agent_string=SECTIGO+DCV
Note:
This example calls the UAPI function via a cPanel session. For more information, read our Guide to UAPI documentation.
$cpanel = new CPANEL(); // Connect to cPanel - only do this once. // Check whether the example.com, example2.com, and example3.com domains can pass Domain Control Validation (DCV) via an HTTP request. $poll = $cpanel->uapi( 'DCV', 'check_domains_via_http', array( 'domain' => 'example.com', 'domain-1' => 'example2.com', 'domain-2' => 'example3.com', 'dcv_file_allowed_characters' => '[0,1,2,3,4,5,6,7,8,9,"A","B","C","D","E","F"]', 'dcv_file_random_character_count' => '32', 'dcv_file_extension' => 'txt', 'dcv_file_relative_path' => '.well-known%2Fpki-validation', 'dcv_user_agent_string' => 'SECTIGO+DCV' ) );
my $cpliveapi = Cpanel::LiveAPI->new(); # Connect to cPanel - only do this once. # Check whether the example.com, example2.com, and example3.com domains can pass Domain Control Validation (DCV) via an HTTP request. my $poll = $cpliveapi->uapi( 'DCV', 'check_domains_via_http', { 'domain' => 'example.com', 'domain-1' => 'example2.com', 'domain-2' => 'example3.com', 'dcv_file_allowed_characters' => '[0,1,2,3,4,5,6,7,8,9,"A","B","C","D","E","F"]', 'dcv_file_random_character_count' => '32', 'dcv_file_extension' => 'txt', 'dcv_file_relative_path' => '.well-known%2Fpki-validation', 'dcv_user_agent_string' => 'SECTIGO+DCV' } );
<!-- Check whether the example.com, example2.com, and example3.com domains can pass Domain Control Validation (DCV) via an HTTP request. --> [% execute('DCV', 'check_domains_via_http', { 'domain' => 'example.com','domain-1'=>'example2.com','domain-2'=>'example3.com', 'dcv_file_allowed_characters' => '[0,1,2,3,4,5,6,7,8,9,"A","B","C","D","E","F"]', 'dcv_file_random_character_count' => '32', 'dcv_file_extension' => 'txt', 'dcv_file_relative_path' => '.well-known%2Fpki-validation', 'dcv_user_agent_string' => 'SECTIGO+DCV' } ) %] [% FOREACH q = data.resultname %] <p> [% q %] </p> [% END %]
uapi --user=username DCV check_domains_via_http domain=example.com domain-1=example2.com domain-2=example3.com dcv_file_allowed_characters="[0,1,2,3,4,5,6,7,8,9,\"A\",\"B\",\"C\",\"D\",\"E\",\"F\"]" dcv_file_random_character_count=32 dcv_file_extension="txt" dcv_file_relative_path=.well-known/pki-validation dcv_user_agent_string=SECTIGO+DCV
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
{ "data":[ { "redirects":[ { "content":"<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n<html><head>\n <title>301 Moved Permanently</title>\n</head><body>\n<h1>Moved Permanently</h1>\n <p>The document has moved <a href=\"http://www.example.com/.well-known/pki- validation/853FE9D9F40EEEED96D423632186BD89.txt\">here</a>.</p>\n</body></html>\n", "headers":{ "content-length":"295", "content-type":"text/html; charset=iso-8859-1", "date":"Mon, 07 Aug 2017 13:14:58 GMT", "location":"http://www.example.com/.well-known/pki- validation/853FE9D9F40EEEED96D423632186BD89.txt", "server":"Apache" }, "protocol":"HTTP/1.1", "reason":"Moved Permanently", "redirects":null, "status":"301", "success":"", "url":"http://example.com/.well-known/pki-validation/ 853FE9D9F40EEEED96D423632186BD89.txt" } ], "failure_reason":"The system queried for a temporary file at "http://www.example.com/ .well-known/pki-validation/853FE9D9F40EEEED96D423632186BD89.txt", which was redirected from "http://example.com/.well-known/pki-validation/853FE9D9F40EEEED96D423632186BD89.txt". The web server responded with the following error: 404 (Not Found). A DNS (Domain Name System) or web server misconfiguration may exist. The domain "example.com" resolved to an IP address "69.94.109.156" that does not exist on this server.", "redirects_count":1 }, { "redirects":[ ], "failure_reason":"The content "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3.org/TR/html4/strict.dtd\"><html><head><meta http-equiv=\"Content-" of the DCV (Domain Control Validation) file, as accessed at "http://example2.com/.well-known/pki- validation/3D766176B827BA418F074E5CF2454F34.txt", did not match the expected value. The domain "example2.com" resolved to an IP address "69.172.201.153" that does not exist on this server.", "redirects_count":0 }, { "redirects":[ { "content":"<head><title>Object moved</title></head> <body><h1>Object Moved</h1>This object may be found <a HREF=\"https://www.kharkovforum.com/.well-known/pki-validation/ B0B40E1B4053050E9B1A2B34299BD208.txt\">here</a>.</body>\r\n", "headers":{ "connection":"close", "location":"https://www.kharkovforum.com/.well-known/pki-validation/ B0B40E1B4053050E9B1A2B34299BD208.txt", "date":"Mon, 07 Aug 2017 13:15:02 GMT", "content-type":"text/html", "transfer-encoding":"chunked", "cache-control":"private", "server":"Redirector/1.0" }, "protocol":"HTTP/1.1", "reason":"Found", "redirects":null, "status":"302", "success":"", "url":"http://example3.com/.well-known/pki-validation/ B0B40E1B4053050E9B1A2B34299BD208.txt" } ], "failure_reason":"The system failed to fetch the DCV (Domain Control Validation) file at "http://example3.com/.well-known/pki-validation/B0B40E1B4053050E9B1A2B34299BD208.txt" because of an error: The system failed to send an HTTP (Hypertext Transfer Protocol) "GET" request to "http://example3.com/.well-known/pki-validation/B0B40E1B4053050E9B1A2B34299BD208.txt" because of an error: Could not connect to 'www.kharkovforum.com:443': Connection refused\n. The domain "example3.com" resolved to an IP address "98.124.199.39" that does not exist on this server.", "redirects_count":1 } ], "status":1, "metadata":{ "transformed":1 }, "messages":null, "warnings":null, "errors":null }
Note:
Use cPanel's API Shell interface (cPanel >> Home >> Advanced >> API Shell) to directly test cPanel API calls.
Parameters
Parameter | Type | Description | Possible values | Example |
---|---|---|---|---|
| string | Required The domains to check. Note: Repeat or increment the parameter name to check more than one domain.
| A domain name. | example.com |
dcv_file_allowed_characters | array | An array of characters that the certificate provider allows in the DCV check file's filename. This parameter defaults to the following array: Click to view...
| A valid array of characters. | Click to view...
|
dcv_file_random_character_count | integer | The number of characters that the certificate provider allows in the DCV check file's filename. This parameter defaults to 100 . | A positive integer. | 32 |
dcv_file_extension | string | The DCV check file extension that the certificate provider requires. This parameter defaults to an empty string. | A valid file extension. | txt |
dcv_file_relative_path | string | The DCV check file's filepath. Note: In cPanel & WHM version 68 and earlier, this parameter defaults to an empty string. This parameter defaults to | A valid file path, relative to the domain's document root directory. | .well-known/pki-validation |
dcv_user_agent_string | string | The user agent string that the system uses for the imitated local DCV check. Important: The default value can change at any time. This parameter defaults to | A valid agent string. | SECTIGO+DCV |
Returns
Return | Type | Description | Possible values | Example |
---|---|---|---|---|
data | array of hashes | An array of hashes that contains results from each domain's DCV check. Note: The function returns the domain's results in the same order that you pass them in the | This array of hashes contains the |
|
| array of hashes | An array of hashes that contains DCV check redirect information. Note: This array of hashes only contains data if the This function returns this value in the | This array of hashes contains the content , protocol , reason , redirects , status , success , url returns and the headers hash. | |
| string | A message that explains why the function failed. This function returns this value in the | A valid string. | Click to view... <!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n<html><head>\n<title>301 Moved Permanently</title>\n </head><body>\n<h1>Moved Permanently</h1>\n <p>The document has moved <a href=\"http://www.example.com/.well-known/pki-validation/770102 17B0CCF0CCF6211602F9A1B2B2.txt\">here</a>.</p>\n</body></html>\n |
| hash | A hash that contains the The function returns this value in the | A hash of valid header fields. Note: This hash's contents vary according to the URL's headers. | |
| string | The URL's HTTP protocol. The function returns this value in the | A valid HTTP protocol. | HTTP/1.1 |
| string | The HTTP response status message. The function returns this value in the | A valid string. | Moved Permanently |
| array of hashes | An array of hashes of the redirects, if the value exists. Note: The function returns this value in the same order that the redirects occur. The function returns this value in the | An array of hashes or | null |
| integer | The HTTP response status code. The function returns this value in the | A valid status code. | 301 |
| string | Whether the server returns a The function returns this value in the |
| "" |
| string | The URL that the function searches for the DCV file. The function returns this value in the | A valid URL. | http://example.com/.well-known/pki-validation/77010217B0CCF0CCF6211602F9A1B2B2.txt |
| string | The reason that the DCV check failed. The function returns this value in the |
| Click to view …
|
| integer | The number of HTTP redirects that the DCV check follows. The function returns this value in the | A valid integer. | 0 |
Function information
Module:
DCV
API Version:
Available in:
cPanel 60+
Methods:
GET, POST
Required Parameters:
domain
Return Formats:
Legacy Equivalents:
(none)
About this module
TheDCV
module checks Domain Control Validation (DCV).About UAPI
UAPI accesses and modifies data for cPanel accounts.
Notes:
- These functions may require specific features. To enable or disable features, use WHM's Feature Manager interface.
- Unless you call this API via the WHM API, you must use the appropriate cPanel ports (
2082
or2083
). You can also call some functions via cPanel's Webmail ports (2095
or2096
).
Find a function
Related functions
-
Page:UAPI Modules - DCV — The
DCV
module checks Domain Control Validation (DCV). -
Page:UAPI Functions - DCV::check_domains_via_http — This function checks whether the account's domains can pass Domain Control Validation (DCV) via an HTTP request.
-
Page:UAPI Functions - DCV::ensure_domains_can_pass_dcv — This function indicates whether the account's domains can pass a Domain Control Validation (DCV) check.
-
Page:UAPI Modules - DNS — The
DNS
module checks DNS resolution issues. -
Page:UAPI Functions - DNS::ensure_domains_reside_only_locally — This function indicates whether the account's domains resolve exclusively to this server.