mirror of
https://github.com/VinylDNS/vinyldns
synced 2025-09-05 16:55:16 +00:00
252 lines
22 KiB
HTML
252 lines
22 KiB
HTML
![]() |
<html><head><title>VinylDNS: Update RecordSet</title><meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="author" content="VinylDNS" /><meta name="description" content="DNS Management Platform" /><meta name="og:image" content="/img/poster.png" /><meta name="og:title" content="VinylDNS: Update RecordSet" /><meta name="og:site_name" content="VinylDNS" /><meta name="og:url" content="http://vinyldns.io" /><meta name="og:type" content="website" /><meta name="og:description" content="DNS Management Platform" /><link rel="icon" type="image/png" href="/img/favicon.png" /><meta name="twitter:title" content="VinylDNS: Update RecordSet" /><meta name="twitter:image" content="http://vinyldns.ioimg/poster.png" /><meta name="twitter:description" content="DNS Management Platform" /><meta name="twitter:card" content="summary_large_image" /><link rel="icon" type="image/png" sizes="16x16" href="/img/favicon16x16.png" /><link rel="icon" type="image/png" sizes="24x24" href="/img/favicon24x24.png" /><link rel="icon" type="image/png" sizes="32x32" href="/img/favicon32x32.png" /><link rel="icon" type="image/png" sizes="48x48" href="/img/favicon48x48.png" /><link rel="icon" type="image/png" sizes="57x57" href="/img/favicon57x57.png" /><link rel="icon" type="image/png" sizes="60x60" href="/img/favicon60x60.png" /><link rel="icon" type="image/png" sizes="64x64" href="/img/favicon64x64.png" /><link rel="icon" type="image/png" sizes="70x70" href="/img/favicon70x70.png" /><link rel="icon" type="image/png" sizes="72x72" href="/img/favicon72x72.png" /><link rel="icon" type="image/png" sizes="76x76" href="/img/favicon76x76.png" /><link rel="icon" type="image/png" sizes="96x96" href="/img/favicon96x96.png" /><link rel="icon" type="image/png" sizes="114x114" href="/img/favicon114x114.png" /><link rel="icon" type="image/png" sizes="120x120" href="/img/favicon120x120.png" /><link rel="icon" type="image/png" sizes="128x128" href="/img/favicon128x128.png" /><link rel="icon" type="image/png" sizes="144x144" href="/img/favicon144x144.png" /><link rel="icon" type="image/png" sizes="150x150" href="/img/favicon150x150.png" /><link rel="icon" type="image/png" sizes="152x152" href="/img/favicon152x152.png" /><link rel="icon" type="image/png" sizes="196x196" href="/img/favicon196x196.png" /><link rel="icon" type="image/png" sizes="310x310" href="/img/favicon310x310.png" /><link rel="icon" type="image/png" sizes="310x150" href="/img/favicon310x150.png" /><link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" /><link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" /><link rel="stylesheet" href="/highlight/styles/default.css" /><link rel="stylesheet" href="/css/style.css" /><link rel="stylesheet" href="/css/palette.css" /><link rel="stylesheet" href="/css/codemirror.css" /><link rel="stylesheet" href="/css/custom.css" /></head><body class="docs"><div id="wrapper"><div id="sidebar-wrapper"><ul id="sidebar" class="sidebar-nav"><li class="sidebar-brand"><a href="/" class="brand"><div class="brand-wrapper"><span>VinylDNS</span></div></a></li> <li><a href="/api/index" class="">API documentation</a></li> <li><a href="/api/auth-mechanism.html" class="">Authentication</a></li> <li><a href="/api/zone-model.html" class="">Zone</a> <ul class="sub_section"> <li><a href="/api/zone-model.html" class="">Zone Model</a></li> <li><a href="/api/create-zone.html" class="">Create Zone</a></li> <li><a href="/api/update-zone.html" class="">Update Zone</a></li> <li><a href="/api/delete-zone.html" class="">Delete Zone</a></li> <li><a href="/api/get-zone-by-id.html" class="">Get Zone by ID</a></li> <li><a href="/api/get-zone-by-name.html" class="">Get Zone by Name</a></li> <li><a href="/api/list-zones.html" class="">List / Search Zone</a></li> <li><a href="/api/sync-zone.html" class="">Sync Zone</a></li> <li><a href="/api/list-zone-changes.html" class="">List Zone Changes<
|
||
|
|
||
|
<p>Updates a RecordSet. This performs a delete of the old record, and inserts the new record.
|
||
|
<br /><br /></p>
|
||
|
|
||
|
<h4 id="http-request">HTTP REQUEST</h4>
|
||
|
|
||
|
<blockquote>
|
||
|
<p>PUT /zones/{zoneId}/recordsets/{recordSetId}</p>
|
||
|
</blockquote>
|
||
|
|
||
|
<h4 id="http-request-params">HTTP REQUEST PARAMS</h4>
|
||
|
|
||
|
<table>
|
||
|
<thead>
|
||
|
<tr>
|
||
|
<th>name</th>
|
||
|
<th>type</th>
|
||
|
<th>required?</th>
|
||
|
<th style="text-align: left">description</th>
|
||
|
</tr>
|
||
|
</thead>
|
||
|
<tbody>
|
||
|
<tr>
|
||
|
<td>zoneId</td>
|
||
|
<td>string</td>
|
||
|
<td>yes</td>
|
||
|
<td style="text-align: left">id of the zone where the recordset belongs, this value <strong>must</strong> match the zoneId of the existing recordSet</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>id</td>
|
||
|
<td>string</td>
|
||
|
<td>yes</td>
|
||
|
<td style="text-align: left">the id of the recordset being updated</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>name</td>
|
||
|
<td>string</td>
|
||
|
<td>yes</td>
|
||
|
<td style="text-align: left">the name of the recordset being updated</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>type</td>
|
||
|
<td>string</td>
|
||
|
<td>yes</td>
|
||
|
<td style="text-align: left">the type of recordset</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>ttl</td>
|
||
|
<td>integer</td>
|
||
|
<td>yes</td>
|
||
|
<td style="text-align: left">the TTL in seconds</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>records</td>
|
||
|
<td>array of record data</td>
|
||
|
<td>yes</td>
|
||
|
<td style="text-align: left">record data for recordset, see <a href="../api/recordset-model">RecordSet Model</a></td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>ownerGroupId</td>
|
||
|
<td>string</td>
|
||
|
<td>sometimes*</td>
|
||
|
<td style="text-align: left">Record ownership assignment, applicable if the recordset is in a <a href="../api/zone-model#shared-zones">shared zone</a></td>
|
||
|
</tr>
|
||
|
</tbody>
|
||
|
</table>
|
||
|
|
||
|
<p>*Note: If a recordset has an ownerGroupId you must include that value in the update request, otherwise the update will remove the ownerGroupId value</p>
|
||
|
|
||
|
<h4 id="example-http-request">EXAMPLE HTTP REQUEST</h4>
|
||
|
<div class="highlighter-rouge"><pre class="highlight"><code><span class="p">{</span><span class="w">
|
||
|
</span><span class="nt">"id"</span><span class="p">:</span><span class="w"> </span><span class="s2">"dd9c1120-0594-4e61-982e-8ddcbc8b2d21"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"already-exists"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"type"</span><span class="p">:</span><span class="w"> </span><span class="s2">"A"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"ttl"</span><span class="p">:</span><span class="w"> </span><span class="mi">38400</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"records"</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="w">
|
||
|
</span><span class="p">{</span><span class="w">
|
||
|
</span><span class="nt">"address"</span><span class="p">:</span><span class="w"> </span><span class="s2">"6.5.4.3"</span><span class="w">
|
||
|
</span><span class="p">}</span><span class="w">
|
||
|
</span><span class="p">],</span><span class="w">
|
||
|
</span><span class="nt">"zoneId"</span><span class="p">:</span><span class="w"> </span><span class="s2">"2467dc05-68eb-4498-a9d5-78d24bb0893c"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"ownerGroupId"</span><span class="p">:</span><span class="w"> </span><span class="s2">"f42385e4-5675-38c0-b42f-64105e743bfe"</span><span class="w">
|
||
|
</span><span class="p">}</span><span class="w">
|
||
|
</span></code></pre>
|
||
|
</div>
|
||
|
|
||
|
<h4 id="http-response-types">HTTP RESPONSE TYPES</h4>
|
||
|
|
||
|
<table>
|
||
|
<thead>
|
||
|
<tr>
|
||
|
<th>Code</th>
|
||
|
<th style="text-align: left">description</th>
|
||
|
</tr>
|
||
|
</thead>
|
||
|
<tbody>
|
||
|
<tr>
|
||
|
<td>202</td>
|
||
|
<td style="text-align: left"><strong>Accepted</strong> - the update is valid and has been accepted for processing; the record set change resource is returned in the response body</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>400</td>
|
||
|
<td style="text-align: left"><strong>Bad Request</strong> - the zone being updated is not active; typically because the connection information does not exist for the zone</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>401</td>
|
||
|
<td style="text-align: left"><strong>Unauthorized</strong> - The authentication information provided is invalid. Typically the request was not signed properly, or the access key and secret used to sign the request are incorrect</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>403</td>
|
||
|
<td style="text-align: left"><strong>Forbidden</strong> - The user does not have the access required to perform the action</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>404</td>
|
||
|
<td style="text-align: left"><strong>Not Found</strong> - Zone or RecordSet not found</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>409</td>
|
||
|
<td style="text-align: left"><strong>Conflict</strong> - There is an existing pending change against this record set</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>422</td>
|
||
|
<td style="text-align: left"><strong>Unprocessable Entity</strong></td>
|
||
|
</tr>
|
||
|
</tbody>
|
||
|
</table>
|
||
|
|
||
|
<h4 id="http-response-attributes">HTTP RESPONSE ATTRIBUTES</h4>
|
||
|
|
||
|
<table>
|
||
|
<thead>
|
||
|
<tr>
|
||
|
<th>name</th>
|
||
|
<th>type</th>
|
||
|
<th style="text-align: left">description</th>
|
||
|
</tr>
|
||
|
</thead>
|
||
|
<tbody>
|
||
|
<tr>
|
||
|
<td>zone</td>
|
||
|
<td>map</td>
|
||
|
<td style="text-align: left">contains information about the zone when the change was created</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>recordSet</td>
|
||
|
<td>map</td>
|
||
|
<td style="text-align: left">contains the recordset model</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>updates</td>
|
||
|
<td>map</td>
|
||
|
<td style="text-align: left">new data to overwrite current record set</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>userId</td>
|
||
|
<td>string</td>
|
||
|
<td style="text-align: left">the user id that initiated the change</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>changeType</td>
|
||
|
<td>string</td>
|
||
|
<td style="text-align: left">type of change requested (Create, Update, Delete); in this case Update</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>created</td>
|
||
|
<td>string</td>
|
||
|
<td style="text-align: left">the time (GMT) the change was initiated</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>id</td>
|
||
|
<td>string</td>
|
||
|
<td style="text-align: left">the id of the change. This is not the id of the recordset</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>status</td>
|
||
|
<td>RecordSetChangeStatus</td>
|
||
|
<td style="text-align: left">the status of the change (Pending, Complete, or Failed)</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>singleBatchChangeIds</td>
|
||
|
<td>array of SingleBatchChange Id objects</td>
|
||
|
<td style="text-align: left">if the recordset change was part of a batch change, the IDs of the single changes that comprise the recordset change</td>
|
||
|
</tr>
|
||
|
</tbody>
|
||
|
</table>
|
||
|
|
||
|
<h4 id="example-response">EXAMPLE RESPONSE</h4>
|
||
|
|
||
|
<div class="highlighter-rouge"><pre class="highlight"><code><span class="p">{</span><span class="w">
|
||
|
</span><span class="nt">"zone"</span><span class="p">:</span><span class="w"> </span><span class="p">{</span><span class="w">
|
||
|
</span><span class="nt">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"vinyl."</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"email"</span><span class="p">:</span><span class="w"> </span><span class="s2">"test@test.com"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"status"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Active"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"created"</span><span class="p">:</span><span class="w"> </span><span class="s2">"2017-02-23T14:52:44Z"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"updated"</span><span class="p">:</span><span class="w"> </span><span class="s2">"2017-02-23T15:12:33Z"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"id"</span><span class="p">:</span><span class="w"> </span><span class="s2">"2467dc05-68eb-4498-a9d5-78d24bb0893c"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"account"</span><span class="p">:</span><span class="w"> </span><span class="s2">"9b22b686-54bc-47fb-a8f8-cdc48e6d04ae"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"shared"</span><span class="p">:</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"acl"</span><span class="p">:</span><span class="w"> </span><span class="p">{</span><span class="w">
|
||
|
</span><span class="nt">"rules"</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="w">
|
||
|
|
||
|
</span><span class="p">]</span><span class="w">
|
||
|
</span><span class="p">},</span><span class="w">
|
||
|
</span><span class="nt">"adminGroupId"</span><span class="p">:</span><span class="w"> </span><span class="s2">"9b22b686-54bc-47fb-a8f8-cdc48e6d04ae"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"latestSync"</span><span class="p">:</span><span class="w"> </span><span class="s2">"2017-02-23T15:12:33Z"</span><span class="w">
|
||
|
</span><span class="p">},</span><span class="w">
|
||
|
</span><span class="nt">"recordSet"</span><span class="p">:</span><span class="w"> </span><span class="p">{</span><span class="w">
|
||
|
</span><span class="nt">"type"</span><span class="p">:</span><span class="w"> </span><span class="s2">"A"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"zoneId"</span><span class="p">:</span><span class="w"> </span><span class="s2">"2467dc05-68eb-4498-a9d5-78d24bb0893c"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"already-exists"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"ttl"</span><span class="p">:</span><span class="w"> </span><span class="mi">38400</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"status"</span><span class="p">:</span><span class="w"> </span><span class="s2">"PendingUpdate"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"created"</span><span class="p">:</span><span class="w"> </span><span class="s2">"2017-02-23T15:12:41Z"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"updated"</span><span class="p">:</span><span class="w"> </span><span class="s2">"2017-02-23T15:12:41Z"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"records"</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="w">
|
||
|
</span><span class="p">{</span><span class="w">
|
||
|
</span><span class="nt">"address"</span><span class="p">:</span><span class="w"> </span><span class="s2">"6.6.6.1"</span><span class="w">
|
||
|
</span><span class="p">}</span><span class="w">
|
||
|
</span><span class="p">],</span><span class="w">
|
||
|
</span><span class="nt">"id"</span><span class="p">:</span><span class="w"> </span><span class="s2">"dd9c1120-0594-4e61-982e-8ddcbc8b2d21"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"account"</span><span class="p">:</span><span class="w"> </span><span class="s2">"9b22b686-54bc-47fb-a8f8-cdc48e6d04ae"</span><span class="w">
|
||
|
</span><span class="p">},</span><span class="w">
|
||
|
</span><span class="nt">"userId"</span><span class="p">:</span><span class="w"> </span><span class="s2">"0215d410-9b7e-4636-89fd-b6b948a06347"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"changeType"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Update"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"status"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Pending"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"created"</span><span class="p">:</span><span class="w"> </span><span class="s2">"2017-02-23T15:12:41Z"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"updates"</span><span class="p">:</span><span class="w"> </span><span class="p">{</span><span class="w">
|
||
|
</span><span class="nt">"type"</span><span class="p">:</span><span class="w"> </span><span class="s2">"A"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"zoneId"</span><span class="p">:</span><span class="w"> </span><span class="s2">"2467dc05-68eb-4498-a9d5-78d24bb0893c"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"already-exists"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"ttl"</span><span class="p">:</span><span class="w"> </span><span class="mi">38400</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"status"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Active"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"created"</span><span class="p">:</span><span class="w"> </span><span class="s2">"2017-02-23T15:12:33Z"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"records"</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="w">
|
||
|
</span><span class="p">{</span><span class="w">
|
||
|
</span><span class="nt">"address"</span><span class="p">:</span><span class="w"> </span><span class="s2">"6.6.6.6"</span><span class="w">
|
||
|
</span><span class="p">}</span><span class="w">
|
||
|
</span><span class="p">],</span><span class="w">
|
||
|
</span><span class="nt">"id"</span><span class="p">:</span><span class="w"> </span><span class="s2">"dd9c1120-0594-4e61-982e-8ddcbc8b2d21"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"account"</span><span class="p">:</span><span class="w"> </span><span class="s2">"9b22b686-54bc-47fb-a8f8-cdc48e6d04ae"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"ownerGroupId"</span><span class="p">:</span><span class="w"> </span><span class="s2">"f42385e4-5675-38c0-b42f-64105e743bfe"</span><span class="w">
|
||
|
</span><span class="p">},</span><span class="w">
|
||
|
</span><span class="nt">"id"</span><span class="p">:</span><span class="w"> </span><span class="s2">"df69bc45-2942-4fb7-813c-4dd21cfad7fa"</span><span class="p">,</span><span class="w">
|
||
|
</span><span class="nt">"singleBatchChangeIds"</span><span class="p">:</span><span class="w"> </span><span class="p">[]</span><span class="w">
|
||
|
</span><span class="p">}</span><span class="w">
|
||
|
</span></code></pre>
|
||
|
</div>
|
||
|
</section><div class="edit-button"><a href="https://github.com/VinylDNS/vinyldns/edit/master/modules/docs/src/main/tut/api/update-recordset.md" class="btn-sm btn-info">Improve this page</a></div></div></div></div></div><script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script><script src="/highlight/highlight.pack.js"></script><script>hljs.configure({languages:['scala','java','bash']});
|
||
|
hljs.initHighlighting();
|
||
|
</script><script>((window.gitter = {}).chat = {}).options = {
|
||
|
room: 'vinyldns/Lobby'};</script><script src="https://sidecar.gitter.im/dist/sidecar.v1.js"></script><script src="/js/main.js"></script></body></html>
|