mirror of
https://github.com/VinylDNS/vinyldns
synced 2025-09-05 08:45:11 +00:00
198 lines
18 KiB
HTML
198 lines
18 KiB
HTML
<html><head><title>VinylDNS: Approve Batch Change</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: Approve Batch Change" /><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: Approve Batch Change" /><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</a></li></ul></li> <li><a href="/api/recordset-model.html" class="">RecordSet</a> <ul class="sub_section"> <li><a href="/api/recordset-model.html" class="">RecordSet Model</a></li> <li><a href="/api/create-recordset.html" class="">Create RecordSet</a></li> <li><a href="/api/update-recordset.html" class="">Update RecordSet</a></li> <li><a href="/api/delete-recordset.html" class="">Delete RecordSet</a></li> <li><a href="/api/get-recordset.html" class="">Get RecordSet</a></li> <li><a href="/api/list-recordsets.html" class="">List / Search RecordSets</a></li> <li><a href="/api/get-recordset-change.html" class="">Get RecordSet Change</a></li> <li><a href="/api/list-recordset-changes.html" class="">List RecordSet Changes</a></li></ul></li> <li><a href="/api/batchchange-model.html" class="">Batch Change</a> <ul class="sub_section"> <li><a href="/api/batchchange-model.html" class="">Batch Change Model</a></li> <li><a href="/api/create-batchchange.html" class="">Create Batch Change</a></li> <li><a href="/api/get-batchchange.html" class="">Get Batch Change</a></li> <li><a href="/api/list-batchchanges.html" class="">List Batch Changes</a></li> <li><a href="/api/batchchange-errors.html" class="">Batch Change Errors</a></li> <li><a href="/api/cancel-batchchange.html" class="">Cancel Batch Change</a></li> <li><a href="/api/approve-batchchange.html" class=" active ">Approve Batch Change</a></li> <li><a href="/api/reject-batchchange.html" class="">Reject Batch Change</a></li></ul></li> <li><a href="/api/membership-model.html" class="">Membership</a> <ul class="sub_section"> <li><a href="/api/membership-model.html" class="">Membership Model</a></li> <li><a href="/api/create-group.html" class="">Create Group</a></li> <li><a href="/api/update-group.html" class="">Update Group</a></li> <li><a href="/api/delete-group.html" class="">Delete Group</a></li> <li><a href="/api/get-group.html" class="">Get Group</a></li> <li><a href="/api/list-groups.html" class="">List Groups</a></li> <li><a href="/api/list-group-admins.html" class="">List Group Admins</a></li> <li><a href="/api/list-group-members.html" class="">List Group Members</a></li> <li><a href="/api/list-group-activity.html" class="">List Group Activity</a></li></ul></li></ul></div><div id="page-content-wrapper"><div class="nav"><div class="container-fluid"><div class="row"><div class="col-lg-12"><div class="action-menu pull-left clearfix"><a href="#menu-toggle" id="menu-toggle"><i class="fa fa-bars" aria-hidden="true"></i></a></div><ul class="pull-right"><li id="gh-eyes-item" class="hidden-xs"><a href="https://github.com/VinylDNS/vinyldns"><i class="fa fa-eye"></i><span>WATCH<span id="eyes" class="label label-default">--</span></span></a></li><li id="gh-stars-item" class="hidden-xs"><a href="https://github.com/VinylDNS/vinyldns"><i class="fa fa-star-o"></i><span>STARS<span id="stars" class="label label-default">--</span></span></a></li></ul></div></div></div></div><div id="content" data-github-owner="VinylDNS" data-github-repo="vinyldns"><div class="content-wrapper"><section><h1 id="approve-batch-change">Approve Batch Change</h1>
|
|
|
|
<p>Manually approves a batch change in pending review status given the batch change ID, resulting in revalidation and
|
|
submission for backend processing. Only system administrators (ie. support or super user) can manually review a batch
|
|
change. In the event that a batch change is approved and still encounters non-fatal errors, it will remain in manual
|
|
review state until a successful approval (<strong>202</strong> Accepted) or <a href="../api/reject-batchchange">rejection</a> (<strong>200</strong> OK).</p>
|
|
|
|
<p>Note: If <a href="../../operator/config-api#manual-review">manual review is disabled</a> in the VinylDNS instance,
|
|
users trying to access this endpoint will encounter a <strong>404 Not Found</strong> response since it will not exist.</p>
|
|
|
|
<h4 id="http-request">HTTP REQUEST</h4>
|
|
|
|
<blockquote>
|
|
<p>POST /zones/batchrecordchanges/{id}/approve</p>
|
|
</blockquote>
|
|
|
|
<h4 id="http-request-params">HTTP REQUEST PARAMS</h4>
|
|
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>name</th>
|
|
<th style="text-align: left">type</th>
|
|
<th>required?</th>
|
|
<th style="text-align: left">description</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>id</td>
|
|
<td style="text-align: left">string</td>
|
|
<td>yes</td>
|
|
<td style="text-align: left">Unique identifier assigned to each created batch change.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>reviewComment</td>
|
|
<td style="text-align: left">string</td>
|
|
<td>no</td>
|
|
<td style="text-align: left">Optional approval explanation.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<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">"reviewComment"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Comments are optional."</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>OK</strong> Batch change is approved and is returned in response body. Batch change is submitted for backend processing.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>400</td>
|
|
<td style="text-align: left"><strong>BadRequest</strong> Batch change is not in pending approval status.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>403</td>
|
|
<td style="text-align: left"><strong>Forbidden</strong> User is not a system administrator (ie. support or super user) or is attempting to approve a scheduled batch prior to its scheduled due date.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>404</td>
|
|
<td style="text-align: left"><strong>NotFound</strong> Batch change does not exist.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<p>Since we re-run validations upon successful approval, the <a href="../api/create-batchchange#http-response-types">create batch error codes</a> still hold, so it is possible to see them as well.</p>
|
|
|
|
<h4 id="http-response-attributes-">HTTP RESPONSE ATTRIBUTES <a id="http-response-attributes"></a></h4>
|
|
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>name</th>
|
|
<th style="text-align: left">type</th>
|
|
<th style="text-align: left">description</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>userId</td>
|
|
<td style="text-align: left">string</td>
|
|
<td style="text-align: left">The unique identifier of the user that created the batch change.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>userName</td>
|
|
<td style="text-align: left">string</td>
|
|
<td style="text-align: left">The username of the user that created the batch change.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>comments</td>
|
|
<td style="text-align: left">string</td>
|
|
<td style="text-align: left">Conditional: comments about the batch change, if provided.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>createdTimestamp</td>
|
|
<td style="text-align: left">date-time</td>
|
|
<td style="text-align: left">The timestamp (UTC) when the batch change was created.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>changes</td>
|
|
<td style="text-align: left">Array of SingleChange</td>
|
|
<td style="text-align: left">Array of single changes within a batch change. A <em>SingleChange</em> can either be a <a href="../api/batchchange-model#singleaddchange-attributes">SingleAddChange</a> or a <a href="../api/batchchange-model#singledeleterrsetchange-">SingleDeleteRRSetChange</a>.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>status</td>
|
|
<td style="text-align: left">BatchChangeStatus</td>
|
|
<td style="text-align: left"><a href="../api/batchchange-model#batchchange-attributes">Status of the batch change</a>.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>id</td>
|
|
<td style="text-align: left">string</td>
|
|
<td style="text-align: left">The unique identifier for this batch change.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>ownerGroupId</td>
|
|
<td style="text-align: left">string</td>
|
|
<td style="text-align: left">Conditional: Record ownership assignment, if provided.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>approvalStatus</td>
|
|
<td style="text-align: left">BatchChangeApprovalStatus</td>
|
|
<td style="text-align: left">Whether the batch change is currently awaiting manual review. Will be <strong>ManuallyApproved</strong> status when approving.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>reviewerId</td>
|
|
<td style="text-align: left">string</td>
|
|
<td style="text-align: left">Unique identifier for the reviewer of the batch change.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>reviewerUserName</td>
|
|
<td style="text-align: left">string</td>
|
|
<td style="text-align: left">User name for the reviewer of the batch change.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>reviewComment</td>
|
|
<td style="text-align: left">string</td>
|
|
<td style="text-align: left">Conditional: Comment from the reviewer of the batch change, if provided.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>reviewTimestamp</td>
|
|
<td style="text-align: left">date-time</td>
|
|
<td style="text-align: left">The timestamp (UTC) of when the batch change was manually reviewed.</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">"userId"</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">"userName"</span><span class="p">:</span><span class="w"> </span><span class="s2">"vinyl201"</span><span class="p">,</span><span class="w">
|
|
</span><span class="nt">"comments"</span><span class="p">:</span><span class="w"> </span><span class="s2">""</span><span class="p">,</span><span class="w">
|
|
</span><span class="nt">"createdTimestamp"</span><span class="p">:</span><span class="w"> </span><span class="s2">"2019-07-25T20:08:17Z"</span><span class="p">,</span><span class="w">
|
|
</span><span class="nt">"changes"</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">"changeType"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Add"</span><span class="p">,</span><span class="w">
|
|
</span><span class="nt">"inputName"</span><span class="p">:</span><span class="w"> </span><span class="s2">"approve.parent.com."</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">7200</span><span class="p">,</span><span class="w">
|
|
</span><span class="nt">"record"</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">"1.1.1.1"</span><span class="w">
|
|
</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">"recordName"</span><span class="p">:</span><span class="w"> </span><span class="s2">"approve"</span><span class="p">,</span><span class="w">
|
|
</span><span class="nt">"zoneName"</span><span class="p">:</span><span class="w"> </span><span class="s2">"parent.com."</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">"876879e5-293d-4092-99ab-9cbdf50c1636"</span><span class="p">,</span><span class="w">
|
|
</span><span class="nt">"validationErrors"</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">"a69cad97-994d-41e3-aed2-ec8c86a30ac5"</span><span class="w">
|
|
</span><span class="p">}</span><span class="w">
|
|
</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">"PendingProcessing"</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">"2343fa88-d4da-4377-986a-34ba4e8ca628"</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">"159a41c5-e67e-4951-b539-05f5ac788139"</span><span class="p">,</span><span class="w">
|
|
</span><span class="nt">"reviewerId"</span><span class="p">:</span><span class="w"> </span><span class="s2">"90c11ffc-5a71-4794-97c6-74d19c81af7d "</span><span class="p">,</span><span class="w">
|
|
</span><span class="nt">"reviewComment"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Good to go!"</span><span class="p">,</span><span class="w">
|
|
</span><span class="nt">"reviewTimestamp"</span><span class="p">:</span><span class="w"> </span><span class="s2">"2019-07-25T20:10:28Z"</span><span class="p">,</span><span class="w">
|
|
</span><span class="nt">"approvalStatus"</span><span class="p">:</span><span class="w"> </span><span class="s2">"ManuallyApproved"</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/approve-batchchange.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> |