Full API and Integration Documentation

Page Profile

Page access users allow you to limit people who can see your status page via a login. It also allows you to limit the components and metrics each status page visitor can see, customizing the status page for their needs.

You will need Statuspage to enable access control for your status page before these API endpoints have any effect on your status page.

Retrieve a list of users
ENDPOINT
  GET /pages/[page_id]/page_access_users.json

MUTABLE ATTRIBUTES
    email - Filter the returned list of users by email address (users must have assigned email addresses)

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


RESPONSE CODES
  200 - Successful call

SAMPLE RESPONSE
  [
    {
      "created_at":"2014-01-30T20:40:43Z",
      "external_login":"b7871839590b41df75b5e9217031dd46",
      "email": null,
      "page_id":"qfn30z5r6s5h",
      "id":"fmzfm7ch1qps"
    }, ...
  ]

Create a user who can view your status page
ENDPOINT
  POST /pages/[page_id]/page_access_users.json

MUTABLE ATTRIBUTES
  page_access_user[external_login] - A concatenated (and possibly hashed) string of login parameters, organized alphabetically by field name.
  page_access_user[email] - The email for Statuspage to use to communicate with the user (required if Statuspage manages passwords for you)
  page_access_user[component_ids][] - Array of component ids that the created user will ba able to view
  page_access_user[metric_ids][] - Array of metric ids that the created user will ba able to view
  page_access_user[page_access_group_ids][] - Array of PageAccessGroups (identified by code) that the created user will be a member of
  page_access_user[subscribe_to_components] - A value of 'true' will subscribe the user to notifications for incidents associated with components they can see, this value is optional and defaults to false

SAMPLE CALL
  curl https://api.statuspage.io/v1/pages/qfn30z5r6s5h/page_access_users.json \
    -H "Authorization: OAuth 2a7b9d4aac30956d537ac76850f4d78de30994703680056cc103862d53cf8074" \
    -X POST \
    -d "page_access_user[external_login]=b7871839590b41df75b5e9217031dd46&page_access_user[email]=test@example.com&page_access_user[component_ids][]=ftgks51sfs2d&page_access_user[component_ids][]=er7622gks1tru"


RESPONSE CODES
  201 - Page access user successfully created.

SAMPLE RESPONSE
  {
    "created_at":"2014-01-30T20:40:43Z",
    "external_login":"b7871839590b41df75b5e9217031dd46",
    "email": null,
    "page_id":"qfn30z5r6s5h",
    "id":"fmzfm7ch1qps"
  }

Change information for a user who can view your status page
ENDPOINT
  PATCH /pages/[page_id]/page_access_users/[page_access_user_id].json

MUTABLE ATTRIBUTES
  page_access_user[external_login] - A concatenated (and possibly hashed) string of login parameters, organized alphabetically by field name.
  page_access_user[email] - The email for Statuspage to use to communicate with the user (required if Statuspage manages passwords for you)
  page_access_user[component_ids][] - Array of component ids that the created user will ba able to view
  page_access_user[metric_ids][] - Array of metric ids that the created user will ba able to view
  page_access_user[page_access_group_ids][] - Array of PageAccessGroups (identified by code) that the created user will be a member of

SAMPLE CALL
  curl https://api.statuspage.io/v1/pages/qfn30z5r6s5h/page_access_user/fmzfm7ch1qps.json \
    -H "Authorization: OAuth 2a7b9d4aac30956d537ac76850f4d78de30994703680056cc103862d53cf8074" \
    -X PATCH \
    -d "page_access_user[external_login]=b7871839590b41df75b5e9217031dd46&page_access_user[email]=test@example.com&page_access_user[component_ids][]=ftgks51sfs2d&page_access_user[component_ids][]=er7622gks1tru"


RESPONSE CODES
  200 - Successful call

SAMPLE RESPONSE
  {
    "created_at":"2014-01-30T20:40:43Z",
    "external_login":"bd18bb3819032c7d5b727ade24fff24a",
    "email": null,
    "page_id":"qfn30z5r6s5h",
    "id":"fmzfm7ch1qps"
  }

Delete a user who could access your status page
ENDPOINT
  DELETE /pages/[page_id]/page_access_users/[page_access_user_id].json

SAMPLE CALL
  curl https://api.statuspage.io/v1/pages/qfn30z5r6s5h/page_access_users/fmzfm7ch1qps.json \
    -H "Authorization: OAuth 2a7b9d4aac30956d537ac76850f4d78de30994703680056cc103862d53cf8074" \
    -X DELETE


RESPONSE CODES
  200 - Successful call

SAMPLE RESPONSE
  {
    "created_at":"2014-01-30T20:40:43Z",
    "external_login":"bd18bb3819032c7d5b727ade24fff24a",
    "email": null,
    "page_id":"qfn30z5r6s5h",
    "id":"fmzfm7ch1qps"
  }

Assign components to a page access user (overwrites existing components)
ENDPOINT
  POST /pages/[page_id]/page_access_users/[page_access_user_id]/components.json

MUTABLE ATTRIBUTES
  component_ids[] - Array of component ids that the user will ba able to view

SAMPLE CALL
  curl https://api.statuspage.io/v1/pages/qfn30z5r6s5h/page_access_users/fmzfm7ch1qps/components.json \
    -H "Authorization: OAuth 2a7b9d4aac30956d537ac76850f4d78de30994703680056cc103862d53cf8074" \
    -X POST \
    -d "component_ids[]=ftgks51sfs2d&component_ids[]=er7622gks1tru"


RESPONSE CODES
  200 - Successful call

SAMPLE RESPONSE
  {
    "created_at":"2014-01-30T20:40:43Z",
    "external_login":"bd18bb3819032c7d5b727ade24fff24a",
    "email": null,
    "page_id":"qfn30z5r6s5h",
    "id":"fmzfm7ch1qps"
  }

Assign components to a page access user (adds new components to a user)
ENDPOINT
  PATCH /pages/[page_id]/page_access_users/[page_access_user_id]/components.json

MUTABLE ATTRIBUTES
  component_ids[] - Array of component ids that the user will ba able to view

SAMPLE CALL
  curl https://api.statuspage.io/v1/pages/qfn30z5r6s5h/page_access_users/fmzfm7ch1qps/components.json \
    -H "Authorization: OAuth 2a7b9d4aac30956d537ac76850f4d78de30994703680056cc103862d53cf8074" \
    -X PATCH \
    -d "component_ids[]=ftgks51sfs2d&component_ids[]=er7622gks1tru"


RESPONSE CODES
  200 - Successful call

SAMPLE RESPONSE
  {
    "created_at":"2014-01-30T20:40:43Z",
    "external_login":"bd18bb3819032c7d5b727ade24fff24a",
    "email": null,
    "page_id":"qfn30z5r6s5h",
    "id":"fmzfm7ch1qps"
  }

Remove all components from a page access user
ENDPOINT
  DELETE /pages/[page_id]/page_access_users/[page_access_user_id]/components.json

SAMPLE CALL
  curl https://api.statuspage.io/v1/pages/qfn30z5r6s5h/page_access_users/fmzfm7ch1qps/components.json \
    -H "Authorization: OAuth 2a7b9d4aac30956d537ac76850f4d78de30994703680056cc103862d53cf8074" \
    -X DELETE

RESPONSE CODES
  200 - Successful call

SAMPLE RESPONSE
  {
    "created_at":"2014-01-30T20:40:43Z",
    "external_login":"bd18bb3819032c7d5b727ade24fff24a",
    "email": null,
    "page_id":"qfn30z5r6s5h",
    "id":"fmzfm7ch1qps"
  }

Remove a component from a page access user

ENDPOINT
  DELETE /pages/[page_id]/page_access_users/[page_access_user_id]/components/[component_id].json

SAMPLE CALL
  curl https://api.statuspage.io/v1/pages/qfn30z5r6s5h/page_access_users/fmzfm7ch1qps/components/ftgks51sfs2d.json \
    -H "Authorization: OAuth 2a7b9d4aac30956d537ac76850f4d78de30994703680056cc103862d53cf8074" \
    -X DELETE

RESPONSE CODES
  200 - Successful call

SAMPLE RESPONSE
  {
    "created_at": "2013-03-05T20:50:42Z",
    "id": "ftgks51sfs2d",
    "name": "API",
    "position": 1,
    "status": "major_outage",
    "updated_at": "2013-03-05T22:44:21Z"
  }

Assign page access users to a component
ENDPOINT
  POST /pages/[page_id]/components/[component_id]/page_access_users.json

MUTABLE ATTRIBUTES
  page_access_user_ids[] - Array of page access user ids for users that can access the referenced component

SAMPLE CALL
  curl https://api.statuspage.io/v1/pages/qfn30z5r6s5h/components/ftgks51sfs2d/page_access_users.json \
    -H "Authorization: OAuth 2a7b9d4aac30956d537ac76850f4d78de30994703680056cc103862d53cf8074" \
    -X POST \
    -d "page_access_user_ids[]=fmzfm7ch1qps&page_access_user_ids[]=trrz86118fqlx"


RESPONSE CODES
  200 - Successful call

SAMPLE RESPONSE
  {
    "created_at": "2013-03-05T20:50:42Z",
    "id": "ftgks51sfs2d",
    "name": "API",
    "position": 1,
    "status": "major_outage",
    "updated_at": "2013-03-05T22:44:21Z"
  }

Remove a component from all page access users
ENDPOINT
  DELETE /pages/[page_id]/components/[component_id]/page_access_users.json

SAMPLE CALL
  curl https://api.statuspage.io/v1/pages/qfn30z5r6s5h/components/ftgks51sfs2d/page_access_users.json \
    -H "Authorization: OAuth 2a7b9d4aac30956d537ac76850f4d78de30994703680056cc103862d53cf8074" \
    -X DELETE

RESPONSE CODES
  200 - Successful call

SAMPLE RESPONSE
  {
    "created_at": "2013-03-05T20:50:42Z",
    "id": "ftgks51sfs2d",
    "name": "API",
    "position": 1,
    "status": "major_outage",
    "updated_at": "2013-03-05T22:44:21Z"
  }