docs/v2/apps/updating_an_app.html
<!DOCTYPE html>
<html>
<head>
<title>Apps API</title>
<meta charset="utf-8">
<link id="bootstrapcss" rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" />
<script>
if( "file:" == document.location.protocol ) {
var csslink = document.getElementById("bootstrapcss");
csslink.href = "http://" + csslink.href.replace(/.*\/\//, "");
}
</script>
<style>
p {
padding: 15px;
font-size: 130%;
}
pre {
white-space: pre;
}
td.required .name:after {
float: right;
content: " required";
font-weight: normal;
color: #F08080;
}
td.experimental:after {
float: right;
content: " experimental";
font-weight: normal;
color: #FFA500;
padding: 2px;
}
tr.deprecated td:first-child:before {
content: "deprecated: ";
font-weight: bold;
color: gray;
}
tr.deprecated span, tr.deprecated ul {
text-decoration: line-through;
color: gray;
}
tr.readonly .name:after {
float: right;
content: " read-only";
font-weight: normal;
}
tr.readonly {
color: grey;
}
table ul {
padding-left: 1.2em;
}
</style>
</head>
<body>
<div class="container">
<h1>Apps API</h1>
<div class="article">
<h2>Updating an App</h2>
<h3>PUT /v2/apps/:guid</h3>
<h3>Request</h3>
<h4>Route</h4>
<pre class="request route highlight">PUT /v2/apps/ddd7e3cd-1b2e-4154-a109-0b4e7ba14447</pre>
<h4>Parameters</h4>
<table class="parameters table table-striped table-bordered table-condensed">
<thead>
<tr>
<th>Name</th>
<th>Description</th>
<th>Valid Values</th>
<th>Example Values</th>
</tr>
</thead>
<tbody>
<tr class="">
<td class=" ">
<span class="name">guid</span>
</td>
<td>
<span class="description">The guid of the App</span>
</td>
<td>
<ul class="valid_values">
</ul>
</td>
<td>
<ul class="example_values">
</ul>
</td>
</tr>
</tbody>
</table>
<h4>Body</h4>
<table class="fields table table-striped table-bordered table-condensed">
<thead>
<tr>
<th>Name</th>
<th>Description</th>
<th>Default</th>
<th>Valid Values</th>
<th>Example Values</th>
</tr>
</thead>
<tbody>
<tr class=" ">
<td class=" ">
<span class="name">name</span>
</td>
<td>
<span class="description">The name of the app.</span>
</td>
<td>
<span class="default"></span>
</td>
<td>
<ul class="valid_values">
</ul>
</td>
<td>
<ul class="example_values">
<li>my_super_app</li>
</ul>
</td>
</tr>
<tr class=" ">
<td class=" ">
<span class="name">memory</span>
</td>
<td>
<span class="description">The amount of memory each instance should have. In megabytes.</span>
</td>
<td>
<span class="default"></span>
</td>
<td>
<ul class="valid_values">
</ul>
</td>
<td>
<ul class="example_values">
<li>1024</li>
<li>512</li>
</ul>
</td>
</tr>
<tr class=" ">
<td class=" ">
<span class="name">instances</span>
</td>
<td>
<span class="description">The number of instances of the app to run. To ensure optimal availability, ensure there are at least 2 instances.</span>
</td>
<td>
<span class="default"></span>
</td>
<td>
<ul class="valid_values">
</ul>
</td>
<td>
<ul class="example_values">
<li>2</li>
<li>6</li>
<li>10</li>
</ul>
</td>
</tr>
<tr class=" ">
<td class=" ">
<span class="name">disk_quota</span>
</td>
<td>
<span class="description">The maximum amount of disk available to an instance of an app. In megabytes.</span>
</td>
<td>
<span class="default"></span>
</td>
<td>
<ul class="valid_values">
</ul>
</td>
<td>
<ul class="example_values">
<li>1204</li>
<li>2048</li>
</ul>
</td>
</tr>
<tr class=" ">
<td class=" ">
<span class="name">space_guid</span>
</td>
<td>
<span class="description">The guid of the associated space.</span>
</td>
<td>
<span class="default"></span>
</td>
<td>
<ul class="valid_values">
</ul>
</td>
<td>
<ul class="example_values">
<li>guid-cc2b0e84-e72d-4a34-bd27-7a3bf6a6c19d</li>
</ul>
</td>
</tr>
<tr class=" ">
<td class=" ">
<span class="name">stack_guid</span>
</td>
<td>
<span class="description">The guid of the associated stack.</span>
</td>
<td>
<span class="default">Uses the default system stack.</span>
</td>
<td>
<ul class="valid_values">
</ul>
</td>
<td>
<ul class="example_values">
<li>guid-9812ad4f-ba6f-4371-a460-d86e9ade4520</li>
</ul>
</td>
</tr>
<tr class=" ">
<td class=" ">
<span class="name">state</span>
</td>
<td>
<span class="description">The current desired state of the app. One of STOPPED or STARTED.</span>
</td>
<td>
<span class="default">STOPPED</span>
</td>
<td>
<ul class="valid_values">
<li>STOPPED</li>
<li>STARTED</li>
</ul>
</td>
<td>
<ul class="example_values">
</ul>
</td>
</tr>
<tr class=" ">
<td class=" ">
<span class="name">command</span>
</td>
<td>
<span class="description">The command to start an app after it is staged, maximum length: 4096 (e.g. 'rails s -p $PORT' or 'java com.org.Server $PORT').</span>
</td>
<td>
<span class="default"></span>
</td>
<td>
<ul class="valid_values">
</ul>
</td>
<td>
<ul class="example_values">
</ul>
</td>
</tr>
<tr class=" ">
<td class=" ">
<span class="name">buildpack</span>
</td>
<td>
<span class="description">Buildpack to build the app. 3 options: a) Blank means autodetection; b) A Git Url pointing to a buildpack; c) Name of an installed buildpack.</span>
</td>
<td>
<span class="default"></span>
</td>
<td>
<ul class="valid_values">
</ul>
</td>
<td>
<ul class="example_values">
<li></li>
<li>https://github.com/virtualstaticvoid/heroku-buildpack-r.git</li>
<li>an_example_installed_buildpack</li>
</ul>
</td>
</tr>
<tr class=" ">
<td class=" ">
<span class="name">health_check_http_endpoint</span>
</td>
<td>
<span class="description">Endpoint called to determine if the app is healthy.</span>
</td>
<td>
<span class="default"></span>
</td>
<td>
<td>
<ul class="example_values">
<li>/health</li>
</ul>
</td>
</tr>
<tr class=" ">
<td class=" ">
<span class="name">health_check_type</span>
</td>
<td>
<span class="description">Type of health check to perform. 'none' is deprecated and an alias to 'process'.</span>
</td>
<td>
<span class="default">port</span>
</td>
<td>
<ul class="valid_values">
<li>http (Diego only)</li>
<li>port</li>
<li>process</li>
<li>none</li>
</ul>
</td>
<td>
<ul class="example_values">
</ul>
</td>
</tr>
<tr class=" ">
<td class=" ">
<span class="name">health_check_timeout</span>
</td>
<td>
<span class="description">Timeout in seconds for health checking of an staged app when starting up</span>
</td>
<td>
<span class="default"></span>
</td>
<td>
<ul class="valid_values">
</ul>
</td>
<td>
<ul class="example_values">
</ul>
</td>
</tr>
<tr class=" ">
<td class=" ">
<span class="name">diego</span>
</td>
<td>
<span class="description">Use diego to stage and to run when available</span>
</td>
<td>
<span class="default">false</span>
</td>
<td>
<ul class="valid_values">
<li>true</li>
<li>false</li>
</ul>
</td>
<td>
<ul class="example_values">
</ul>
</td>
</tr>
<tr class=" ">
<td class=" ">
<span class="name">enable_ssh</span>
</td>
<td>
<span class="description">Enable SSHing into the app. Supported for Diego only.</span>
</td>
<td>
<span class="default">false if SSH is disabled globally or on the space, true if enabled for both</span>
</td>
<td>
<ul class="valid_values">
<li>true</li>
<li>false</li>
</ul>
</td>
<td>
<ul class="example_values">
</ul>
</td>
</tr>
<tr class=" ">
<td class=" ">
<span class="name">docker_image</span>
</td>
<td>
<span class="description">Name of the Docker image containing the app. The "diego_docker" feature flag must be enabled in order to create Docker image apps.</span>
</td>
<td>
<span class="default"></span>
</td>
<td>
<ul class="valid_values">
</ul>
</td>
<td>
<ul class="example_values">
<li>cloudfoundry/diego-docker-app</li>
<li>registry.example.com:5000/user/repository/tag</li>
</ul>
</td>
</tr>
<tr class=" ">
<td>
<span class="name">docker_credentials</span>
</td>
<td>
<span class="description">Docker credentials for pulling docker image.</span>
</td>
<td>
<span class="default">{}</span>
</td>
<td>
<ul class="valid_values">
</ul>
</td>
<td>
<ul class="example_values">
<li>{"username": "user", "password": "password"}</li>
</ul>
</td>
</tr>
<tr class=" ">
<td class=" ">
<span class="name">environment_json</span>
</td>
<td>
<span class="description">Key/value pairs of all the environment variables to run in your app. Does not include any system or service variables.</span>
</td>
<td>
<span class="default"></span>
</td>
<td>
<ul class="valid_values">
</ul>
</td>
<td>
<ul class="example_values">
</ul>
</td>
</tr>
<tr class="deprecated ">
<td class=" ">
<span class="name">production</span>
</td>
<td>
<span class="description">Deprecated.</span>
</td>
<td>
<span class="default">true</span>
</td>
<td>
<ul class="valid_values">
<li>true</li>
<li>false</li>
</ul>
</td>
<td>
<ul class="example_values">
</ul>
</td>
</tr>
<tr class="deprecated ">
<td class=" ">
<span class="name">console</span>
</td>
<td>
<span class="description">Open the console port for the app (at $CONSOLE_PORT).</span>
</td>
<td>
<span class="default">false</span>
</td>
<td>
<ul class="valid_values">
<li>true</li>
<li>false</li>
</ul>
</td>
<td>
<ul class="example_values">
</ul>
</td>
</tr>
<tr class="deprecated ">
<td class=" ">
<span class="name">debug</span>
</td>
<td>
<span class="description">Open the debug port for the app (at $DEBUG_PORT).</span>
</td>
<td>
<span class="default">false</span>
</td>
<td>
<ul class="valid_values">
<li>true</li>
<li>false</li>
</ul>
</td>
<td>
<ul class="example_values">
</ul>
</td>
</tr>
<tr class=" ">
<td class=" ">
<span class="name">staging_failed_reason</span>
</td>
<td>
<span class="description">Reason for application staging failures</span>
</td>
<td>
<span class="default"></span>
</td>
<td>
<ul class="valid_values">
</ul>
</td>
<td>
<ul class="example_values">
<li>StagingError</li>
<li>StagingTimeExpired</li>
</ul>
</td>
</tr>
<tr class=" ">
<td class=" ">
<span class="name">staging_failed_description</span>
</td>
<td>
<span class="description">Detailed description for the staging_failed_reason</span>
</td>
<td>
<span class="default"></span>
</td>
<td>
<ul class="valid_values">
</ul>
</td>
<td>
<ul class="example_values">
<li>An app was not successfully detected by any available buildpack</li>
</ul>
</td>
</tr>
<tr class=" ">
<td class=" ">
<span class="name">ports</span>
</td>
<td>
<span class="description">Ports on which application may listen. Overwrites previously configured ports. Ports must be in range 1024-65535. Supported for Diego only.</span>
</td>
<td>
<span class="default"></span>
</td>
<td>
<ul class="valid_values">
</ul>
</td>
<td>
<ul class="example_values">
<li>[5222, 8080]</li>
<li>[1056]</li>
</ul>
</td>
</tr>
</tbody>
</table>
<pre class="request body">{
"name": "new_name"
}</pre>
<h4>Headers</h4>
<pre class="request headers">Authorization: bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoidWFhLWlkLTQ0MiIsImVtYWlsIjoiZW1haWwtMzA0QHNvbWVkb21haW4uY29tIiwic2NvcGUiOlsiY2xvdWRfY29udHJvbGxlci5hZG1pbiJdLCJhdWQiOlsiY2xvdWRfY29udHJvbGxlciJdLCJleHAiOjE0NjYwMDg5MDV9.0pUmeMmgSebhUD1Fki90XJBztU2-ikxZBk6dKZo2_VM
Host: example.org
Content-Type: application/json
Cookie: </pre>
<h4>cURL</h4>
<pre class="request curl">curl "https://api.[your-domain.com]/v2/apps/ddd7e3cd-1b2e-4154-a109-0b4e7ba14447" -d '{
"name": "new_name"
}' -X PUT \
-H "Authorization: bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoidWFhLWlkLTQ0MiIsImVtYWlsIjoiZW1haWwtMzA0QHNvbWVkb21haW4uY29tIiwic2NvcGUiOlsiY2xvdWRfY29udHJvbGxlci5hZG1pbiJdLCJhdWQiOlsiY2xvdWRfY29udHJvbGxlciJdLCJleHAiOjE0NjYwMDg5MDV9.0pUmeMmgSebhUD1Fki90XJBztU2-ikxZBk6dKZo2_VM" \
-H "Host: example.org" \
-H "Content-Type: application/json" \
-H "Cookie: "</pre>
<h3>Response</h3>
<h4>Status</h4>
<pre class="response status">201 Created</pre>
<h4>Body</h4>
<pre class="response body">{
"metadata": {
"guid": "ddd7e3cd-1b2e-4154-a109-0b4e7ba14447",
"url": "/v2/apps/ddd7e3cd-1b2e-4154-a109-0b4e7ba14447",
"created_at": "2016-06-08T16:41:45Z",
"updated_at": "2016-06-08T16:41:45Z"
},
"entity": {
"name": "new_name",
"production": false,
"space_guid": "052b770d-6921-4fa9-b16e-34b2e5bdd4b1",
"stack_guid": "8438bb72-0f6e-40da-bcab-338e1bb113cf",
"buildpack": null,
"detected_buildpack": null,
"detected_buildpack_guid": null,
"environment_json": null,
"memory": 1024,
"instances": 1,
"disk_quota": 1024,
"state": "STOPPED",
"version": "d1cfb4a3-3697-4b2a-ac7e-97999c359a3a",
"command": null,
"console": false,
"debug": null,
"staging_task_id": null,
"package_state": "PENDING",
"health_check_http_endpoint": "",
"health_check_type": "port",
"health_check_timeout": null,
"staging_failed_reason": null,
"staging_failed_description": null,
"diego": false,
"docker_image": null,
"docker_credentials": {
"username": null,
"password": null
},
"package_updated_at": "2016-06-08T16:41:45Z",
"detected_start_command": "",
"enable_ssh": true,
"ports": null,
"space_url": "/v2/spaces/052b770d-6921-4fa9-b16e-34b2e5bdd4b1",
"stack_url": "/v2/stacks/8438bb72-0f6e-40da-bcab-338e1bb113cf",
"routes_url": "/v2/apps/ddd7e3cd-1b2e-4154-a109-0b4e7ba14447/routes",
"events_url": "/v2/apps/ddd7e3cd-1b2e-4154-a109-0b4e7ba14447/events",
"service_bindings_url": "/v2/apps/ddd7e3cd-1b2e-4154-a109-0b4e7ba14447/service_bindings",
"route_mappings_url": "/v2/apps/ddd7e3cd-1b2e-4154-a109-0b4e7ba14447/route_mappings"
}
}</pre>
<h4>Headers</h4>
<pre class="response headers">Content-Type: application/json;charset=utf-8
X-VCAP-Request-ID: ce92f064-0018-4ff3-aead-ec2acef6bee9
Content-Length: 1625
X-Content-Type-Options: nosniff</pre>
</div>
</div>
</body>
</html>