domain/adddnsrecord
Description
Creates a new DNS zone record for an existing domain in a given SPanel user account.
Parameters
Field | Type | Required | Description |
---|---|---|---|
token | string | Yes | Authorizing API token – check API Basics for more information. |
accountuser | string | Yes | The SPanel user account that is being managed or viewed. |
action | string | Yes | The category and function being executed. |
domain | string | Yes | The domain for which the DNS zone is being created. |
name | string | Yes | The new DNS record name. |
ttl | int | No | Default: 14400. The new DNS record TTL (time to live). |
type | string | Yes | The new DNS record type. Possible values: A, CNAME, MX, TXT, NS. |
priority | int | No | Default: empty (unset) or 0. Numeric priority value. Only applicable when having MX as type but still optional. |
value | string | Yes | The new DNS record value. |
Warning
Pay attention to the correct name and value formats – some DNS record types require dots at the end of the string.
Example
$endpointUrl = 'https://123.123.123.123/spanel/api.php';
$postData = [
'token' => 'provided_auth_token',
'accountuser' => 'spanelio',
'action' => 'domain/adddnsrecord',
'domain' => 'spanel.io',
'name' => 'spanel.io.',
'ttl' => 86400,
'type' => 'NS',
//'priority' => 0,
'value' => 'ns1.spanel.io.'
];
$ch = curl_init();
curl_setopt( $ch, CURLOPT_URL, $endpointUrl);
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt( $ch, CURLOPT_POST, true);
curl_setopt( $ch, CURLOPT_POSTFIELDS, http_build_query($postData));
curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, false);
$jsonOutput = curl_exec( $ch );
You can find more information about the Endpoint URL in our API Basics article.
Output
{
"result": "success",
"data": {
"msg": "The DNS record "\spanel.io. 86400 IN NS ns1.spanel.io."\ has been created successfully"
}
}