API Documentation/en

Aus EUserv Wiki

(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(CALL PARAMETERS)
Zeile 425: Zeile 425:
|-
|-
|srv_perform_reset||bool||Perform automatic server reset, to start rescue system? (“true” or “false”)<br>If you choose “false” here, you have to perform a manual reboot via SSH to start the rescue system.
|srv_perform_reset||bool||Perform automatic server reset, to start rescue system? (“true” or “false”)<br>If you choose “false” here, you have to perform a manual reboot via SSH to start the rescue system.
 +
|-
 +
|rescue_mode||int||{optional} the desired rescue mode (1 = default - enable rescue, 2 = enable vKVM, 3 = enable Linux rescue 64 bit, 4 = enable rescue 32 bit (only old systems), 5 = enable FreeBSD rescue 64 bit, 6 = enable FreeBSD rescue 32 bit (only old systems), 7 = enable Windows rescue)
|}
|}

Version vom 08:07, 29. Okt. 2012


Inhaltsverzeichnis


EUserv Reseller API


Introduction

Technology

Our API is based on the XML-RPC protocol, which is a Remote Procedure Calling protocol that works over the Internet.

XML-RPC messages are HTTP-POST requests in XML (Extensible Markup Language).

A “method call” will be executed on the server and will produce a response, which is also formatted in XML and which can be decoded into several variables.
Method call parameters and returned variables can be strings, integers (numbers) and also complex types like arrays and hashes. Required parameters and return values are method-specific. Some parameters or return values are marked as “optional”; all other values/parameters are required.

API Servers

Please note that both servers currently use self-signed SSL certificates! It is possible, that you have to disable “peer verifying” to connect!

The live environment is available over HTTPS (HTTP over SSL, Port 443) at:
https://api.euserv.net:443
For developing/testing purposes, please use the sandbox environment, which is also available over HTTPS(Port 443) at:
https://api.test.euserv.net:443

The sandbox environment is a virtual environment for testing and developing. All data/values/servers/orders will be copied into the sandbox environment every night, excepting the API user accounts. That means you have to create separate API user accounts within the sandbox environment. Assigned tasks, e.g. server resets or reinstallations, will automatically marked as done every 5 minutes.

PHP Examples

We have added PHP examples to show you, how you can use our API with PHP. In our examples, we use 'XML-RPC for PHP' as the core libary. You can find this libary here:
http://phpxmlrpc.sourceforge.net/.

History of Changes

Version Changes
0.5.1 - Add method 'server.ipaddr_get_reverse'
- Add method 'server.get_possible_server_items'
- Add method 'server.order_server'
0.5.2 - Update method 'server.get_possible_server_items'
- Update method 'server.order_server'
0.5.3 - Add method 'domain.get_domain_orders'
- Add method'domain.get_domain_order_details'
- Add method 'domain.dns_create_record'
- Add method 'domain.dns_delete_record'
- Add method 'domain.dns_update_record'
- Add method 'domain.dns_get_active_records'
- Add method 'domain.redirect_create_record'
- Add method 'domain.redirect_delete_record'
- Add method 'domain.redirect_update_record'
- Add method 'domain.redirect_get_active_records'
- Add internal methods
0.5.4 - Add method 'server.get_traffic_graph'
- Update internal methods


Method Specifications


Introduction

The following part contains information about method calls, method parameters and method return values.
Generally, if a method call was completed successfully, the return message will include the following status code:

Field Type Value
status int 100

If a method call was failed, a XML-Fault message with “Fault-Code” and “Fault-String” will be returned.(See also chapter “XML Fault-Codes”)

API Debug/Testing Methods

debug.get_api_version


PURPOSE

This Method returns the current API version.

CALL PARAMETERS

N/A

RETURNS

Field / Key Name Type Description
api_version string Current API version

PHP EXAMPLE

API Documentation RunningExamples debug.get_api_version PHP

debug.pingpong


PURPOSE

This Method returns all the parameters, it was called with. You can use it to check the format of your call parameters. Notice that only supported parameter keys with correctly formatted values will be accepted!

CALL PARAMETERS

Every supported parameter key; see parameters of other methods.

RETURNS

Every committed parameter with its committed value.

PHP EXAMPLE

API Documentation RunningExamples debug.pingpong PHP

API User-Management Methods

usermngt.create_acc


PURPOSE

This Method is used to create new API user accounts

CALL PARAMETERS

Field / Key Name Type Description
acc_sub_id string Name of the new account; will be attached to management account's name separated by a point. (e.g. 'subacc' will become api123.subacc) Required are 3-8 chars [a-z] or [0-9]
acc_passwd_base64 string base64 Password for the new account (has to be base64-encoded) acc_ipv4_bindings string At least one allowed IPv4 address for using the new account. You can specify multiple values; each separated by a semicolon. Network-addresses and IPranges will not work.
acc_allowed_groups (optional)stringMethod group memberships for this account. Management account needs permissions for every mentioned group. You can specify multiple

RETURNS

Field / Key Name Type Description
acc_name string The complete name of the new account (e.g. 'api1234.subacc')
acc_added_ip_bindings int Number (amount) of added IP bindings
acc_added_groups int Number (amount) of added group memberships

usermngt.modify_acc


PURPOSE

This Method is used to modify settings and/or permissions of API user accounts.

CALL PARAMETERS

Field / Key Name Type Description
acc_id string Complete name of the account which will be modified (e.g. 'acc_id' => 'api1234.subacc')
acc_passwd_base64 (optional)string base64New account password in base64-encoded format. Using this parameter will overwrite the old password.
acc_ipv4_bindings (optional) string At least one allowed IPv4 address for using the new account. You can specify multiple values; each separated by a semicolon. Networkaddresses and IP-ranges will not work. You can specify multiple values, each separated by a semicolon. Using this parameter will overwrite old bindings.
acc_allowed_groups (optional)stringThis parameter will set method group memberships for the account and overwrite existing ones. Management account needs permissions for every mentioned group. You can specify multiple values, each separated by a semicolon. (e.g. 'acc_allowed_groups' => 'domain;server;vserver')
acc_status (optional)string enumParameter to deactivate or to (re-)activate theParameter to deactivate or to (re-)activate the account Value must be “active” or “inactive”

RETURNS

Field / Key Name Type Description
acc_password_changedboolShows if password has changed or not
acc_ip_bindings_changedboolShows if IP bindings have changed or not
acc_groups_changedboolShows if group memberships have changed or not
acc_status_changedboolShows if account's status has changed or not (has set active or inactive)

usermngt.list_acc


PURPOSE

This Method is used to get all API user accounts and their settings/details

CALL PARAMETERS

N/A

RETURNS

Field / Key Name Type Description
acc_list_countintNumber (amount) of available API user accounts
acc_list_dataarray asoc Contains all the account data in a multidimensional, associative array.

Array’s keys equals API user’s login names, e.g. $array ['api1234.subacc']

Values are contained in the second dimension, e.g. $array ['api1234.subacc'] ['status']

acc_list_data – Keys of second dimension

Field / Key Name Type Description
statusstringAccount’s status, can be “active” or “inactive”
createdstring“Datetime” of account creation
lastchangestring“Datetime” of account’s last change groups array Contains all active method group names (e.g. 0 => “server”, 1 => “vserver”)
ip_bindingsarrayContains all active IP bindings (IP restrictions)

Server-related Methods

server.list_servers


PURPOSE

This Method is used to get all manageable servers and basic details for further method calls. Only these servers which are manageable by the used API user will be returned.

CALL PARAMETERS

N/A

RETURNS

Field / Key Name Type Description
server_list_countintNumber (amount) of available servers
server_list_dataarray asocContains basic server details in a multidimensional, associative array. Keys of the first dimension equals the server order numbers: e.g. $array ['123456'] Values are contained in the second dimension: e.g. $array ['12345'] ['srv_main_ip'] returns the main

server_list_data – Keys of second dimension

Field / Key Name Type Description
order_descstringDescription/Product name
srv_idintServer’s unique ID (required for further method calls)
srv_main_ipstringPrimary IP address
srv_namestringServer name (for network settings)
statusstring enumServer or order status:
- “ready” means server can be used
- “in_rescue” means server can be used but it’s currently in rescue mode
- “in_process” means server is not available at present
- “locked” means server/order is locked by the provider

PHP EXAMPLE

API Documentation RunningExamples server.list_servers PHP

server.get_details


PURPOSE

This Method is used to get all details of a manageable server. Only these servers are available, which are manageable by the used API.

CALL PARAMETERS

Field / Key Name Type Description
srv_idintServer's unique ID

RETURNS

Field / Key Name Type Description
server_detailsarray (asoc)Contains all server details in an associative array

server_details – Keys of second dimension

Key Name Type Description
order_nointServer contract’s order number
order_descstringDescription/Product name
srv_idintServer’s unique ID (required for further method calls)
srv_main_ipstringPrimary IP address
srv_namestringServer name (for network settings)
srv_netmaskstringNetmask for network / IP address setup
srv_broadcaststringBroadcast address for network / IP address setup
srv_gatewaystringGateway address for network / IP address setup
srv_statusstring enum Server or order status:
- “ready” means server can be used
- “in_rescue” means server is currently in rescue mode
- “in_process” means server is not available at present
- “locked” means server/order is locked by the provider
srv_default_pwstringDefault password for initial login or rescue usage
srv_macstringMAC-Address of server’s first network device
srv_mac2 (optional)stringMAC-Address of server’s optional second network device
srv_cpustringProcessor (Product) name / Description
srv_cpu_coresintNumber of (available) CPU cores
srv_cpu_mhzintCPU clock rate in MHz srv_64bit_support bool CPU support for 64bit (true or false)
srv_ram_typestringType of used memory (e.g. DDR2-RAM)
srv_ram_sizeintSize of memory in MB
srv_hdd_typestringHarddisk bus type (e.g. SATA)
srv_hdd_sizeintSize of each hdd (e.g. 250)
srv_hdd_countintNumber of installed harddisks
srv_has_hwraidboolHardware-RAID support (true or false)
srv_hwraid_levelstringUsed Hardware-RAID level (“none” or level, e.g. “1”)
srv_os_idintID of currently used OS image (for reinstall)
srv_os_namestringName/description of currently used OS image
srv_os_is_64bitboolOS image 64bit support (true or false)

PHP EXAMPLE

API Documentation RunningExamples server.get_details PHP

server.get_possible_os_images


PURPOSE

This Method is used to get all possible OS images for a specific server ID. Only compatible and usable OS images will be returned here.

CALL PARAMETERS

Field / Key Name Type Description
srv_id int Server's unique ID

RETURNS

Field / Key Name Type Description
os_images_asoc_arrayarray asocContains details of every possible/available OS image in a multidimensional, associative array. Keys of the first dimension equals the OS image number, called “os_id”: e.g. $array ['240'] Values are contained in the second dimension: e.g. $array ['240'] ['os_name'] returns the name/description of OS image with ID 240.

os_images_asoc_array – Keys of second dimension

Key Name Type Description
os_idintID of OS image (for reinstall)
os-statusstring enum testing | unstable
os_namestringName/description of OS image
os_is_64bitboolOS image 64bit support (true or false)
os_raidlevelintProvided software RAID level or “-1” if none

PHP EXAMPLE

API Documentation RunningExamples server.get_possible_os_images PHP

server.reset


PURPOSE

This Method is used to perform a hard server reset.

CALL PARAMETERS

Field / Key Name Type Description
srv_idintServer’s unique ID

RETURNS

Only “status” = “100” if request was accepted

PHP EXAMPLE

API Documentation RunningExamples server.reset PHP

server.autoreinstall


PURPOSE

This Method is used to perform an automatic server reinstall with a specified OS image ID. Only compatible images will be accepted – you can obtain a list of all compatible OS images by using the “server.get_possible_os_images” API method.

CALL PARAMETERS

Field / Key Name Type Description
srv_idintServer’s unique ID
srv_os_idintID of target OS image
srv_perform_resetboolPerform automatic server reset, to start installation? (“true” or “false”) If you choose “false” here, you have to perform

RETURNS

Only “status” = “100” if request was accepted

PHP EXAMPLE

API Documentation RunningExamples server.autoreinstall PHP

server.rescue_activate


PURPOSE

This Method is used to activate a rescue system for a specified server, which will be started during next boot.

CALL PARAMETERS

Field / Key Name Type Description
srv_idintServer's unique ID
srv_perform_resetboolPerform automatic server reset, to start rescue system? (“true” or “false”)
If you choose “false” here, you have to perform a manual reboot via SSH to start the rescue system.
rescue_modeint{optional} the desired rescue mode (1 = default - enable rescue, 2 = enable vKVM, 3 = enable Linux rescue 64 bit, 4 = enable rescue 32 bit (only old systems), 5 = enable FreeBSD rescue 64 bit, 6 = enable FreeBSD rescue 32 bit (only old systems), 7 = enable Windows rescue)

RETURNS

Only “status” = “100” if request was accepted

PHP EXAMPLE

API Documentation RunningExamples server.rescue_activate PHP

server.ipaddr_get_reverse


PURPOSE

This Method is used to get the current reverse DNS entry (PTR record) for a specified server IP address.

CALL PARAMETERS

Field / Key Name Type Description
srv_idintServer's unique ID
ip_addressstringIP address to get reverse entry for

RETURNS

Field / Key Name Type Description
ip_addressstringIP address for delivered record
ptr_reverse_recordstringReverse entry (PTR record)

PHP EXAMPLE

API Documentation RunningExamples server.ipaddr_get_reverse PHP

server.ipaddr_set_reverse


PURPOSE

This Method is used to set a reverse DNS entry for a specified server IP address.

CALL PARAMETERS

Field / Key Name Type Description
srv_idintServer's unique ID
ip_addressstringIP address to modify reverse entry
reverse_entrystringReverse entry for specified IP as hostname/

RETURNS

Only “status” = “100” if request was accepted

PHP EXAMPLE

API Documentation RunningExamples server.ipaddr_set_reverse PHP

server.ipv6addr_set_main


PURPOSE - (server.ipv6addr_set_main)

Creates a IPv6 address for the server.

CALL PARAMETERS - (server.ipv6addr_set_main)

Field / Key Name Type Description
srv_idintServer's unique ID/

RETURNS - (server.ipv6addr_set_main)

Field / Key Name Type Description
srv_main_ipv6stringNew IPv6 address

METHOD ERRORS - (server.ipv6addr_set_main)

Code Short Message Description
1001ipv6 address already exist The main IPv6 address is already set.
1002can not find ipv6prefix The IPv6 prefix can not be found.
1003can not find ipv4 adress The server is not ready yet.
1004can not generade ipv6 addressInternal error. Please contact the support!

PHP EXAMPLE - (server.ipv6addr_set_main)

API Documentation RunningExamples server.ipv6addr_set_main PHP

server.ipv6addr_get_reverse


PURPOSE - (server.ipv6addr_get_reverse)

This Method is used to get the current reverse DNS entry (PTR record) for a specified server IPv6 address.

CALL PARAMETERS - (server.ipv6addr_get_reverse)

Field / Key Name Type Description
srv_idintServer's unique ID
ipv6_addressstringIPv6 address to get reverse entry for

RETURNS - (server.ipv6addr_get_reverse)

Field / Key Name Type Description
ipv6_addressstringIPv6 address for delivered record
reverse_entrystringReverse entry (PTR record)

METHOD ERRORS - (server.ipv6addr_get_reverse)

Code Short Message Description
1001ipv6address not linked to srv_id The given IPv6 address is not linked to the Server.
1002no reverse-entry linkedThere is no reverse_entry linked to the IPv6 address.

PHP EXAMPLE - (server.ipv6addr_get_reverse)

API Documentation RunningExamples server.ipv6addr_get_reverse PHP

server.ipv6addr_set_reverse


PURPOSE - (server.ipv6addr_set_reverse)

This Method is used to set a reverse DNS entry for a specified server IPv6 address.

CALL PARAMETERS - (server.ipv6addr_set_reverse)

Field / Key Name Type Description
srv_idintServer's unique ID
ipv6_addressstringIPv6 address to modify reverse entry
reverse_entrystringReverse entry for specified IP as hostname/

RETURNS - (server.ipv6addr_set_reverse)

Field / Key Name Type Description
ipv6_addressstringIPv6 address for delivered record
reverse_entrystringReverse entry (PTR record)

METHOD ERRORS - (server.ipv6addr_set_reverse)

Code Short Message Description
1001ipv6address not linked to srv_id The given IPv6 address is not linked to the Server.
1002internal error Internal error. Please contact the support!
1003internal errorInternal error. Please contact the support!
1004internal errorInternal error. Please contact the support!
1005no reverse_entry linkedThere is no reverse_entry linked to ipv6 address function.

PHP EXAMPLE - (server.ipv6addr_set_reverse)

API Documentation RunningExamples server.ipv6addr_set_reverse PHP

server.get_possible_server_items


PURPOSE

This Method is used to display all possible server-items you can order. Please note that this function only available for Reseller.

CALL PARAMETERS

N/A

RETURNS

Field / Key Name Type Description
possible_server_itemsarray (asoc)Contains all possible serveritems in a associative array

possible_server_items - Keys of second dimension

Key Name Type Description
item_idintServer-item unique ID
item_namestringThe name of the server-item
item_net_amountstringThe net amount of the serveritem (per billing period)
item_gross_amountstringThe gross amount of the serveritem (per billing period)
item_net_setup_feestringThe net setup fee (unique) of the server-item
item_gross_setup_feestringThe gross setup fee (unique) of the server-item
item_billing_periodintThe period you have to pay for your server (in months)
item_contract_running_timeintThe running time of the contract

METHOD ERRORS

Code Short Message Description
1001can not load customer_idError while loading the customer_id from api-user. Please contact the support!
1002can not load as_idError while loading the as_id from api-user. Please contact the support!
1003internal errorInternal error. Please contact the support!
1004no possible items foundThere are no possible serveritems you can order.
1005this function is only available for resellerYou are not a reseller, you can not use this function.

PHP EXAMPLE

API Documentation RunningExamples server.get_possible_server_items PHP

server.order_server


PURPOSE

This method is used to order some server. Please note that this function only available for Reseller.

CALL PARAMETERS

Field / Key Name Type Description
<item_id>intUse the item_id of the serveritem you want to order as a key and the quantity of the server as the value eg. '11716' => '1' (order one server with the item_id '11716')
accept_terms_and_conditionsboolSet this flag to accept the terms and conditions(0 = NO, 1= YES). If you don't accept the terms and conditions, you can't order server. The terms and conditions can be found here:
http://euserv.de/unternehmen/agb.php
accept_special_terms_and_conditions_rootserverboolSet this flag to accept the spezial terms and conditions rootserver(0 = NO, 1= YES). If you don't accept the spezial terms and conditions rootserver, you can't order server. The spezial terms and conditions rootserver can be found here:
http://euserv.de/produkte/server/tosfdrs.php

RETURNS

Field / Key Name Type Description
total_amountstringThe total amount for the server you have ordered

METHOD ERRORS

Code Short Message Description
1001can not load customer_idError while loading the customer_id from api-user. Please contact the support!
1002can not load a_idError while laoding the as_id from api-user. Please contact the support!
1003terms and conditions must be acceptedTo order server you must accept the terms and conditions.
1004special terms and conditions rootserver must be acceptedTo order server you must accept the spezial terms and conditions rootserver.
1005internal errorInternal error. Please contact the support!
1006no items foundNo items found. Please check your request.
1007internal errorInternal error. Please contact the support!
1008invalid item_id foundOne of your item-ids is invalid. Please check your request.
1009internal errorInternal error. Please contact the support!
1010this function is only available for resellerYou are not a reseller, you can not use this function.

PHP EXAMPLE

API Documentation RunningExamples server.order_server PHP

server.get_traffic_graph


PURPOSE

This method is used to get a traffic-graph for your server.

CALL PARAMETERS

Field / Key Name Type Description
srv_idintThe id of the server for which you want to get a traffic-graph.
graph_mode(optional)intThe mode of the graph you want to get (0 = LAST DAY, 1 = LAST WEEK,2 = LAST MONTH,3 = LAST YEAR).
graph_language(optional)stringThe language of the graph you want to get (ISO Country Code, lower case). Possible types are 'en', 'de'. Default is 'en'.

RETURNS

Field / Key Name Type Description
traffic_graphstringThe base64 encoded data of the graph you want to get.

METHOD ERRORS

Code Short Message Description
1001srv_id not givenThe srv_id was not given.
1002srv_graph_mode not validThe given srv_graph_mode is not valid.
1003can not load portdataCannot load portdata, please contact the support!
1004can not load portdataCannot load portdata, please contact the support!
1005can not load portdataCannot load portdata, please contact the support!

PHP EXAMPLE

API Documentation RunningExamples server.get_traffic_graph PHP

Domain-related Methods

domain.get_domain_orders


PURPOSE

This method is used to give you an overview of your domain orders an their features.

CALL PARAMETERS

N/A

RETURNS

Field / Key Name Type Description
domain_ordersarray asoc Contains domain order data

Keys of the second dimension

Field / Key Name Type Description
<order_id> array asoc Contains domain order data

Key of the third dimension

Field / Key Name Type Description
domain_idintThe id of the current domain.
domain_namestringThe name of the current domain.
domain_name_idnstringThe name idn of the current domain.
feature_redirectintTells you, if the redirect feature is disabled or enabled(0/1).
feature_dnsintTells you, if the redirect feature is disabled or enabled(0/1).

METHOD ERRORS

Code Short Message Description
1001can not load customer dataError while loading the customer data. Please contact the support!
1002no domain orders foundNo domain orders can be found.

PHP EXAMPLE

API Documentation RunningExamples domain.get_domain_orders PHP

domain.get_domain_order_details


PURPOSE

This method is used to get the details of the domain order.

CALL PARAMETERS

Field / Key Name Type Description
order_idintThe order id of that order you want to see the details.

RETURNS

Field / Key Name Type Description
domain_order_detailsarray asocContains domain order details.

domain_order_details - Keys of the second dimension

Field / Key Name Type Description
order_idarray asocContains domain order details.

<order_id> - Keys of the third dimension

Field / Key Name Type Description
order_statusintThe current order status(1 = ready, 3 = in process, 11 = transfer in process, 12 = waiting)
domain_idintThe domain id of the current domain.
domain_namestringThe domain name of the current domain.
domain_name_idnstringThe domain name of the current domain.
dns_record_typearray asocAn array asoc of available dns record types and there data .(A, AAAA, MX, AFSDB, CERT, CNAME, DNSKEY, DS, HINFO, KEY, LOC, NAPTR, NSEC, RP, RRSIG, SPF, SSHFP, SRV, TXT)
redirect_record_typearray asocAn array asoc of available redirect record types(frameredirect, headerredirect)
redirect_record_maxintThe maximum of redirect records you can create.
redirect_record_usedintThe count of used redirect records.
redirect_record_freeintThe count of free redirect records.

dns_record_type - Keys of the fourth dimension

Field / Key Name Type Description
<dns_record_type>array asocAn array asoc of the current dns record type data.

<dns_record_type> - Keys of the fifth dimension

Field / Key Name Type Description
dns_record_maxintThe maximum of dns records you can create.
dns_record_usedintThe count of dns records you have already used.
dns_record_freeintThe count of free dns records.

redirect_record_type – Keys of the fourth dimension

Field / Key Name Type Description
<redirect_record_type>intA flag that tells you if the redirect_record_type is available.

METHOD ERRORS

Code Short Message Description
1001order_id is invalidThe given order id is invalid
1002order_id is not managed by api userThe given order id is not managed by you
1003domain order not foundThe given domain order was not found.
1004internal errorInternal error, please contact the support!

PHP EXAMPLE

API Documentation RunningExample domain.get_domain_order_details PHP

domain.dns_create_record


PURPOSE

This method is used to create an dns record for your domain.

CALL PARAMETERS

Field / Key Name Type Description
domain_idintThe domain id of the domain you want to create a dns record.
dns_record_subdomain (optional)stringThe subdomain of the dns record you want to create.
dns_record_typestringThe type of the dns record you want to create. Possible Types are A, AAAA, MX, AFSDB, CERT, CNAME, DNSKEY, DS, HINFO, KEY, LOC, NAPTR, NSEC, RP, RRSIG, SPF, SSHFP, SRV, TXT
dns_record_valuestringThe value of the dns record you want to create ( e.g euserv.de).
dns_record_prio (optional)intThe record prio of the dns record you want to create(only essential for mx records).
dns_record_ttlintThe ttl of the dns record you want to create. At least 43200.

RETURNS

Field / Key Name Type Description
dns_record_idintThe id of the dns record you have created.

METHOD ERRORS

Code Short Message Description
1001domain_id not givenThe domain_id was not given.
1002dns_record_subdomain invalidThe given dns_record_subdomain is invalid.
1003dns_record_type not givenThe dns_record_type was not given.
1004dns_record_type not validThe given dns_record_type is not valid.
1005dns_record_value not givenThe dns_record_value was not given.
1006dns_record_value not validThe given dns_record_value is not valid.
1007dns_record_prio not givenYou want to create an mx record and no dns_record_prio was given.
1008dns_record_ttl not given or to lowThe dns_record_ttl was not given or lower then 43200.
1009domain not found There are no domain found for domain_id.
1010order not readyThe domain order is not ready so you can't create dns records.
1011domain not managed by customerThe domain of the given domain_id was not managed by you.
1012internal errorInternal error, please contact the support!
1013can not load domain dataCannot load domain data, please contact the support!
1014internal errorCannot load domain data, please contact the support!
1015dns_record_type not possible in this orderThe given dns_record_type is not available in your domain order.
1016dns_record limit reachedThe dns record limit has been reached.
1017internal errorInternal error, please contact the support!
1018dns_record already exitsThe dns record you want to create already exits.
1019internal errorInternal error, please contact the support!

PHP EXAMPLE

API Documentation RunningExamples domain.dns_create_record PHP

domain.dns_delete_record


PURPOSE

This method is used create a dns record of your domain.

CALL PARAMETERS

Field / Key Name Type Description
dns_record_id intThe id of the dns record you want to delete.

RETURNS

Only 'status' = '100' if request was accepted.

METHOD ERRORS

Code Short Message Description
1001customer_id not givenInternal error, please contact the support!
1002dns_record_id not givenThere are no dns_record_id given.
1003dns_record not foundNo dns record found for dns_record_id.
1004order not readyThe order of the dns_record_id is not ready.
1005dns_record not managed by customerThe dns record is not managed by you.

PHP EXAMPLE

API Documentation RunningExamples domain.dns_delete_record PHP

domain.dns_update_record


PURPOSE

This method is used to update a dns record for your domain.

CALL PARAMETERS

Field / Key Name Type Description
dns_record_idintThe id of the dns record you want to update.
dns_record_value(optional)stringThe new dns record value of the dns record you want to update
dns_record_prio(optional)intThe new prio of the dns_record you want to update (only essential for mx records).
dns_record_ttl(optional)intThe new ttl of the dns record you want to update. At least 43200.

RETURNS

Only 'status' = '100' if request was accepted.

METHOD ERRORS

Code Short Message Description
1001nothing to doThere is nothing to do! You send an empty request.
1002dns_record_id not givenThe dns_record_id was not given.
1003dns_record_id not validThe given dns_record_id is not valid.
1004internal errorInternal error, please contact the support!
1005dns_record_type not validInternal error, please contact the support!
1006dns_record_value not validThe given dns_record_value is not valid.
1007dns_record_type not accept dns_record_prioYou send dns_record_prio but the current dns_record_type does not accept dns_record_prio.
1008dns_record_ttl to lowThe given dns_record_ttl is lower 43200.
1009dns_record not foundNo dns record found for dns_record_id.
1010order not readyThe Domainorder is not in the status 'ready'.
1011dns_record not managed by customerThe dns_record of the given dns_record_id is not managed by you.
1012internal errorInternal error, please contact the support!
1013internal errorInternal error, please contact the support!
1014internal errorInternal error, please contact the support!

PHP EXAMPLE

API Documentation RunningExamples domain.dns_update_record PHP

domain.dns_get_active_records


PURPOSE

This method is used to show all activ dns records.

CALL PARAMETERS

Field / Key Name Type Description
domain_idintThe domain_id of the domain for which you want to see all the dns records.

RETURNS

Field / Key Name Type Description
dns_recordsarray asocAn array asoc of all activ dns records for your domain.

dns_records - Keys of the second dimension.

Field / Key Name Type Description
<dns_record_id>array asocAn array asoc with all data of the dns record.

<dns_record_id> - Keys of the third dimension

Field / Key Name Type Description
dns_record_namestringThe full name of the current dns record.
dns_record_typestringThe type of the current dns record.
dns_record_contentstringThe content of the current dns record.
dns_record_ttlintThe ttl of the current dns record.
dns_record_priointThe prio of the current dns record(only on mx records).

METHOD ERRORS

Code Short Message Description
1001customer_id not givenInternal error, please contact the support!
1002domain_id not givenThere is no domain_id given.
1003domain not foundNo domain found for domain_id.
1004order not readyThe order of the domain_id is not ready.
1005domain not managed by customerdomain not managed by customer
1006no dns_record foundNo dns records found for domain.

PHP EXAMPLE

API Documentation RunningExamples domain.dns_get_active_records PHP

domain.redirect_create_record


PURPOSE

This method is used to create a redirect record.

CALL PARAMETERS

Field / Key Name Type Description
domain_idintThe domain_id of the domain you want to create a redirect record for.
redirect_record_typestringThe type of redirect record you want to create. Possible types are frameredirect or headerredirect
redirect_record_subdomain (optional)stringThe subdomain of the redirect record you want to create.
redirect_record_locationstringThe location of the redirect_record. Only URL start with http:// OR https://).
redirect_record_status_code (optional)intAn webserver status code that describes the type of redirection(Only for redirect_record_type headerredirect). Available codes are 301, 302 and 307.
redirect_record_title (optional)stringThe title of your redirect record (Only for frameredirect).
redirect_record_description (optional)stringThe description of you redirect record (Only for frameredirect).
redirect_record_author (optional)stringThe description of you redirect record (Only for frameredirect).
redirect_record_keywords (optional)stringThe keywords of your redirect record (Only for frameredirect).
redirect_record_robots (optional)stringThe robot description of your redirect_record (Only for frameredirect).
redirect_record_favicon (optional)stringThe favicon url of your redirect_record (Only for frameredirect).

RETURNS

Field / Key Name Type Description
redirect_record_idintThe id of the redirect record you have created.

METHOD ERRORS

Code Short Message Description
1001domain_id not givenThe domain_id was not given.
1002redirect_record_type not givenThe redirect_record_type was not given
1003parameter redirect_record_title, redirect_record_description, redirect_record_author, redirect_record_keywords, redirect_record_robots, redirect_record_favicon not available for redirect_record_typeYou send invalid parameter for headerredirect.
1004redirect_record_location not givenThe redirect_record_location was not given.
1005redirect_record_status_code not givenThe redirect_record_status_code was not given.
1006parameter redirect_record_status_code not available for redirect_record_typeYou send invalid parameter for frameredirect.
1007redirect_record_location not validThe given redirect_record_location is not valid.
1008domain not foundNo domain found for domain_id.
1009order not readyThe domain order is not ready so you cannot create redirect records.
1010domain not managed by customerThe domain of the given domain_id was not managed by you.
1011internal errorInternal error, please contact the support!
1012internal errorInternal error, please contact the support!
1013internal errorInternal error, please contact the support!
1014redirect is not availableThe redirect feature is not available for this domain.
1015<redirect_record_type> is not available<redirect_record_type> is not available in this order.
1016redirect limit reachedThe redirect limit has reached.
1017redirect_record_wildcard is not availableYou want to set an wildcard and wildcard is not available for your order.
1018internal errorInternal error, please contact the support!
1019redirect_record already exitsThe redirect record you want to create already exits.

PHP EXAMPLE

API Documentation RunningExamples domain.redirect_create_record PHP

domain.redirect_delete_record


PURPOSE

This method is used to delete a redirect record.

CALL PARAMETERS

Field / Key Name Type Description
redirect_record_idintThe id of the redirect record you want to delete.

RETURNS

Only 'status' = '100' if request was accepted.

METHOD ERRORS

Code Short Message Description
1001customer_id not givenInternal error, please contact the support!
1002redirect_record_id not givenInternal error, please contact the support!
1003redirect_record not foundNo redirect record found for redirect_record id.
1004order not readyThe order of the redirect record id is not ready.
1005redirect_record not managed by customerThe redirect record is not managed by you.

PHP EXAMPLE

API Documentation RunningExamples domain.redirect_delete_record PHP

domain.redirect_update_record


PURPOSE

This method is used to update a redirect record.

CALL PARAMETERS

Field / Key Name Type Description
redirect_record_idintThe id of the redirect record you want to update.
redirect_record_location (optional)stringThe location of the redirect record you want to update. Only URL start with http:// OR https://).
redirect_record_status_code (optional)intAn webserver status code that describes the type of redirection (Only for redirect_record_type headerredirect). Available codes are 301, 302 and 307.
redirect_record_title (optional)stringThe title of your redirect record (Only for frameredirect).
redirect_record_description (optional)stringThe description of you redirect record (Only for frameredirect).
redirect_record_author (optional)stringThe description of you redirect record (Only for frameredirect).
redirect_record_keywords (optional)stringThe robots description of your redirect_record (Only for frameredirect).
redirect_record_favicon (optional)stringThe favicon url of your redirect_record (Only for frameredirect).

RETURNS

Only 'status' = '100' if request was accepted.

METHOD ERRORS

Code Short Message Description
1001redirect_record_id not given The redirect_record_id was not given.
1002 redirect_record not found No redirect record found for redirect_record id.
1003 order not ready The order of the redirect record id is not ready.
1004 redirect_record not managed by customer The redirect record is not managed by you.
1005 internal error Internal error, please contact the support!
1006 internal error Internal error, please contact the support!
1007 redirect_record_type not valid Internal error, please contact the support!
1008 parameter redirect_record_title, redirect_record_description, redirect_record_author, redirect_record_keywords, redirect_record_robots, redirect_record_favicon not available for redirect_record_type The current redirect record is a headerredirect and you send invalid parameter.
1009 nothing to do There is nothing to do.
1010 parameter redirect_record_status_code not available for redirect_record_typeThe current redirect record is a frameredirect and you send invalid parameter.
1011 nothing to do There is nothing to do.
1012 internal error Internal error, please contact the support!
1013 internal error Internal error,please contact the support!

PHP EXAMPLE

API Documentation RunningExamples domain.redirect_update_record PHP

domain.redirect_get_active_records


PURPOSE

This method is used to show all activ redirect records.

CALL PARAMETERS

Field / Key Name Type Description
domain_id intThe domain_id of the domain for which you want to see all the redirect records.

RETURNS

Field / Key Name Type Description
redirect_recordsarray asocAn array asoc of all activ redirect records for your domain.

redirect_records - Keys of the second dimension

Field / Key Name Type Description
<redirect_record_id>array asocAn array asoc with all data of the redirect record.

<redirect_record_id> - Keys of the third dimension

Field / Key Name Type Description
redirect_record_typestringThe type of the current redirect record.
redirect_record_status_code int The Webserver status code of the current redirect record. (only on headerredirect records)
redirect_record_name string The name of the current redirect record.
redirect_record_location string The location of the current redirect record.
redirect_record_title string The title of the current redirect record (only on frameredirect records).
redirect_record_description string The description of the current redirect record (only on frameredirect records).
redirect_record_author string The author of the current redirect record (only on frameredirect records).
redirect_record_keywords string The keywords of the current redirect record (only on frameredirect records).
redirect_record_robots string The robots description of the current redirect record (only on frameredirect records).
redirect_record_favicon string The favicon url of the current redirect record (only on frameredirect records).

METHOD ERRORS

Code Short Message Description
1001 customer_id not given Internal error, please contact the support!
1002 domain_id not given There is no domain_id given.
1003 domain not found No domain found for domain id.
1004 order not ready The order of the domain id is not ready.
1005 domain not managed by customer The domain is not managed by you.
1006 no redirect records found No redirect records found for domain.

PHP EXAMPLE

API Documentation RunningExamples domain.redirect_get_active_records PHP

XML Fault-Codes (Error Messages)


Internal Errors

Code Short Message Description
10001 Service temporary not available Service temporary not available. Try again later.
10021 Internal database error Error while connecting to internal database. Please contact the support!
10022 Internal database error Error while execute SQL-Query. Please contact the support!
10041 No such method: <method name> The requested method does not exist.
10042 Method temporary locked: <method name> The requested method is locked at present. Try again later.
10043 Internal error in method: <method name>No return from called method. Please contact the support!
10044 Internal error in method: <method name><Method returned an (internal) error.


Request Errors / Sanity Check Errors

Code Short Message Description
10002 Wrong HTTP-Header HTTP-Header error: No 'method' declared
10003 Wrong HTTP-Header HTTP-Header error: 'method' must be 'POST'
10004 Wrong HTTP-Header HTTP-Header error: No 'contenttype' declared
10005 Wrong HTTP-Header HTTP-Header error: 'contenttype' must be 'text/xml'
10006 Wrong HTTP-Header HTTP-Header error: 'contentlength' required
10007 Wrong HTTP-Header HTTP-Header error: 'contentlength' cannot be zero
10008 Request error: length mismatch Length of request does not match with notation in header. See 'content-length' in header.
10009 Request is too large Exceeding of maximum request length
10010 Missing required parameter: <parameter> Given parameter is required by called method but it is missing.
10011 Wrong parameter format: <parameter>Given parameter is in a wrong format. Please check api documentation.
10012 Unknown value for parameter <param> : <value> Given value for mentioned key is unknown or incorrect. Maybe a typo?
10013 Unknown parameter: <parameter>Given parameter is unknown. Maybe a typo?


Authentication Errors

Code Short Message Description
10031 Authentication failed Authentication failed: empty username
10032 Authentication failed Authentication failed: empty passphrase
10033 Authentication failed Authentication failed: no such user / wrong password / account locked / no permission
10034 Authentication failed IP address restriction: remote address does not match.
10035 Authentication failed Error in user accounting settings, no main account specified. Please contact support.
10036 Authentication failed Responsible management account is locked.
10039 Permission denied. User has no permission for called method.


API User-Management Errors

Code Short Message Description
11001 Name/ID not available Provided acc_sub_id is not available for creation or already exists.
11002 Internal error while creating subaccount. Internal error, please contact support.
11003 No permission for group <group> Main account has no permission for mentioned group.
11006 Max. user accounts reached Unable to create a new user account due max. user account restriction. Please contact support for further capability!
11010 Unable to modify account: <acc_id>Provided acc_sub_id does not exist or permission was denied.