PingPong API docs (1.1.0)

This is the API documentation for PingPong Status Pages. To utilize the API you need a PingPong account, create your free account today.

Introduction

The PingPong API is organized around the REST methodology, and it uses resource-oriented URLs, and common HTTP response codes to indicate API errors. All requests are authenticated using an api-key which can be obtained from your developer dashboard.

Create an account today to obtain your API key

Cross-Origin Resource Sharing

This API features Cross-Origin Resource Sharing (CORS) implemented in compliance with W3C spec. And that allows cross-domain communication from the browser. All responses have a wildcard same-origin which makes them completely public and accessible to everyone, including any code on any site.

Authentication

API Token

Obtaining your API token

Sign in to your PingPong account and go to api integration. There, you can view and copy your API token or generate a new one.

Using your API token

Authenticate to the API by passing the authorization token header to all requests, as shown in this example:

curl -H "Authorization: Token 5c10213ag542d5738bbeaabbe12f35ef9c89f537" \
  https://api.pingpong.one/rest/v1/status
Security Scheme Type: API Key
Header parameter name: Authorization

Status

Global status page status, for all components.

Get system status

Returns current status for all components. This endpoint could be used for widgets or badges to showcase current status.

Authorizations:
API Token

Responses

Response samples

Content type
application/json
{
  • "status": "All systems operational",
  • "status_color": "green"
}

Live

Ongoing incidents and maintenance.

Get live events

Returns information about status page and lists of currently ongoing incidents or maintenance. Useful for notification bar widgets.

Authorizations:
API Token

Responses

Response samples

Content type
application/json
{
  • "project": "ACME",
  • "incidents": [ ],
  • "maintenance": [
    ]
}

Component

Components are the individual parts of your system that can be listed on your status page.

List components

Returns a list of all components.

Authorizations:
API Token

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Create component

Create a component.

Authorizations:
API Token
Request Body schema: application/json
name
string <= 50 characters

Component name.

group
uuid or null <= 255 characters

Component group UUID it belongs to, or null if it doesn't belong to a group.

description
string or null <= 255 characters

Short description of the component.

status
string or null
Enum: "Unknown" "Operational" "Minor issues" "Major issues" "Critical state" "Maintenance mode" "Unavailable"

Current component status. Case-insensitive. Live incidents and maintenance override this status.

showcased
boolean

Defines whether it is shown on the status page.

Responses

Request samples

Content type
application/json
{
  • "name": "API",
  • "group": "Qgc5CGxVJTMY8MCShAqcij",
  • "description": null,
  • "status": "Operational",
  • "showcased": true
}

Response samples

Content type
application/json
{
  • "id": "GZ7tIAmLacSDW7sHe9Fskl",
  • "project": "ACME",
  • "name": "API",
  • "group": {
    },
  • "created_at": "2020-02-07T14:22:03Z",
  • "status": "Operational",
  • "status_color": "green",
  • "description": null,
  • "showcased": true
}

Get component

Returns a single component.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the component to retrieve.

Responses

Response samples

Content type
application/json
{
  • "id": "GZ7tIAmLacSDW7sHe9Fskl",
  • "project": "ACME",
  • "name": "API",
  • "group": {
    },
  • "created_at": "2020-02-07T14:22:03Z",
  • "status": "Operational",
  • "status_color": "green",
  • "description": null,
  • "showcased": true
}

Update component

Update a component.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the component to update.

Request Body schema: application/json
name
string <= 50 characters

Component name.

group
uuid or null <= 255 characters

Component group UUID it belongs to, or null if it doesn't belong to a group.

description
string or null <= 255 characters

Short description of the component.

status
string or null
Enum: "Unknown" "Operational" "Minor issues" "Major issues" "Critical state" "Maintenance mode" "Unavailable"

Current component status. Case-insensitive. Live incidents and maintenance override this status.

showcased
boolean

Defines whether it is shown on the status page.

Responses

Request samples

Content type
application/json
{
  • "name": "API",
  • "group": "Qgc5CGxVJTMY8MCShAqcij",
  • "description": null,
  • "status": "Operational",
  • "showcased": true
}

Response samples

Content type
application/json
{
  • "id": "GZ7tIAmLacSDW7sHe9Fskl",
  • "project": "ACME",
  • "name": "API",
  • "group": {
    },
  • "created_at": "2020-02-07T14:22:03Z",
  • "status": "Operational",
  • "status_color": "green",
  • "description": null,
  • "showcased": true
}

Delete component

Deletes a component.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the component to delete.

Responses

Response samples

Content type
application/json
{
  • "detail": "Authentication credentials were not provided."
}

Update component status

Update the status of a component.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the component to update.

Request Body schema: application/json
status
string or null
Enum: "Unknown" "Operational" "Minor issues" "Major issues" "Critical state" "Maintenance mode" "Unavailable"

Current component status. Case-insensitive. Live incidents and maintenance override this status.

Responses

Request samples

Content type
application/json
{
  • "status": "Operational"
}

Response samples

Content type
application/json
{
  • "id": "GZ7tIAmLacSDW7sHe9Fskl",
  • "status": "Operational",
  • "status_color": "green"
}

Component group

Component groups let you visually group related components on your status page.

List component groups

Returns a list of all component groups.

Authorizations:
API Token

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Create component group

Create a component group.

Authorizations:
API Token
Request Body schema: application/json
name
string <= 50 characters

Component group name.

description
string or null <= 255 characters

Short description of the component group.

Responses

Request samples

Content type
application/json
{
  • "name": "System",
  • "description": null
}

Response samples

Content type
application/json
{
  • "id": "Qgc5CGxVJTMY8MCShAqcij",
  • "project": "ACME",
  • "name": "System",
  • "created_at": "2020-02-07T18:35:09Z",
  • "description": null
}

Get component group

Returns a single component group.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the component group to retrieve.

Responses

Response samples

Content type
application/json
{
  • "id": "Qgc5CGxVJTMY8MCShAqcij",
  • "project": "ACME",
  • "name": "System",
  • "created_at": "2020-02-07T18:35:09Z",
  • "description": null
}

Update component group

Update a component group.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the component group to update.

Request Body schema: application/json
name
string <= 50 characters

Component group name.

description
string or null <= 255 characters

Short description of the component group.

Responses

Request samples

Content type
application/json
{
  • "name": "System",
  • "description": null
}

Response samples

Content type
application/json
{
  • "id": "Qgc5CGxVJTMY8MCShAqcij",
  • "project": "ACME",
  • "name": "System",
  • "created_at": "2020-02-07T18:35:09Z",
  • "description": null
}

Delete component group

Deletes a component group.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the component group to delete.

Responses

Response samples

Content type
application/json
{
  • "detail": "Authentication credentials were not provided."
}

Incident

Incidents are events that affect your service, which you want to communicate to your users.

Live incidents

Returns a list of all ongoing incident events that are not resolved.

Authorizations:
API Token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List incidents

Returns a list of all incident events.

Authorizations:
API Token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create incident

Create an incident event.

Authorizations:
API Token
Request Body schema: application/json
title
string <= 100 characters

Incident title.

message
string <HTML>

Describes what has happened in this incident.

occurred_at
string or null <date-time>

When event started in UTC. Set to null for now.

notify_subscribers
bool

Defines whether to notify subscribers. Team is always notified.

Array of objects (Affected Component)

A list of components affected by this event.

Responses

Request samples

Content type
application/json
{
  • "title": "Database replica connection failure",
  • "message": "<b>Summary</b><br>API can not connect to the database replica.",
  • "occurred_at": "2020-03-18T09:02:24Z",
  • "notify_subscribers": true,
  • "affected_components": [
    ]
}

Response samples

Content type
application/json
{
  • "id": "LaPtdb2hXX3447YH7XYrt9",
  • "project": "ACME",
  • "title": "Database replica connection failure",
  • "created_at": "2020-02-03T12:15:58Z",
  • "status": "In progress",
  • "affected_components": [
    ],
  • "reported_by": "Donald Duck",
  • "occurred_at": "2020-03-18T09:02:24Z",
  • "message": "<div><b>Summary</b><br>API can not connect to the database replica.</div>",
  • "updates": [ ]
}

Get incident

Returns a single incident event.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the incident event to retrieve.

Responses

Response samples

Content type
application/json
{
  • "id": "LaPtdb2hXX3447YH7XYrt9",
  • "project": "ACME",
  • "title": "Database replica connection failure",
  • "created_at": "2020-02-03T12:15:58Z",
  • "status": "Verifying",
  • "affected_components": [
    ],
  • "reported_by": "Donald Duck",
  • "occurred_at": "2020-03-18T09:02:24Z",
  • "message": "<div><b>Summary</b><br>API can not connect to the database replica.</div>",
  • "updates": [
    ]
}

Update incident

Update an incident.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the incident event.

Request Body schema: application/json
title
string <= 100 characters

Incident title.

message
string <HTML>

Describes what has happened in this incident.

occurred_at
string or null <date-time>

When event started in UTC. Set to null for now.

notify_subscribers
bool

Defines whether to notify subscribers. Team is always notified.

Array of objects (Affected Component)

A list of components affected by this event.

Responses

Request samples

Content type
application/json
{
  • "title": "Database replica connection failure",
  • "message": "<b>Summary</b><br>API can not connect to the database replica.",
  • "occurred_at": "2020-03-18T09:02:24Z",
  • "notify_subscribers": true,
  • "affected_components": [
    ]
}

Response samples

Content type
application/json
{
  • "id": "LaPtdb2hXX3447YH7XYrt9",
  • "project": "ACME",
  • "title": "Database replica connection failure",
  • "created_at": "2020-02-03T12:15:58Z",
  • "status": "Verifying",
  • "affected_components": [
    ],
  • "reported_by": "Donald Duck",
  • "occurred_at": "2020-03-18T09:02:24Z",
  • "message": "<div><b>Summary</b><br>API can not connect to the database replica.</div>",
  • "updates": [
    ]
}

Delete incident

Deletes an incident.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the incident event.

Responses

Response samples

Content type
application/json
{
  • "detail": "Authentication credentials were not provided."
}

Incident update

Incident updates are messages reported to users as your team works on resolving the incident.

List all updates for incident

Returns a list of all incident updates for incident events.

Authorizations:
API Token
path Parameters
incident_id
required
uuid

Unique ID for the incident event to retrieve its updates.

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    }
]

Create incident update

Create an incident update.

Authorizations:
API Token
path Parameters
incident_id
required
uuid

Unique ID for the incident event.

Request Body schema: application/json
status
string
Enum: "Investigating" "Identified" "Verifying" "Resolved"

Current event status.

message
string <HTML>

A message of what has happened in this update.

Responses

Request samples

Content type
application/json
{
  • "status": "Investigating",
  • "message": "Our devs are looking into the issue."
}

Response samples

Content type
application/json
{
  • "id": "LlPtdb4hXX3447YH7XYrt9",
  • "created_at": "2020-03-18T09:02:39Z",
  • "reported_by": "Huey",
  • "status": "Investigating",
  • "message": "<div>Our devs are looking into the issue.</div>"
}

Get incident update

Returns a single incident update.

Authorizations:
API Token
path Parameters
incident_id
required
uuid

Unique ID for the incident event.

update_id
required
uuid

Unique ID for the incident update.

Responses

Response samples

Content type
application/json
{
  • "id": "LlPtdb4hXX3447YH7XYrt9",
  • "created_at": "2020-03-18T09:02:39Z",
  • "reported_by": "Huey",
  • "status": "Investigating",
  • "message": "<div>Our devs are looking into the issue.</div>"
}

Update incident update

Update an incident update.

Authorizations:
API Token
path Parameters
incident_id
required
uuid

Unique ID for the incident event.

update_id
required
uuid

Unique ID for the incident update.

Request Body schema: application/json
status
string
Enum: "Investigating" "Identified" "Verifying" "Resolved"

Current event status.

message
string <HTML>

A message of what has happened in this update.

Responses

Request samples

Content type
application/json
{
  • "status": "Investigating",
  • "message": "Our devs are looking into the issue."
}

Response samples

Content type
application/json
{
  • "id": "LlPtdb4hXX3447YH7XYrt9",
  • "created_at": "2020-03-18T09:02:39Z",
  • "reported_by": "Huey",
  • "status": "Investigating",
  • "message": "<div>Our devs are looking into the issue.</div>"
}

Delete incident update

Deletes an incident update.

Authorizations:
API Token
path Parameters
incident_id
required
uuid

Unique ID for the incident event.

update_id
required
uuid

Unique ID for the incident update.

Responses

Response samples

Content type
application/json
{
  • "detail": "Authentication credentials were not provided."
}

Maintenance

Maintenance are scheduled future planned events that might interrupt your service, which you want to communicate to your users.

List maintenances

Returns a list of all maintenance events.

Authorizations:
API Token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create maintenance

Create an maintenance event.

Authorizations:
API Token
Request Body schema: application/json
title
string <= 100 characters

Maintenance title.

message
string <HTML>

What will happen during the maintenance.

scheduled_for
string <date-time>

When event will occur in UTC.

ends_at
string <date-time>

When event will end in UTC.

notify_subscribers
bool

Defines whether to notify subscribers. Team is always notified.

affected_components
Array of arrays

A list of component IDs affected by this event.

Responses

Request samples

Content type
application/json
{
  • "title": "Database migration planned",
  • "message": "MySQL replica will be moved to a different server.",
  • "scheduled_for": "2020-02-10T22:00:00Z",
  • "ends_at": "2020-02-10T23:00:00Z",
  • "notify_subscribers": true,
  • "affected_components": [
    ]
}

Response samples

Content type
application/json
{
  • "id": "k9gVLLPoNgbPA72HQKvy2b",
  • "project": "ACME",
  • "name": "Database migration",
  • "created_at": "2020-02-03T12:15:58Z",
  • "status": "In progress",
  • "affected_components": [
    ],
  • "reported_by": "Donald Duck",
  • "scheduled_for": "2020-02-10T22:00:00Z",
  • "ends_at": "2020-02-10T23:00:00Z",
  • "message": "<div>Upgrading version of <b>main database</b> from version 9.0 to <strikethrough>10.0</strikethrough> 10.2.</div>"
}

Get maintenance

Returns a single maintenance event.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the maintenance event to retrieve.

Responses

Response samples

Content type
application/json
{
  • "id": "k9gVLLPoNgbPA72HQKvy2b",
  • "project": "ACME",
  • "name": "Database migration",
  • "created_at": "2020-02-03T12:15:58Z",
  • "status": "In progress",
  • "affected_components": [
    ],
  • "reported_by": "Donald Duck",
  • "scheduled_for": "2020-02-10T22:00:00Z",
  • "ends_at": "2020-02-10T23:00:00Z",
  • "message": "<div>Upgrading version of <b>main database</b> from version 9.0 to <strikethrough>10.0</strikethrough> 10.2.</div>"
}

Update maintenance

Update a maintenance event.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the maintenance event.

Request Body schema: application/json
title
string <= 100 characters

Maintenance title.

message
string <HTML>

What will happen during the maintenance.

scheduled_for
string <date-time>

When event will occur in UTC.

ends_at
string <date-time>

When event will end in UTC.

notify_subscribers
bool

Defines whether to notify subscribers. Team is always notified.

affected_components
Array of arrays

A list of component IDs affected by this event.

Responses

Request samples

Content type
application/json
{
  • "title": "Database migration planned",
  • "message": "MySQL replica will be moved to a different server.",
  • "scheduled_for": "2020-02-10T22:00:00Z",
  • "ends_at": "2020-02-10T23:00:00Z",
  • "notify_subscribers": true,
  • "affected_components": [
    ]
}

Response samples

Content type
application/json
{
  • "id": "k9gVLLPoNgbPA72HQKvy2b",
  • "project": "ACME",
  • "name": "Database migration",
  • "created_at": "2020-02-03T12:15:58Z",
  • "status": "In progress",
  • "affected_components": [
    ],
  • "reported_by": "Donald Duck",
  • "scheduled_for": "2020-02-10T22:00:00Z",
  • "ends_at": "2020-02-10T23:00:00Z",
  • "message": "<div>Upgrading version of <b>main database</b> from version 9.0 to <strikethrough>10.0</strikethrough> 10.2.</div>"
}

Delete maintenance

Deletes a maintenance event.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the maintenance to delete.

Responses

Response samples

Content type
application/json
{
  • "detail": "Authentication credentials were not provided."
}

Metrics

Metrics monitored by the service.

List metrics

Returns a list of all metrics.

Authorizations:
API Token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create metric

Create a metric.

Authorizations:
API Token
Request Body schema: application/json
name
string <= 50 characters

Metric name.

description
string or null <= 255 characters

Short description of the metric.

created_at
string <date-time>

Datetime when metric was created in UTC.

component
uuid or null <= 255 characters

Component UUID it is connected to, or null if it isn't connected.

url
string

URL to ping.

frequency
string
Enum: "minute" "2 minutes" "5 minutes" "10 minutes" "15 minutes" "30 minutes" "60 minutes"

URL is pinged with this frequency.

location
string
Enum: "US West" "US East" "Brazil" "United Kingdom" "Italy" "Sweden" "South Africa" "Singapore" "Australia" "Japan"

URL is pinged from this location. Case-insensitive.

showcased
string
Enum: "Don't showcase" "Showcase uptime and response time" "Showcase uptime" "Showcase response time"

Defines whether it is shown on the status page. Case-insensitive.

Responses

Request samples

Content type
application/json
{
  • "name": "API",
  • "description": null,
  • "created_at": "2020-02-19T16:13:58Z",
  • "component": "GZ7tIAmLacSDW7sHe9Fskl",
  • "frequency": "5 minutes",
  • "location": "US West",
  • "showcased": "Showcase uptime"
}

Response samples

Content type
application/json
{
  • "id": "LPGPFfUjHpnJfMXvqnctt7",
  • "project": "ACME",
  • "name": "API",
  • "description": null,
  • "created_at": "2020-02-19T16:13:58Z",
  • "component": {
    },
  • "frequency": "5 minutes",
  • "location": "US West",
  • "showcased": "Showcase uptime"
}

Get metric

Returns a single metric.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the metric to retrieve.

Responses

Response samples

Content type
application/json
{
  • "id": "LPGPFfUjHpnJfMXvqnctt7",
  • "project": "ACME",
  • "name": "API",
  • "description": null,
  • "created_at": "2020-02-19T16:13:58Z",
  • "component": {
    },
  • "frequency": "5 minutes",
  • "location": "US West",
  • "showcased": "Showcase uptime"
}

Update metric

Update a metric.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the metric to update.

Request Body schema: application/json
name
string <= 50 characters

Metric name.

description
string or null <= 255 characters

Short description of the metric.

created_at
string <date-time>

Datetime when metric was created in UTC.

component
uuid or null <= 255 characters

Component UUID it is connected to, or null if it isn't connected.

url
string

URL to ping.

frequency
string
Enum: "minute" "2 minutes" "5 minutes" "10 minutes" "15 minutes" "30 minutes" "60 minutes"

URL is pinged with this frequency.

location
string
Enum: "US West" "US East" "Brazil" "United Kingdom" "Italy" "Sweden" "South Africa" "Singapore" "Australia" "Japan"

URL is pinged from this location. Case-insensitive.

showcased
string
Enum: "Don't showcase" "Showcase uptime and response time" "Showcase uptime" "Showcase response time"

Defines whether it is shown on the status page. Case-insensitive.

Responses

Request samples

Content type
application/json
{
  • "name": "API",
  • "description": null,
  • "created_at": "2020-02-19T16:13:58Z",
  • "component": "GZ7tIAmLacSDW7sHe9Fskl",
  • "frequency": "5 minutes",
  • "location": "US West",
  • "showcased": "Showcase uptime"
}

Response samples

Content type
application/json
{
  • "id": "LPGPFfUjHpnJfMXvqnctt7",
  • "project": "ACME",
  • "name": "API",
  • "description": null,
  • "created_at": "2020-02-19T16:13:58Z",
  • "component": {
    },
  • "frequency": "5 minutes",
  • "location": "US West",
  • "showcased": "Showcase uptime"
}

Delete metric

Deletes a metric.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the metric to delete.

Responses

Response samples

Content type
application/json
{
  • "detail": "Authentication credentials were not provided."
}

Custom metrics

Metrics where you can customize the unit and submit your own data.

Add data points

Add data points to custom metrics.

Please note the following before submitting data points:

  • Data points must be in UTC.

  • Data points are cast to minutes, removing the seconds.

  • The response data points have the casted values as they are stored.

  • Data points are updated if the specific minute already exists.

  • Data points older than 30 days are discarded.

Authorizations:
API Token
Request Body schema: application/json

Data object with data point values to add to custom metrics

arrays

Responses

Request samples

Content type
application/json
{
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "29epTBPdfSTBB7LAmTfADw": [
    ]
}

List custom metrics

Returns a list of all custom metrics.

Authorizations:
API Token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create custom metric

Create a custom metric.

Authorizations:
API Token
Request Body schema: application/json
name
string <= 50 characters

Custom metric name.

description
string or null <= 255 characters

Short description of the custom metric.

created_at
string <date-time>

Datetime when custom metric was created in UTC.

component
uuid or null <= 255 characters

Component UUID it is connected to, or null if it isn't connected.

suffix
string <= 50 characters

Metric unit/suffix.

rollup
string
Enum: "Mean value" "Mean value (rounded)" "Sum of all values" "Minimum value" "Maximum value"

Rollup type. Case-insensitive.

showcased
boolean

Defines whether it is shown on the status page.

Responses

Request samples

Content type
application/json
{
  • "name": "Errors",
  • "description": null,
  • "created_at": "2020-02-03T08:16:39Z",
  • "component": "GZ7tIAmLacSDW7sHe9Fskl",
  • "suffix": "per minute",
  • "rollup": "Maximum value",
  • "showcased": true
}

Response samples

Content type
application/json
{
  • "id": "29epTBPdfSTBB7LAmTfADw",
  • "project": "ACME",
  • "name": "Errors",
  • "description": null,
  • "created_at": "2020-02-03T08:16:39Z",
  • "component": {
    },
  • "suffix": "per minute",
  • "rollup": "Maximum value",
  • "showcased": true
}

Get custom metric

Returns a single custom metric.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the custom metric to retrieve.

Responses

Response samples

Content type
application/json
{
  • "id": "29epTBPdfSTBB7LAmTfADw",
  • "project": "ACME",
  • "name": "Errors",
  • "description": null,
  • "created_at": "2020-02-03T08:16:39Z",
  • "component": {
    },
  • "suffix": "per minute",
  • "rollup": "Maximum value",
  • "showcased": true
}

Update custom metric

Update a custom metric.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the custom metric to update.

Request Body schema: application/json
name
string <= 50 characters

Custom metric name.

description
string or null <= 255 characters

Short description of the custom metric.

created_at
string <date-time>

Datetime when custom metric was created in UTC.

component
uuid or null <= 255 characters

Component UUID it is connected to, or null if it isn't connected.

suffix
string <= 50 characters

Metric unit/suffix.

rollup
string
Enum: "Mean value" "Mean value (rounded)" "Sum of all values" "Minimum value" "Maximum value"

Rollup type. Case-insensitive.

showcased
boolean

Defines whether it is shown on the status page.

Responses

Request samples

Content type
application/json
{
  • "name": "Errors",
  • "description": null,
  • "created_at": "2020-02-03T08:16:39Z",
  • "component": "GZ7tIAmLacSDW7sHe9Fskl",
  • "suffix": "per minute",
  • "rollup": "Maximum value",
  • "showcased": true
}

Response samples

Content type
application/json
{
  • "id": "29epTBPdfSTBB7LAmTfADw",
  • "project": "ACME",
  • "name": "Errors",
  • "description": null,
  • "created_at": "2020-02-03T08:16:39Z",
  • "component": {
    },
  • "suffix": "per minute",
  • "rollup": "Maximum value",
  • "showcased": true
}

Delete custom metric

Deletes a custom metric.

Authorizations:
API Token
path Parameters
id
required
uuid

Unique ID for the custom metric to delete.

Responses

Response samples

Content type
application/json
{
  • "detail": "Authentication credentials were not provided."
}

Status object

status
string
Enum: "All systems operational" "Some systems have issues" "All systems down" "Under maintenance"

Status phrase as shown on the status page.

status_color
string
Enum: "green" "orange" "red" "gray"

Human readable color name.

{
  • "status": "All systems operational",
  • "status_color": "green"
}

Live object

project
string

Project name.

url
string

Status page URL.

Array of objects (Incident)

A list of ongoing incidents.

Array of objects (Maintenance)

A list of maintenance currently in progress.

{
  • "project": "ACME",
  • "incidents": [ ],
  • "maintenance": [
    ]
}

Component object

id
uuid <= 22 characters

Unique identifier.

project
string <= 50 characters

Project name.

name
string <= 50 characters

Component name.

group
object or null

Component group it belongs to, or null if it doesn't belong to a group.

created_at
string <date-time>

Datetime when component was created in UTC.

status
string
Enum: "Unknown" "Operational" "Minor issues" "Major issues" "Critical state" "Maintenance mode" "Unavailable"

Current status as shown on the status page.

status_color
string
Enum: "green" "orange" "red"

Human readable color name.

description
string or null <= 255 characters

Short description of the component.

showcased
boolean

Defines whether it is shown on the status page.

{
  • "id": "GZ7tIAmLacSDW7sHe9Fskl",
  • "project": "ACME",
  • "name": "API",
  • "group": {
    },
  • "created_at": "2020-02-07T14:22:03Z",
  • "status": "Operational",
  • "status_color": "green",
  • "description": null,
  • "showcased": true
}

Component Group object

id
uuid <= 22 characters

Unique identifier.

project
string <= 50 characters

Project name.

name
string <= 50 characters

Group name.

created_at
string <date-time>

Datetime when group was created in UTC.

description
string or null <= 255 characters

Short description about the group.

{
  • "id": "Qgc5CGxVJTMY8MCShAqcij",
  • "project": "ACME",
  • "name": "System",
  • "created_at": "2020-02-07T18:35:09Z",
  • "description": null
}

Incident object

id
uuid <= 22 characters

Unique identifier.

project
string <= 50 characters

Project name.

title
string <= 100 characters

Incident title.

created_at
string <date-time>

Datetime when event was created in UTC.

status
string
Enum: "In progress" "Investigating" "Identified" "Verifying" "Resolved"

Current event status.

Array of objects (Component)

A list of components affected by this event.

reported_by
string

Name of the person in your team who reported the event.

occurred_at
string or null <date-time>

When event started in UTC.

message
string <HTML>

Describes what has happened in this incident.

Array of objects (Incident Update)

A list of update messages for this event.

{
  • "id": "LaPtdb2hXX3447YH7XYrt9",
  • "project": "ACME",
  • "title": "Database replica connection failure",
  • "created_at": "2020-02-03T12:15:58Z",
  • "status": "Verifying",
  • "affected_components": [
    ],
  • "reported_by": "Donald Duck",
  • "occurred_at": "2020-03-18T09:02:24Z",
  • "message": "<div><b>Summary</b><br>API can not connect to the database replica.</div>",
  • "updates": [
    ]
}

Incident Update object

id
uuid <= 22 characters

Unique identifier.

created_at
string <date-time>

Datetime when event was created in UTC.

status
string
Enum: "In progress" "Investigating" "Identified" "Verifying" "Resolved"

Current event status.

reported_by
string

Name of the person in your team who reported the event.

message
string <HTML>

A message of what has happened in this update.

{
  • "id": "LlPtdb4hXX3447YH7XYrt9",
  • "created_at": "2020-03-18T09:02:39Z",
  • "reported_by": "Huey",
  • "status": "Investigating",
  • "message": "<div>Our devs are looking into the issue.</div>"
}

Maintenance object

id
uuid <= 22 characters

Unique identifier.

project
string <= 50 characters

Project name.

name
string <= 50 characters

Maintenance name.

created_at
string <date-time>

Datetime when event was created in UTC.

status
string
Enum: "Upcoming" "In progress" "Complete"

Current event status.

Array of objects (Component)

A list of components affected by this event.

reported_by
string

Name of the person in your team who reported the event.

scheduled_for
string <date-time>

When event will occur in UTC.

ends_at
string <date-time>

When event will end in UTC.

message
string <HTML>

What will happen during the maintenance.

{
  • "id": "k9gVLLPoNgbPA72HQKvy2b",
  • "project": "ACME",
  • "name": "Database migration",
  • "created_at": "2020-02-03T12:15:58Z",
  • "status": "In progress",
  • "affected_components": [
    ],
  • "reported_by": "Donald Duck",
  • "scheduled_for": "2020-02-10T22:00:00Z",
  • "ends_at": "2020-02-10T23:00:00Z",
  • "message": "<div>Upgrading version of <b>main database</b> from version 9.0 to <strikethrough>10.0</strikethrough> 10.2.</div>"
}

Metric object

id
uuid <= 22 characters

Unique identifier.

project
string <= 50 characters

Project name.

name
string <= 50 characters

Metric name.

description
string or null <= 255 characters

Short description of the metric.

created_at
string <date-time>

Datetime when metric was created in UTC.

component
object

A component connected to this metric.

url
string

URL to ping.

frequency
string
Enum: "minute" "2 minutes" "5 minutes" "10 minutes" "15 minutes" "30 minutes" "60 minutes"

URL is pinged with this frequency.

location
string
Enum: "Don't showcase" "Showcase uptime and response time" "Showcase uptime" "Showcase response time"

URL is pinged from this location.

showcased
string

Defines whether it is shown on the status page.

{
  • "id": "LPGPFfUjHpnJfMXvqnctt7",
  • "project": "ACME",
  • "name": "API",
  • "description": null,
  • "created_at": "2020-02-19T16:13:58Z",
  • "component": {
    },
  • "frequency": "5 minutes",
  • "location": "US West",
  • "showcased": "Showcase uptime"
}

Custom Metric object

id
uuid <= 22 characters

Unique identifier.

project
string <= 50 characters

Project name.

name
string <= 50 characters

Custom metric name.

description
string or null <= 255 characters

Short description of the custom metric.

created_at
string <date-time>

Datetime when custom metric was created in UTC.

component
object

A component connected to this custom metric.

suffix
string <= 50 characters

Metric unit/suffix.

rollup
string
Enum: "Mean value" "Mean value (rounded)" "Sum of all values" "Minimum value" "Maximum value"

Rollup type.

showcased
boolean

Defines whether it is shown on the status page.

{
  • "id": "29epTBPdfSTBB7LAmTfADw",
  • "project": "ACME",
  • "name": "Errors",
  • "description": null,
  • "created_at": "2020-02-03T08:16:39Z",
  • "component": {
    },
  • "suffix": "per minute",
  • "rollup": "Maximum value",
  • "showcased": true
}

Custom Metric Data object

data
object

Container for custom metric data points.

{
  • "data": {
    }
}

Metric Data Points object

Array of objects (Data Point)

A list of data points.

{
  • "29epTBPdfSTBB7LAmTfADw": [
    ]
}

Data Point object

timestamp
integer <int32>

Timestamp in UTC when data point occurred.

value
integer, float

Data point value.

{
  • "timestamp": 1615387895,
  • "value": 11.6
}

Auth Error object

detail
string
{
  • "detail": "Authentication credentials were not provided."
}

Parse Error object

detail
string
{
  • "detail": "Malformed request."
}

Not Found object

detail
string
{
  • "detail": "Not found."
}