11.17. Scale Down Application

Description

Scale down an application that was created with the scaling function enabled.

Method and URL Structure

Method Resource URL
POST /broker/rest/application/:id/events

Request Parameters

Name Description Required Default
event Event Yes

See Section A.6, “Applications” for more information about the valid options applicable to these request parameters.
Request

{
  "event": "scale-down"
}

cURL Command Example

$ curl -X POST https://openshift.redhat.com/broker/rest/application/534253991015616165707776/events --user user@example.com --data-urlencode event=scale-down

JSON Response

The API returns the application resource. Unnecessary information and related resource links returned by the API have been removed for brevity. See Chapter 11, Applications for more information on all application parameters.

{
  "api_version": 1.6,
  "data": {
    "aliases": [

    ],
    "app_url": "http://myapp-mydomain.rhcloud.com/",
    "build_job_url": null,
    "building_app": null,
    "building_with": null,
    "creation_time": "2013-08-21T01:58:41Z",
    "domain_id": "mydomain",
    "embedded": {
      "haproxy-1.4": {
      }
    },
    "framework": "ruby-2.0",
    "gear_count": 1,
    "gear_profile": "small",
    "git_url": "ssh://534253991015616165707776@myapp-mydomain.rhcloud.com/~/git/myapp.git/",
    "health_check_path": "health",
    "id": "534253991015616165707776",
    "initial_git_url": null,
    "members": [
      {
        "explicit_role": null,
        "from": [
          {
            "type": "domain",
            "role": "admin"
          }
        ],
        "id": "5213a826e499b22f15000001",
        "name": "user@example.com",
        "owner": true,
        "role": "admin",
        "type": "user"
      }
    ],
    "name": "myapp",
    "scalable": true,
    "ssh_url": "ssh://534253991015616165707776@myapp-mydomain.rhcloud.com"
  },
  "messages": [
    {
      "exit_code": 0,
      "field": null,
      "severity": "info",
      "text": "Application myapp has scaled down"
    }
  ],
  "status": "ok",
  "supported_api_versions": [
    1.0,
    1.1,
    1.2,
    1.3,
    1.4,
    1.5,
    1.6
  ],
  "type": "application",
  "version": "1.6"
}

The API returns an error message if an application cannot be scaled down any further, as shown in the sample response output below.
{
    "status": "unprocessable_entity",
    "messages": [
        {
            "field": null,
            "text": "Failed to add event scale-down to application myapp due to: Cannot scale below minimum gear requirements for group '1'",
            "severity": "error",
            "exit_code": 1
        }
    ]
}