Update a Recordset¶
Overview¶
Update a recordset
Classification¶
Update
API Operation Object¶
Recordset
Synchronous / Asynchronous¶
Synchronous
Request¶
HTTP Request Method¶
PUT
HTTP Request Path¶
{api_endpoint}/v2/zones/{zone_id}/recordsets/{recordset_id}
HTTP Request Header¶
Format¶
Content-Type: application/json
Accept: application/json
X-Auth-Token: <token_id>
HTTP Request Body¶
Format¶
{
"name" : <name>,
"description" : <description>,
"ttl" : <ttl>,
"records" : <record>
}
Request Parameter¶
name |
style |
format |
description |
required/optional |
default value |
action for invalid parameter |
response code for invalid parameter |
---|---|---|---|---|---|---|---|
token_id |
Header |
authentication token string |
authentication token |
required |
- |
Terminate |
401 |
zone_id |
path |
uuid |
ID for the zone. |
required |
- |
Terminate |
400,404 |
recordset_id |
path |
uuid |
ID for the recordset. |
required |
- |
Terminate |
400,404 |
ttl |
body |
integer(0-86400) |
TTL (Time to Live) for the recordset. |
optional |
- |
Terminate |
400 |
description |
body |
string(0-255characters) |
Description for this recordset. |
optional |
- |
Terminate |
400 |
name |
body |
hostname |
DNS Name for the recordset. |
optional |
- |
Terminate |
400,409 |
record |
body |
string list |
A list of data for this recordset. These items should conform to the DNS spec for the record type - e.g. A records must be IPv4 addresses, CNAME records must be a hostname. Number of the records must be 1. |
optional |
- |
Terminate |
400,409 |
Response¶
HTTP Response Header¶
Format¶
HTTP/1.1 <response_code> (ex. 200)
<response_code>: see "Response Code" section
<status>: message based on the response code
Response Code¶
response code |
status |
condition |
message |
---|---|---|---|
202 |
Accepted |
normal end |
|
400 |
Bad Request |
invalid value |
E2040 Input parameters are required. |
Bad Request |
invalid value |
E2011 Invalid recordset format. |
|
Bad Request |
invalid value |
E2015 Can't set domain name not end with zone name. |
|
Bad Request |
invalid value |
E2016 Can't set multiple values on PTR recordset. |
|
Bad Request |
invalid value |
E2017 Invalid recordset format. (Must be IPaddress(v4) format.) |
|
Bad Request |
invalid value |
E2018 Invalid recordset format. (Must be IPaddress(v6) format.) |
|
Bad Request |
invalid value |
E2019 Invalid recordset format. (Must be priority and server name.) |
|
Bad Request |
invalid value |
E2020 Priority must be positive integer value. (0 - 65535) |
|
Bad Request |
invalid value |
E2021 Server name must be domain format |
|
Bad Request |
invalid value |
E2022 Invalid recordset format. (Must be priority and weight and service port and server name.) |
|
Bad Request |
invalid value |
E2023 Priority must be positive integer value. (0 - 65535) |
|
Bad Request |
invalid value |
E2024 Weight must be positive integer value. (0 - 65535) |
|
Bad Request |
invalid value |
E2025 Port must be positive integer value. (0 - 65535) |
|
Bad Request |
invalid value |
E2026 Server name must be domain format. |
|
Bad Request |
invalid value |
E2027 Invalid recordset format. (Must be IPaddress(v4) format or domain name format.) |
|
Bad Request |
invalid value |
E2028 Invalid recordset format. (Must be domain format.) |
|
Bad Request |
invalid value |
E2040 Input parameters are required. |
|
Bad Request |
invalid value |
E2042 Zone id is required. |
|
Bad Request |
invalid value |
E2044 At least domain name or TTL or recordset value is required. |
|
Bad Request |
invalid value |
E2049 Recordset id is required. |
|
Bad Request |
invalid value |
E2055 Domain name must be less than or equal to 255. |
|
Bad Request |
invalid value |
E2056 TTL value must be less than or equal to {max_value} |
|
Bad Request |
invalid value |
E2057 TTL value must be more than or equal to 0 |
|
Bad Request |
invalid value |
E2058 Description must input less than or equal to 255. |
|
404 |
Not Found |
not exists |
E2007 Specified zone is not found. |
Not Found |
not exists |
E2008 Specified recordset is not found. |
|
409 |
conflict |
conflict |
E2036 Specified recordset already exists. |
conflict |
conflict |
E2037 Specified domain name of CNAME record already exists. |
|
conflict |
conflict |
E2038 Request recordset values conflict. |
|
conflict |
conflict |
E2066 Specified domain name already exists CNAME record. |
|
401 |
Unauthorized |
authentication failure |
E2001 Invalid token. |
500 |
Internal Server Error |
internal server error |
E9001 Internal Server Error. Request failed. |
Response Body¶
Format¶
{
"id": <id>,
"name": <name>,
"ttl": <ttl>,
"description": <description>,
"records": <records>,
"type": <type>,
"version": <version>,
"created_at": <created_at>,
"updated_at": <updated_at>,
"zone_id": <zone_id>,
"links": {
<links>
}
}
Response Parameter¶
item |
format |
Description |
---|---|---|
id |
uuid |
ID for the resource. |
name |
hostname |
DNS Name for the recordset. |
ttl |
integer |
TTL (Time to Live) for the recordset. |
description |
string |
Description for this recordset. |
records |
string list |
A list of data for this recordset. Each item will be a separate record in SDPF DNS These items should conform to the DNS spec for the record type - e.g. A records must be IPv4 addresses, CNAME records must be a hostname. |
type |
string |
They RRTYPE of the recordset. |
version |
integer |
Version of the resource. This parameter is not currently supported. it always return 1. |
created_at |
datestamp |
Date / Time when resource was created. |
updated_at |
datestamp |
Date / Time when resource last updated. |
zone_id |
uuid |
ID for the zone that contains this recordset. |
links |
links |
Links to the resource, and other related resources. When a response has been broken into pages, we will include a next link that should be followed to retrieve all results. |
Sample Request and Response¶
Sample API Request¶
Request URL¶
PUT /v2/zones/fbe8562b-66a5-4071-b4c2-250487d15a81/recordsets/2514d0c1-d41e-4fd0-b736-acf3fbd1e03a
Request Header¶
Content-Type: application/json
Accept: application/json
X-Auth-Token: e8c788fbaeb14964ae19759eb1df4ff1
Request Body¶
{
"name": "ex2.example.uk",
"description": "updated description",
"ttl": 300,
"records": [
"203.0.113.4"
]
}
Sample API Response¶
Response Header¶
HTTP/1.1 202
Date: Mon, 24 Oct 2016 06:15:59 GMT
Content-Type: application/json
Content-Length: 400
Connection: keep-alive
Set-Cookie: TS0183560f=01cce65ce12ede6cd54137c01adbf25c87fd4208f9f52dc93a0b5d69ace3df819dad6761ec; Path=/
Response Body¶
{
"id": "2514d0c1-d41e-4fd0-b736-acf3fbd1e03a",
"name": "ex2.example.uk.",
"ttl": 300,
"description": "updated description",
"records": "203.0.113.4",
"type": "A",
"version": 1,
"created_at": null,
"updated_at": null,
"zone_id": "fbe8562b-66a5-4071-b4c2-250487d15a81",
"links": {
"self": "https://endpoint.api.example.com/v2/zones/fbe8562b-66a5-4071-b4c2-250487d15a81/recordsets/2514d0c1-d41e-4fd0-b736-acf3fbd1e03a"
}
}
Sample Error Response¶
Response¶
HTTP/1.1 404
Date: Mon, 24 Oct 2016 06:19:30 GMT
Content-Type: application/json
Content-Length: 94
Connection: keep-alive
Set-Cookie: TS0183560f=01cce65ce1d1e9bc9647943a25552b784083a729b3d7b22e5bda55e34bae03190901b9f01c; Path=/
{"error":{"code":404,"title":"Not Found","message":"E2008 Specified recordset is not found."}}