set_dns_zone
Set the records for a domain's DNS zone.
Request parameters for set_dns_zone
Standard parameters
- action = set_dns_zone
- object = domain attributes
Attributes
Parameters within the attributes associative array are described below.
Parameter name | Obligation | Definition/Value |
---|---|---|
domain | Required | The domain whose DNS you want to set. |
records | Required | A list of the record types defined for the domain; each record includes the settings for that record. Record types may be
For more information, see the Records table below. |
Records
Parameters within the records associative array are described below.
Parameter name | Obligation | Definition/Value |
---|---|---|
A | Optional | Maps the domain name to the IP address. The A record consists of the following:
|
AAAA | Optional | Maps the domain name to the IPv6 address. The AAAA record consists of the following:
|
CNAME | Optional | Canonical Name. CNAME records can be used when you want a subdomain to point to another hostname. Allows you to create an alias for your domain. The CNAME record consists of the following:
|
MX | Optional | Mail Exchange. MX records determine how mail is delivered to your domain. Ensures that email that is sent to you is routed to the correct destination. The MX record consists of the following:
|
nameservers_ok | Required | Indicates whether the domain is set up to use the OpenSRS nameservers.
|
records | Required | A list of the record types defined for the domain; each record includes the settings for that record. Record types may be
|
SRV | Optional | Service Record.
|
TXT | Optional | Text Record. Allows you to attach comments to a hostname to validate that email is being sent from the IP address of the domain's mail server. The TXT record consists of the following:
|
Response parameters for set_dns_zone
Standard parameters
- action = reply
- object = domain
- is_success = a Boolean is returned, indicating success or failure of the
request - response_code = response code indicating outcome of the request
- response_text = message describing the outcome of the request
Attributes
If the request is successful, the attributes associative array may include the following:
Parameter name | Obligation | Definition/Value |
---|---|---|
nameservers_ok | Returned if is_success = true | Indicates whether the domain is set up to use the OpenSRS nameservers.
|
records | Returned if is_success = true | A list of the record types defined for the domain; each record includes the settings for that record.
For more information, see the Records table below. |
Records
Parameters within the records associative array are described below.
Parameter name | Obligation | Definition/Value |
---|---|---|
A | Optional | Maps the domain name to the IP address. The A record consists of the following:
|
AAAA | Optional | Maps the domain name to the IPv6 address. The AAAA record consists of the following:
|
CNAME | Optional | Canonical Name. CNAME records can be used when you want a subdomain to point to another hostname. Allows you to create an alias for your domain. The CNAME record consists of the following:
|
MX | Optional | Mail Exchange. MX records determine how mail is delivered to your domain. Ensures that email that is sent to you is routed to the correct destination. The MX record consists of the following:
|
SRV | Optional | Service Record.
|
TXT | Optional | Text Record. Allows you to attach comments to a hostname to validate that email is being sent from the IP address of the domain's mail server. The TXT record consists of the following:
|
Examples for set_dns_zone
Request
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<!DOCTYPE OPS_envelope SYSTEM 'ops.dtd'>
<OPS_envelope>
<header>
<version>0.9</version>
</header>
<body>
<data_block>
<dt_assoc>
<item key="protocol">XCP</item>
<item key="action">SET_DNS_ZONE</item>
<item key="object">DOMAIN</item>
<item key="attributes">
<dt_assoc>
<item key="domain">example.com</item>
<item key="records">
<dt_assoc>
<item key="A">
<dt_array>
<item key="0">
<dt_assoc>
<item key="subdomain"></item>
<item key="ip_address">123.123.123.2</item>
</dt_assoc>
</item>
<item key="1">
<dt_assoc>
<item key="subdomain">*</item>
<item key="ip_address">123.123.123.3</item>
</dt_assoc>
</item>
<item key="2">
<dt_assoc>
<item key="subdomain">www</item>
<item key="ip_address">123.123.123.4</item>
</dt_assoc>
</item>
</dt_array>
</item>
<item key="CNAME">
<dt_array>
<item key="0">
<dt_assoc>
<item key="subdomain">portal</item>
<item key="hostname">www.example.com</item>
</dt_assoc>
</item>
</dt_array>
</item>
<item key="MX">
<dt_array>
<item key="0">
<dt_assoc>
<item key="subdomain"></item>
<item key="hostname">mx.example.com.cust.test.hostedemail.com</item>
<item key="priority">10</item>
</dt_assoc>
</item>
</dt_array>
</item>
<item key="TXT">
<dt_array>
<item key="0">
<dt_assoc>
<item key="subdomain">mail</item>
<item key="text">v=spf1
exists:example.com -all</item>
</dt_assoc>
</item>
</dt_array>
</item>
<item key="AAAA">
<dt_array>
<item key="0">
<dt_assoc>
<item key="subdomain">itportal</item>
<item key="ipv6_address">2001:00ab:0000:00a1:0001:000b:00cc:00de</item>
</dt_assoc>
</item>
</dt_array>
</item>
<item key="SRV">
<dt_array>
<item key="0">
<dt_assoc>
<item key="subdomain">itcontrol</item>
<item key="hostname">control.example.com</item>
<item key="port">443</item>
<item key="priority">10</item>
<item key="weight">1</item>
</dt_assoc>
</item>
</dt_array>
</item>
</dt_assoc>
</item>
</dt_assoc>
</item>
</dt_assoc>
</data_block>
</body>
</OPS_envelope>
Response
<?xml version='1.0' encoding="UTF-8" standalone="no"?>
<!DOCTYPE OPS_envelope SYSTEM "ops.dtd">
<OPS_envelope>
<header>
<version>0.9</version>
</header>
<body>
<data_block>
<dt_assoc>
<item key="protocol">XCP</item>
<item key="action">REPLY</item>
<item key="object">DOMAIN</item>
<item key="response_text">Command Successful</item>
<item key="response_code">200</item>
<item key="is_success">1</item>
<item key="attributes">
<dt_assoc>
<item key="records">
<dt_assoc>
<item key="A">
<dt_array>
<item key="0">
<dt_assoc>
<item key="subdomain"></item>
<item key="ip_address">123.123.123.2</item>
</dt_assoc>
</item>
<item key="1">
<dt_assoc>
<item key="subdomain">*</item>
<item key="ip_address">123.123.123.3</item>
</dt_assoc>
</item>
<item key="2">
<dt_assoc>
<item key="subdomain">www</item>
<item key="ip_address">123.123.123.4</item>
</dt_assoc>
</item>
</dt_array>
</item>
<item key="MX">
<dt_array>
<item key="0">
<dt_assoc>
<item key="priority">10</item>
<item key="subdomain"></item>
<item key="hostname">mx.example.com.cust.test.hostedemail.com</item>
</dt_assoc>
</item>
</dt_array>
</item>
<item key="TXT">
<dt_array>
<item key="0">
<dt_assoc>
<item key="text">v=spf1 exists:example.com -all</item>
<item key="subdomain">mail</item>
</dt_assoc>
</item>
</dt_array>
</item>
<item key="SRV">
<dt_array>
<item key="0">
<dt_assoc>
<item key="priority">10</item>
<item key="weight">1</item>
<item key="subdomain">itcontrol</item>
<item key="hostname">control.example.com</item>
<item key="port">443</item>
</dt_assoc>
</item>
</dt_array>
</item>
<item key="CNAME">
<dt_array>
<item key="0">
<dt_assoc>
<item key="subdomain">portal</item>
<item key="hostname">www.example.com</item>
</dt_assoc>
</item>
</dt_array>
</item>
<item key="AAAA">
<dt_array>
<item key="0">
<dt_assoc>
<item key="subdomain">itportal</item>
<item key="ipv6_address">2001:00ab:0000:00a1:0001:000b:00cc:00de</item>
</dt_assoc>
</item>
</dt_array>
</item>
</dt_assoc>
</item>
<item key="nameservers_ok">1</item>
</dt_assoc>
</item>
</dt_assoc>
</data_block>
</body>
</OPS_envelope>
Updated less than a minute ago