Home
Version 3
Apps (Experimental) API

Apps (Experimental) API

Create a docker app

POST /v3/apps

Creates an app in v3 of the Cloud Controller API. Apps must have a valid space guid for creation, which is namespaced under {"relationships": {"space": "your-space-guid"} }. See the example below for more information.

Request

Route

POST /v3/apps

Body

Name Description Default Valid Values Example Values
name Name of the App
relationships[space][guid] Guid for a particular space
environment_variables Environment variables to be used for the App when running
lifecycle Lifecycle to be used when creating the app. Note: If no lifecycle is provided, lifecycle type defaults to buildpack. Data is a required field in lifecycle
{"name":"my_app","environment_variables":{"open":"source"},"lifecycle":{"type":"docker","data":{}},"relationships":{"space":{"guid":"5f35780c-6564-4069-8e3f-db7e9be06f7c"}}}

Headers

Authorization: bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoidWFhLWlkLTE3MyIsImVtYWlsIjoiZW1haWwtMTExQHNvbWVkb21haW4uY29tIiwic2NvcGUiOlsiY2xvdWRfY29udHJvbGxlci5yZWFkIiwiY2xvdWRfY29udHJvbGxlci53cml0ZSJdLCJhdWQiOlsiY2xvdWRfY29udHJvbGxlciJdLCJleHAiOjE0NTE0MTM2ODR9.hGyyeAWzpyjvsTNkdsL9WRbt7aynluxFMBFdA6kUCug
Content-Type: application/json
Host: example.org
Cookie: 

cURL

curl "https://api.[your-domain.com]/v3/apps" -d '{"name":"my_app","environment_variables":{"open":"source"},"lifecycle":{"type":"docker","data":{}},"relationships":{"space":{"guid":"5f35780c-6564-4069-8e3f-db7e9be06f7c"}}}' -X POST \
	-H "Authorization: bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoidWFhLWlkLTE3MyIsImVtYWlsIjoiZW1haWwtMTExQHNvbWVkb21haW4uY29tIiwic2NvcGUiOlsiY2xvdWRfY29udHJvbGxlci5yZWFkIiwiY2xvdWRfY29udHJvbGxlci53cml0ZSJdLCJhdWQiOlsiY2xvdWRfY29udHJvbGxlciJdLCJleHAiOjE0NTE0MTM2ODR9.hGyyeAWzpyjvsTNkdsL9WRbt7aynluxFMBFdA6kUCug" \
	-H "Content-Type: application/json" \
	-H "Host: example.org" \
	-H "Cookie: "

Response

Status

201 Created

Body

{
  "guid": "3d70c45c-85bb-4a54-bfde-f9a2a20e4021",
  "name": "my_app",
  "desired_state": "STOPPED",
  "total_desired_instances": 0,
  "created_at": "2015-12-22T18:28:04Z",
  "updated_at": null,
  "lifecycle": {
    "type": "docker",
    "data": {

    }
  },
  "environment_variables": {
    "open": "source"
  },
  "links": {
    "self": {
      "href": "/v3/apps/3d70c45c-85bb-4a54-bfde-f9a2a20e4021"
    },
    "space": {
      "href": "/v2/spaces/5f35780c-6564-4069-8e3f-db7e9be06f7c"
    },
    "processes": {
      "href": "/v3/apps/3d70c45c-85bb-4a54-bfde-f9a2a20e4021/processes"
    },
    "routes": {
      "href": "/v3/apps/3d70c45c-85bb-4a54-bfde-f9a2a20e4021/routes"
    },
    "packages": {
      "href": "/v3/apps/3d70c45c-85bb-4a54-bfde-f9a2a20e4021/packages"
    },
    "droplets": {
      "href": "/v3/apps/3d70c45c-85bb-4a54-bfde-f9a2a20e4021/droplets"
    },
    "start": {
      "href": "/v3/apps/3d70c45c-85bb-4a54-bfde-f9a2a20e4021/start",
      "method": "PUT"
    },
    "stop": {
      "href": "/v3/apps/3d70c45c-85bb-4a54-bfde-f9a2a20e4021/stop",
      "method": "PUT"
    },
    "assign_current_droplet": {
      "href": "/v3/apps/3d70c45c-85bb-4a54-bfde-f9a2a20e4021/current_droplet",
      "method": "PUT"
    }
  }
}

Headers

X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Type: application/json; charset=utf-8
X-Runtime: 0.033560
Content-Length: 1248