add_account()

Create an account.

Signature

add_account(array $parameters): mixed

Parameters

Pass these parameters as KasRequestParams. Every request also requires kas_login, kas_auth_type, and kas_auth_data, as shown in SOAP with PHP.

Name Description Requirement
account_kas_password KAS password of the new account Required
account_ftp_password FTP password of the new account Required
account_comment The account comment Optional Default: hostname_part1.hostname_part2
account_contact_mail The contact email address Optional
hostname_art Type of the account: domain, subdomain, or empty for an account without a host
  • domain: create a domain account
  • subdomain: create a subdomain account
  • empty: create an account without a host
Required
hostname_part1
  • if hostname_art=domain: the domain label (e.g. "example")
  • if hostname_art=subdomain: the subdomain label (e.g. "forum")
Required
hostname_part2
  • if hostname_art=domain: the TLD label (e.g. "com" or "de")
  • if hostname_art=subdomain: the domain of the subdomain (e.g. "example.com")
Required
hostname_path Path of the host name Optional Default: /hostname_part1.hostname_part2/
max_account Maximum number of subaccounts the account may create Optional Default: 0
max_domain Maximum number of domains Optional Default: 0
max_subdomain Maximum number of subdomains Optional Default: 0
max_webspace Maximum storage space in MB Optional Default: 0
max_mail_account Maximum number of mailboxes Optional Default: 0
max_mail_forward Maximum number of forwards Optional Default: 0
max_mailinglist Maximum number of mailing lists Optional Default: 0
max_database Maximum number of MySQL databases Optional Default: 0
max_ftpuser Maximum number of additional FTP users Optional Default: 0
max_sambauser Maximum number of network drives Optional Default: 0
max_cronjobs Maximum number of cron jobs Optional Default: 0
max_wbk Maximum number of website builders Optional Default: 0
inst_htaccess May use directory protection Optional Default: Y
kas_access_forbidden Block access to the KAS Optional Default: N
inst_software May use the software installation Optional Default: Y
logging Access log setting: voll (full), kurz (short), ohneip (without IP addresses), or keine (none) Optional Default: keine
logage Logs are deleted after this number of days: 1-999 Optional Default: 190
statistic Language of the generated statistics (=/usage), 0 disables them: 0|de|en Optional Default: 0
dns_settings May use the DNS settings Optional Default: N
show_password Show the notice about displaying passwords Optional Default: N

PHP example

<?php

// $sessionToken is returned by KasAuth, see SOAP with PHP.
$parameters = [
    'account_kas_password' => 'new_kas_password',
    'account_ftp_password' => 'new_ftp_password',
    'hostname_art' => 'domain',
    'hostname_part1' => 'example',
    'hostname_part2' => 'com',
    'max_account' => '0',
    'max_domain' => '0',
    'max_subdomain' => '3',
    'max_webspace' => '357',
    'max_mail_account' => '2',
    'max_mail_forward' => '0',
    'max_mailinglist' => '2',
    'max_database' => '4',
    'max_ftpuser' => '0',
    'inst_htaccess' => 'N',
    'inst_fpse' => 'Y',
    'inst_software' => 'N',
    'kas_access_forbidden' => 'N',
    'logging' => 'keine',
    'account_comment' => 'comment',
    'max_cronjobs' => '2',
];

try {
    $client = new SoapClient('https://kasapi.kasserver.com/soap/wsdl/KasApi.wsdl');
    $response = $client->KasApi(json_encode([
        'kas_login' => 'w0123456',
        'kas_auth_type' => 'session',
        'kas_auth_data' => $sessionToken,
        'kas_action' => 'add_account',
        'KasRequestParams' => $parameters,
    ]));
    print_r($response);
} catch (SoapFault $fault) {
    echo 'Error: ' . $fault->faultstring;
}

Responses and error codes

  • TRUE the action was carried out
  • missing_parameter a required parameter is missing
  • account_comment_syntax_incorrect
  • account_contact_mail_syntax_incorrect
  • account_ftp_password_syntax_incorrect
  • account_kas_password_syntax_incorrect
  • couldnt_get_kas_ressources
  • dns_settings_not_allowed
  • dns_settings_syntax_incorrect
  • domain_syntax_incorrect
  • domain_tld_not_allowed
  • hostname_art_syntax_incorrect
  • hostname_exist_as_domain
  • hostname_exist_as_subdomain
  • hostname_forbidden
  • hostname_for_this_subdomain_doesnt_exist
  • hostname_has_active_mail_addresses
  • hostname_syntax_incorrect
  • path_syntax_incorrect
  • inst_fpse_syntax_incorrect
  • inst_htaccess_syntax_incorrect
  • inst_software_syntax_incorrect
  • kas_access_forbidden_syntax_incorrect
  • kas_login_syntax_incorrect
  • logging_syntax_incorrect
  • max_account_reached
  • max_account_syntax_incorrect
  • max_cron_reached
  • max_cron_syntax_incorrect
  • max_database_reached
  • max_database_syntax_incorrect
  • max_domain_reached
  • max_domain_syntax_incorrect
  • max_ftpuser_reached
  • max_ftpuser_syntax_incorrect
  • max_mail_account_reached
  • max_mail_account_syntax_incorrect
  • max_mail_forward_reached
  • max_mail_forward_syntax_incorrect
  • max_mailinglist_reached
  • max_mailinglist_syntax_incorrect
  • max_sambauser_reached
  • max_sambauser_syntax_incorrect
  • max_subdomain_reached
  • max_subdomain_syntax_incorrect
  • max_webspace_reached
  • max_webspace_syntax_incorrect
  • subdomain_syntax_incorrect
  • wildcardsubdomain_not_in_contract