<!doctype html> <html> <head> <meta charset="utf-8"> <meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> <title>API Documentation</title> <link href="../stylesheets/screen.css" rel="stylesheet" type="text/css" media="screen" /> <link href="../stylesheets/print.css" rel="stylesheet" type="text/css" media="print" /> <script type="text/javascript"> !function(){var analytics=window.analytics=window.analytics||[];if(!analytics.initialize)if(analytics.invoked)window.console&&console.error&&console.error("Segment snippet included twice.");else{analytics.invoked=!0;analytics.methods=["trackSubmit","trackClick","trackLink","trackForm","pageview","identify","reset","group","track","ready","alias","debug","page","once","off","on"];analytics.factory=function(t){return function(){var e=Array.prototype.slice.call(arguments);e.unshift(t);analytics.push(e);return analytics}};for(var t=0;t<analytics.methods.length;t++){var e=analytics.methods[t];analytics[e]=analytics.factory(e)}analytics.load=function(t){var e=document.createElement("script");e.type="text/javascript";e.async=!0;e.src=("https:"===document.location.protocol?"https://":"http://")+"cdn.segment.com/analytics.js/v1/"+t+"/analytics.min.js";var n=document.getElementsByTagName("script")[0];n.parentNode.insertBefore(e,n)};analytics.SNIPPET_VERSION="4.0.0"; analytics.load("IWj9D0UpZHZdZUZX9jl98PcpBFWBnBMy"); analytics.page(); }}(); </script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> <script src="../javascripts/all_nosearch.js" type="text/javascript"></script> </head> <body class="includes includes_action"> <a href="#" id="nav-button"> <span> NAV <img src="../images/navbar.png" /> </span> </a> <div class="tocify-wrapper"> <img src="../images/logo.png" /> <div id="toc"> </div> </div> <div class="page-wrapper"> <div class="dark-box"></div> <div class="content"> <h1 id="actions">Actions</h1> <h2 id="action">Action</h2> <blockquote> <p>Example</p> </blockquote> <pre class="highlight json"><code><span class="p">{</span><span class="w"> </span><span class="nt">"action"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Cluster Create"</span><span class="p">,</span><span class="w"> </span><span class="nt">"end_date"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Wed, 17 Sep 2014 08:26:22 +0000"</span><span class="p">,</span><span class="w"> </span><span class="nt">"ip"</span><span class="p">:</span><span class="w"> </span><span class="s2">"56.78.90.12"</span><span class="p">,</span><span class="w"> </span><span class="nt">"is_user_action"</span><span class="p">:</span><span class="w"> </span><span class="kc">true</span><span class="p">,</span><span class="w"> </span><span class="nt">"can_be_canceled"</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">"location"</span><span class="p">:</span><span class="w"> </span><span class="s2">"New York, USA"</span><span class="p">,</span><span class="w"> </span><span class="nt">"method"</span><span class="p">:</span><span class="w"> </span><span class="s2">"POST"</span><span class="p">,</span><span class="w"> </span><span class="nt">"object"</span><span class="p">:</span><span class="w"> </span><span class="s2">"/api/infra/v1/user_namespace/cluster/eea638f4-b77a-4183-b241-22dbd7866f22/"</span><span class="p">,</span><span class="w"> </span><span class="nt">"path"</span><span class="p">:</span><span class="w"> </span><span class="s2">"/api/infra/v1/user_namespace/cluster/"</span><span class="p">,</span><span class="w"> </span><span class="nt">"resource_uri"</span><span class="p">:</span><span class="w"> </span><span class="s2">"/api/audit/v1/action/6246c558-976c-4df6-ba60-eb1a344a17af/"</span><span class="p">,</span><span class="w"> </span><span class="nt">"start_date"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Wed, 17 Sep 2014 08:26:22 +0000"</span><span class="p">,</span><span class="w"> </span><span class="nt">"state"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Success"</span><span class="p">,</span><span class="w"> </span><span class="nt">"user"</span><span class="p">:</span><span class="w"> </span><span class="s2">"user_namespace"</span><span class="p">,</span><span class="w"> </span><span class="nt">"user_agent"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.78.2 (KHTML, like Gecko) Version/7.0.6 Safari/537.78.2"</span><span class="p">,</span><span class="w"> </span><span class="nt">"uuid"</span><span class="p">:</span><span class="w"> </span><span class="s2">"6246c558-976c-4df6-ba60-eb1a344a17af"</span><span class="w"> </span><span class="p">}</span><span class="w"> </span></code></pre> <p>An action represents an API call by a user. Details of the API call such as timestamp, origin IP address, and user agent are logged in the action object.</p> <p>Simple API calls that do not require asynchronous execution will return immediately with the appropiate HTTP error code and an action object will be created either in <code class="prettyprint">Success</code> or <code class="prettyprint">Failed</code> states. API calls that do require asynchronous execution will return HTTP code <code class="prettyprint">202 Accepted</code> immediately and create an action object in <code class="prettyprint">In progress</code> state, which will change to <code class="prettyprint">Success</code> or <code class="prettyprint">Failed</code> state depending on the outcome of the operation being performed. In both cases the response will include a <code class="prettyprint">X-DockerCloud-Action-URI</code> header with the resource URI of the created action.</p> <h3 id="attributes">Attributes</h3> <table><thead> <tr> <th style="text-align: left">Attribute</th> <th style="text-align: left">Description</th> </tr> </thead><tbody> <tr> <td style="text-align: left">resource_uri</td> <td style="text-align: left">A unique API endpoint that represents the action</td> </tr> <tr> <td style="text-align: left">uuid</td> <td style="text-align: left">A unique identifier for the action generated automatically on creation</td> </tr> <tr> <td style="text-align: left">object</td> <td style="text-align: left">The API object (resource URI) to which the action applies to</td> </tr> <tr> <td style="text-align: left">action</td> <td style="text-align: left">Name of the operation performed/being performed</td> </tr> <tr> <td style="text-align: left">method</td> <td style="text-align: left">HTTP method used to access the API</td> </tr> <tr> <td style="text-align: left">path</td> <td style="text-align: left">HTTP path of the API accessed</td> </tr> <tr> <td style="text-align: left">user</td> <td style="text-align: left">The user authenticated in the request that created the action</td> </tr> <tr> <td style="text-align: left">user_agent</td> <td style="text-align: left">The user agent provided by the client when accessing the API endpoint</td> </tr> <tr> <td style="text-align: left">start_date</td> <td style="text-align: left">Date and time when the API call was performed and the operation started processing</td> </tr> <tr> <td style="text-align: left">end_date</td> <td style="text-align: left">Date and time when the API call finished processing</td> </tr> <tr> <td style="text-align: left">state</td> <td style="text-align: left">State of the operation (see table below)</td> </tr> <tr> <td style="text-align: left">ip</td> <td style="text-align: left">IP address of the user that performed the API call</td> </tr> <tr> <td style="text-align: left">location</td> <td style="text-align: left">Geographic location of the IP address of the user that performed the API call</td> </tr> <tr> <td style="text-align: left">is_user_action</td> <td style="text-align: left">If the action has been triggered by the user</td> </tr> <tr> <td style="text-align: left">can_be_canceled</td> <td style="text-align: left">If the action can be canceled by the user in the middle of its execution</td> </tr> <tr> <td style="text-align: left">can_be_retried</td> <td style="text-align: left">If the action can be retried by the user</td> </tr> </tbody></table> <h3 id="action-states">Action states</h3> <table><thead> <tr> <th style="text-align: left">State</th> <th style="text-align: left">Description</th> </tr> </thead><tbody> <tr> <td style="text-align: left">Pending</td> <td style="text-align: left">The action needed asynchronous execution and it is waiting for an in progress action</td> </tr> <tr> <td style="text-align: left">In progress</td> <td style="text-align: left">The action needed asynchronous execution and is being performed</td> </tr> <tr> <td style="text-align: left">Canceling</td> <td style="text-align: left">The action is being canceled by user request</td> </tr> <tr> <td style="text-align: left">Canceled</td> <td style="text-align: left">The action has been canceled</td> </tr> <tr> <td style="text-align: left">Success</td> <td style="text-align: left">The action was executed successfully</td> </tr> <tr> <td style="text-align: left">Failed</td> <td style="text-align: left">There was an issue when the action was being performed. Check the logs for more information.</td> </tr> </tbody></table> <h2 id="list-all-actions">List all actions</h2> <pre class="highlight python"><code><span class="kn">import</span> <span class="nn">dockercloud</span> <span class="n">actions</span> <span class="o">=</span> <span class="n">dockercloud</span><span class="o">.</span><span class="n">Action</span><span class="o">.</span><span class="nb">list</span><span class="p">()</span> </code></pre> <pre class="highlight go"><code><span class="k">import</span><span class="x"> </span><span class="s">"github.com/docker/go-dockercloud/dockercloud"</span><span class="x"> </span><span class="n">actionList</span><span class="p">,</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">:=</span><span class="x"> </span><span class="n">dockercloud</span><span class="o">.</span><span class="n">ListActions</span><span class="p">()</span><span class="x"> </span><span class="k">if</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">!=</span><span class="x"> </span><span class="no">nil</span><span class="x"> </span><span class="p">{</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">err</span><span class="p">)</span><span class="x"> </span><span class="p">}</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">actionList</span><span class="p">)</span><span class="x"> </span></code></pre> <pre class="highlight http"><code><span class="nf">GET</span> <span class="nn">/api/audit/v1/action/</span> <span class="k">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="na">Host</span><span class="p">:</span> <span class="s">cloud.docker.com</span> <span class="na">Authorization</span><span class="p">:</span> <span class="s">Basic dXNlcm5hbWU6YXBpa2V5</span> <span class="na">Accept</span><span class="p">:</span> <span class="s">application/json</span> </code></pre> <pre class="highlight shell"><code>docker-cloud action ls </code></pre> <p>Lists all actions in chronological order. Returns a list of <code class="prettyprint">Action</code> objects.</p> <h3 id="endpoint-type">Endpoint Type</h3> <p>Available in Docker Cloud’s <strong>REST API</strong></p> <h3 id="http-request">HTTP Request</h3> <p><code class="prettyprint">GET /api/audit/v1/action/</code></p> <h3 id="query-parameters">Query Parameters</h3> <table><thead> <tr> <th style="text-align: left">Parameter</th> <th style="text-align: left">Description</th> </tr> </thead><tbody> <tr> <td style="text-align: left">uuid</td> <td style="text-align: left">Filter by UUID.</td> </tr> <tr> <td style="text-align: left">state</td> <td style="text-align: left">Filter by state. Possible values: <code class="prettyprint">In progress</code>, <code class="prettyprint">Success</code>, <code class="prettyprint">Failed</code></td> </tr> <tr> <td style="text-align: left">start_date</td> <td style="text-align: left">Filter by start date. Valid filtering values are <code class="prettyprint">start_date__gte</code> (after or on the date supplied) and <code class="prettyprint">start_date__lte</code> (before or on the date supplied)</td> </tr> <tr> <td style="text-align: left">end_date</td> <td style="text-align: left">Filter by end date. Valid filtering values are <code class="prettyprint">end_date__gte</code> (after or on the date supplied) and <code class="prettyprint">end_date__lte</code> (before or on the date supplied)</td> </tr> <tr> <td style="text-align: left">object</td> <td style="text-align: left">Filter by resource URI of the related object. This filter can only be combined with ‘include_related’ filter</td> </tr> <tr> <td style="text-align: left">include_related</td> <td style="text-align: left">There is a parent-child relationship between Docker Cloud objects, described in table <code class="prettyprint">Relationships between Docker Cloud objects</code>. If set to 'true’, will include the actions of the related objects to the object specified in “object” filter parameter. Possible values: 'true’ or 'false’</td> </tr> </tbody></table> <h2 id="relationships-between-docker-cloud-objects">Relationships between Docker Cloud objects</h2> <table><thead> <tr> <th style="text-align: left">Object</th> <th style="text-align: left">Relationships</th> </tr> </thead><tbody> <tr> <td style="text-align: left">Container</td> <td style="text-align: left">Container, service, stack (if any)</td> </tr> <tr> <td style="text-align: left">Service</td> <td style="text-align: left">All containers in the service, service, stack (if any)</td> </tr> <tr> <td style="text-align: left">Stack</td> <td style="text-align: left">All services in the stack, all containers in every service in the stack, stack</td> </tr> <tr> <td style="text-align: left">Node</td> <td style="text-align: left">Node, node cluster (if any)</td> </tr> <tr> <td style="text-align: left">Node cluster</td> <td style="text-align: left">All nodes in the cluster, node cluster</td> </tr> </tbody></table> <h2 id="get-an-action-by-uuid">Get an action by UUID</h2> <pre class="highlight python"><code><span class="kn">import</span> <span class="nn">dockercloud</span> <span class="n">action</span> <span class="o">=</span> <span class="n">dockercloud</span><span class="o">.</span><span class="n">Action</span><span class="o">.</span><span class="n">fetch</span><span class="p">(</span><span class="s">"7eaf7fff-882c-4f3d-9a8f-a22317ac00ce"</span><span class="p">)</span> </code></pre> <pre class="highlight go"><code><span class="k">import</span><span class="x"> </span><span class="s">"github.com/docker/go-dockercloud/dockercloud"</span><span class="x"> </span><span class="n">action</span><span class="p">,</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">:=</span><span class="x"> </span><span class="n">dockercloud</span><span class="o">.</span><span class="n">GetAction</span><span class="p">(</span><span class="s">"7eaf7fff-882c-4f3d-9a8f-a22317ac00ce"</span><span class="p">)</span><span class="x"> </span><span class="k">if</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">!=</span><span class="x"> </span><span class="no">nil</span><span class="x"> </span><span class="p">{</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">err</span><span class="p">)</span><span class="x"> </span><span class="p">}</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">action</span><span class="p">)</span><span class="x"> </span></code></pre> <pre class="highlight http"><code><span class="nf">GET</span> <span class="nn">/api/audit/v1/action/7eaf7fff-882c-4f3d-9a8f-a22317ac00ce/</span> <span class="k">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="na">Host</span><span class="p">:</span> <span class="s">cloud.docker.com</span> <span class="na">Authorization</span><span class="p">:</span> <span class="s">Basic dXNlcm5hbWU6YXBpa2V5</span> <span class="na">Accept</span><span class="p">:</span> <span class="s">application/json</span> </code></pre> <pre class="highlight shell"><code>docker-cloud action inspect 7eaf7fff </code></pre> <p>Get all the details of an specific action</p> <h3 id="endpoint-type">Endpoint Type</h3> <p>Available in Docker Cloud’s <strong>REST API</strong></p> <h3 id="http-request">HTTP Request</h3> <p><code class="prettyprint">GET /api/audit/v1/action/(uuid)/</code></p> <h3 id="path-parameters">Path Parameters</h3> <table><thead> <tr> <th style="text-align: left">Parameter</th> <th style="text-align: left">Description</th> </tr> </thead><tbody> <tr> <td style="text-align: left">uuid</td> <td style="text-align: left">The UUID of the action to retrieve</td> </tr> </tbody></table> <h2 id="get-the-logs-of-an-action">Get the logs of an action</h2> <blockquote> <p>Example log line</p> </blockquote> <pre class="highlight json"><code><span class="p">{</span><span class="w"> </span><span class="nt">"type"</span><span class="p">:</span><span class="w"> </span><span class="s2">"log"</span><span class="p">,</span><span class="w"> </span><span class="nt">"log"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Log line from the action"</span><span class="p">,</span><span class="w"> </span><span class="nt">"timestamp"</span><span class="p">:</span><span class="w"> </span><span class="mi">1433779324</span><span class="w"> </span><span class="p">}</span><span class="w"> </span></code></pre> <pre class="highlight python"><code><span class="kn">import</span> <span class="nn">dockercloud</span> <span class="k">def</span> <span class="nf">log_handler</span><span class="p">(</span><span class="n">message</span><span class="p">):</span> <span class="k">print</span> <span class="n">message</span> <span class="n">action</span> <span class="o">=</span> <span class="n">dockercloud</span><span class="o">.</span><span class="n">Action</span><span class="o">.</span><span class="n">fetch</span><span class="p">(</span><span class="s">"7eaf7fff-882c-4f3d-9a8f-a22317ac00ce"</span><span class="p">)</span> <span class="n">action</span><span class="o">.</span><span class="n">logs</span><span class="p">(</span><span class="n">tail</span><span class="o">=</span><span class="mi">300</span><span class="p">,</span> <span class="n">follow</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span> <span class="n">log_handler</span><span class="o">=</span><span class="n">log_handler</span><span class="p">)</span> </code></pre> <pre class="highlight go"><code><span class="k">import</span><span class="x"> </span><span class="s">"github.com/docker/go-dockercloud/dockercloud"</span><span class="x"> </span><span class="n">c</span><span class="x"> </span><span class="o">:=</span><span class="x"> </span><span class="nb">make</span><span class="p">(</span><span class="k">chan</span><span class="x"> </span><span class="n">dockercloud</span><span class="o">.</span><span class="n">Logs</span><span class="p">)</span><span class="x"> </span><span class="n">action</span><span class="p">,</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">:=</span><span class="x"> </span><span class="n">dockercloud</span><span class="o">.</span><span class="n">GetAction</span><span class="p">(</span><span class="s">"7eaf7fff-882c-4f3d-9a8f-a22317ac00ce"</span><span class="p">)</span><span class="x"> </span><span class="k">if</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">!=</span><span class="x"> </span><span class="no">nil</span><span class="x"> </span><span class="p">{</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">err</span><span class="p">)</span><span class="x"> </span><span class="p">}</span><span class="x"> </span><span class="k">go</span><span class="x"> </span><span class="n">action</span><span class="o">.</span><span class="n">GetLogs</span><span class="p">(</span><span class="n">c</span><span class="p">)</span><span class="x"> </span><span class="k">for</span><span class="x"> </span><span class="p">{</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="o"><-</span><span class="n">c</span><span class="p">)</span><span class="x"> </span><span class="p">}</span><span class="x"> </span></code></pre> <pre class="highlight http"><code><span class="nf">GET</span> <span class="nn">/api/audit/v1/action/7eaf7fff-882c-4f3d-9a8f-a22317ac00ce/logs/</span> <span class="k">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="na">Host</span><span class="p">:</span> <span class="s">ws.cloud.docker.com</span> <span class="na">Authorization</span><span class="p">:</span> <span class="s">Basic dXNlcm5hbWU6YXBpa2V5</span> <span class="na">Connection</span><span class="p">:</span> <span class="s">Upgrade</span> <span class="na">Upgrade</span><span class="p">:</span> <span class="s">websocket</span> </code></pre> <pre class="highlight shell"><code>docker-cloud action logs 7eaf7fff-882c-4f3d-9a8f-a22317ac00ce </code></pre> <p>Get the logs of the specified action.</p> <h3 id="endpoint-type">Endpoint Type</h3> <p>Available in Docker Cloud’s <strong>STREAM API</strong></p> <h3 id="http-request">HTTP Request</h3> <p><code class="prettyprint">GET /api/audit/v1/action/(uuid)/logs/</code></p> <h3 id="path-parameters">Path Parameters</h3> <table><thead> <tr> <th style="text-align: left">Parameter</th> <th style="text-align: left">Description</th> </tr> </thead><tbody> <tr> <td style="text-align: left">uuid</td> <td style="text-align: left">The UUID of the action to retrieve logs</td> </tr> </tbody></table> <h3 id="query-parameters">Query Parameters</h3> <table><thead> <tr> <th style="text-align: left">Parameter</th> <th style="text-align: left">Description</th> </tr> </thead><tbody> <tr> <td style="text-align: left">tail</td> <td style="text-align: left">Number of lines to show from the end of the logs (default: <code class="prettyprint">300</code>)</td> </tr> <tr> <td style="text-align: left">follow</td> <td style="text-align: left">Whether to stream logs or close the connection immediately (default: true)</td> </tr> </tbody></table> <h2 id="cancel-an-action">Cancel an action</h2> <pre class="highlight http"><code><span class="nf">POST</span> <span class="nn">/api/audit/v1/action/7eaf7fff-882c-4f3d-9a8f-a22317ac00ce/cancel/</span> <span class="k">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="na">Host</span><span class="p">:</span> <span class="s">cloud.docker.com</span> <span class="na">Authorization</span><span class="p">:</span> <span class="s">Basic dXNlcm5hbWU6YXBpa2V5</span> <span class="na">Accept</span><span class="p">:</span> <span class="s">application/json</span> </code></pre> <pre class="highlight go"><code><span class="k">import</span><span class="x"> </span><span class="s">"github.com/docker/go-dockercloud/dockercloud"</span><span class="x"> </span><span class="n">action</span><span class="p">,</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">:=</span><span class="x"> </span><span class="n">dockercloud</span><span class="o">.</span><span class="n">GetAction</span><span class="p">(</span><span class="s">"7eaf7fff-882c-4f3d-9a8f-a22317ac00ce"</span><span class="p">)</span><span class="x"> </span><span class="k">if</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">!=</span><span class="x"> </span><span class="no">nil</span><span class="x"> </span><span class="p">{</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">err</span><span class="p">)</span><span class="x"> </span><span class="p">}</span><span class="x"> </span><span class="n">action</span><span class="p">,</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">=</span><span class="x"> </span><span class="n">action</span><span class="o">.</span><span class="n">Cancel</span><span class="p">()</span><span class="x"> </span><span class="k">if</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">!=</span><span class="x"> </span><span class="no">nil</span><span class="x"> </span><span class="p">{</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">err</span><span class="p">)</span><span class="x"> </span><span class="p">}</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">action</span><span class="p">)</span><span class="x"> </span></code></pre> <p>Cancels an action in Pending or In progress state.</p> <h3 id="endpoint-type">Endpoint Type</h3> <p>Available in Docker Cloud’s <strong>REST API</strong></p> <h3 id="http-request">HTTP Request</h3> <p><code class="prettyprint">POST /api/audit/v1/action/(uuid)/cancel/</code></p> <h3 id="path-parameters">Path Parameters</h3> <table><thead> <tr> <th style="text-align: left">Parameter</th> <th style="text-align: left">Description</th> </tr> </thead><tbody> <tr> <td style="text-align: left">uuid</td> <td style="text-align: left">The UUID of the action to cancel</td> </tr> </tbody></table> <h2 id="retry-an-action">Retry an action</h2> <pre class="highlight python"><code><span class="kn">import</span> <span class="nn">dockercloud</span> <span class="k">def</span> <span class="nf">log_handler</span><span class="p">(</span><span class="n">message</span><span class="p">):</span> <span class="k">print</span> <span class="n">message</span> <span class="n">action</span> <span class="o">=</span> <span class="n">dockercloud</span><span class="o">.</span><span class="n">Action</span><span class="o">.</span><span class="n">fetch</span><span class="p">(</span><span class="s">"7eaf7fff-882c-4f3d-9a8f-a22317ac00ce"</span><span class="p">)</span> <span class="n">action</span><span class="o">.</span><span class="n">logs</span><span class="p">(</span><span class="n">tail</span><span class="o">=</span><span class="mi">300</span><span class="p">,</span> <span class="n">follow</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span> <span class="n">log_handler</span><span class="o">=</span><span class="n">log_handler</span><span class="p">)</span> </code></pre> <pre class="highlight http"><code><span class="nf">POST</span> <span class="nn">/api/audit/v1/action/7eaf7fff-882c-4f3d-9a8f-a22317ac00ce/retry/</span> <span class="k">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="na">Host</span><span class="p">:</span> <span class="s">cloud.docker.com</span> <span class="na">Authorization</span><span class="p">:</span> <span class="s">Basic dXNlcm5hbWU6YXBpa2V5</span> <span class="na">Accept</span><span class="p">:</span> <span class="s">application/json</span> </code></pre> <pre class="highlight go"><code><span class="k">import</span><span class="x"> </span><span class="s">"github.com/docker/go-dockercloud/dockercloud"</span><span class="x"> </span><span class="n">action</span><span class="p">,</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">:=</span><span class="x"> </span><span class="n">dockercloud</span><span class="o">.</span><span class="n">GetAction</span><span class="p">(</span><span class="s">"7eaf7fff-882c-4f3d-9a8f-a22317ac00ce"</span><span class="p">)</span><span class="x"> </span><span class="k">if</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">!=</span><span class="x"> </span><span class="no">nil</span><span class="x"> </span><span class="p">{</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">err</span><span class="p">)</span><span class="x"> </span><span class="p">}</span><span class="x"> </span><span class="n">action</span><span class="p">,</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">=</span><span class="x"> </span><span class="n">action</span><span class="o">.</span><span class="n">Retry</span><span class="p">()</span><span class="x"> </span><span class="k">if</span><span class="x"> </span><span class="n">err</span><span class="x"> </span><span class="o">!=</span><span class="x"> </span><span class="no">nil</span><span class="x"> </span><span class="p">{</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">err</span><span class="p">)</span><span class="x"> </span><span class="p">}</span><span class="x"> </span><span class="n">log</span><span class="o">.</span><span class="n">Println</span><span class="p">(</span><span class="n">action</span><span class="p">)</span><span class="x"> </span></code></pre> <pre class="highlight shell"><code>docker-cloud action logs 7eaf7fff-882c-4f3d-9a8f-a22317ac00ce </code></pre> <p>Retries an action in Success, Failed or Canceled state.</p> <h3 id="endpoint-type">Endpoint Type</h3> <p>Available in Docker Cloud’s <strong>REST API</strong></p> <h3 id="http-request">HTTP Request</h3> <p><code class="prettyprint">POST /api/audit/v1/action/(uuid)/retry/</code></p> <h3 id="path-parameters">Path Parameters</h3> <table><thead> <tr> <th style="text-align: left">Parameter</th> <th style="text-align: left">Description</th> </tr> </thead><tbody> <tr> <td style="text-align: left">uuid</td> <td style="text-align: left">The UUID of the action to retry</td> </tr> </tbody></table> </div> <div class="dark-box"> </div> </div> </body> </html>