This is an archive of our API documentation. Our new API docs can be found at https://developer.statuspage.io
Full API and Integration Documentation

Component groups

Component groups provide a way to organize components. This endpoint can be used to list, create, update or delete component groups. When a group is deleted, its child components will be orphaned. Note: A group cannot be empty, so if all the child components are deleted, the group will be deleted automatically. Another implication of this is that components must be created before their groups, when a group is created it will require a list of component IDs.

Get a list of all component groups
ENDPOINT
  GET /pages/[page_id]/components-groups.json

SAMPLE CALL
  curl https://api.statuspage.io/v1/pages/qfn30z5r6s5h/component-groups.json \
    -H "Authorization: OAuth 2a7b9d4aac30956d537ac76850f4d78de30994703680056cc103862d53cf8074"

RESPONSE CODES
  200 - Successful call

SAMPLE RESPONSE
  [
    {
      "created_at": "2013-03-05T20:50:42Z",
      "id": "ftgks51sfs2d",
      "name": "API",
      "description": "Lorem",
      "position": 1,
      "updated_at": "2013-03-05T22:39:02Z",
      "components": [
        "993vgplshj12"
      ]
    }
  ]
Create a component group
ENDPOINT
  POST /pages/[page_id]/component-groups.json

ATTRIBUTES
  component_group[name] - The name of the component group
  component_group[components] - An array of component ids to be added to this group

SAMPLE CALL
  curl https://api.statuspage.io/v1/pages/qfn30z5r6s5h/component-groups.json \
    -H "Authorization: OAuth 2a7b9d4aac30956d537ac76850f4d78de30994703680056cc103862d53cf8074" \
    -X POST \
    -d "component_group[name]=Widget API" \
    -d "component_group[description]=The API to access all of the widgets" \
    -d "component_group[components]=[993vgplshj12]"

RESPONSE CODES
  201 - Successful call
  422 - Validation failed (see errors in response body)

SAMPLE RESPONSE
  {
    "created_at": "2013-03-05T20:50:42Z",
    "id": "ftgks51sfs2d",
    "name": "Widgets API",
    "position": 2,
    "updated_at": "2013-03-05T22:44:21Z",
    "components": [
      "993vgplshj12"
    ]
  }
Update a component group
ENDPOINT
  PUT /pages/[page_id]/components-groups/[component_group_id].json

MUTABLE ATTRIBUTES
  component_group[name] - The name of the component
  component_group[components] - A list of IDs of the components belonging to this group

SAMPLE CALL
  curl https://api.statuspage.io/v1/pages/qfn30z5r6s5h/components/ftgks51sfs2d.json \
    -H "Authorization: OAuth 2a7b9d4aac30956d537ac76850f4d78de30994703680056cc103862d53cf8074" \
    -X PATCH \
    -d "component_group[name]=My new name"

RESPONSE CODES
  200 - Successful call
  422 - Validation failed (see errors in response body)

SAMPLE RESPONSE
  {
    "created_at": "2013-03-05T20:50:42Z",
    "id": "ftgks51sfs2d",
    "name": "My new name",
    "position": 1,
    "updated_at": "2013-03-05T22:44:21Z",
    "components": [
      "993vgplshj12"
    ]
  }
Delete a component group
ENDPOINT
  DELETE /pages/[page_id]/component-groups/[component_group_id].json

SAMPLE CALL
  curl https://api.statuspage.io/v1/pages/qfn30z5r6s5h/component-groups/ftgks51sfs2d.json \
    -H "Authorization: OAuth 2a7b9d4aac30956d537ac76850f4d78de30994703680056cc103862d53cf8074" \
    -X DELETE
    
RESPONSE CODES
  204 - Successful delete