The Status API is a public-facing API for determining the status of services in the Zendesk infrastructure.

Authentication is not required for this API.

Run in Postman

If you use Postman, you can import the Status API endpoints as a collection into your Postman app, then try out different requests to learn how the API works. Click the following button to get started:

Run in Postman

If you don't use Postman, you can sign up for a free account on the Postman website and download the app. For more information about using Postman with Zendesk APIs, see Exploring Zendesk APIs with Postman.

API path

The path of the Status API differs from the Zendesk v2 APIs. Instead of https://{subdomain}.zendesk.com, which gives you access to your Zendesk instance, the path of the Status API is as follows:

https://status.zendesk.com

The API gives you access to status.zendesk.com rather than your Zendesk instance.

Rate limit

This API is rate limited to 10 requests per minute.

JSON format

Responses are represented as JSON objects with the following properties:

NameTypeRead-onlyMandatoryDescription
dataarrayfalsefalseIncident data
includedarrayfalsefalseOptional Incident sideloads
  • The data object contains core information about an incident, its attributes and relationships to incident updates, services, and incident_service metadata.
  • The included object contains records related to the incident, including incident updates, services, and incident_service metadata.

Example

{  "data": {    "id": "247",    "type": "incident",    "attributes": {      "degradation": false,      "impact": "major",      "outage": true,      "postmortem": "",      "resolved_at": null,      "started_at": "2022-05-11T19:56:49.000Z",      "status": "investigating",      "title": "Big, Bad incident"    },    "relationships": {      ...    }    ...  },  "included": [    {      "attributes": {        "created_at": "2022-05-11T19:58:13.000Z",        "description": "This is an incident description"      },      "id": "7",      "type": "incident_update"    },    ...  ]  ...}

List Active Incidents

  • GET /api/incidents/active

Use the List Active Incidents endpoint to get all active incidents. Optionally filter your results by subdomain by appending ?subdomain={subdomain}

Parameters

NameTypeInRequiredDescription
subdomainstringQueryfalseSubdomain

Code Samples

curl
curl https://status.zendesk.com/api/incidents/active
Go
import (	"fmt"	"io"	"net/http")
func main() {	url := "https://support.zendesk.com/api/incidents/active?subdomain=mycompany"	method := "GET"	req, err := http.NewRequest(method, url, nil)
	if err != nil {		fmt.Println(err)		return	}	req.Header.Add("Content-Type", "application/json")	req.Header.Add("Authorization", "Basic <auth-value>") // Base64 encoded "{email_address}/token:{api_token}"
	client := &http.Client {}	res, err := client.Do(req)	if err != nil {		fmt.Println(err)		return	}	defer res.Body.Close()
	body, err := io.ReadAll(res.Body)	if err != nil {		fmt.Println(err)		return	}	fmt.Println(string(body))}
Java
import com.squareup.okhttp.*;OkHttpClient client = new OkHttpClient();HttpUrl.Builder urlBuilder = HttpUrl.parse("https://support.zendesk.com/api/incidents/active")		.newBuilder()		.addQueryParameter("subdomain", "mycompany");String userCredentials = "your_email_address" + "/token:" + "your_api_token";String basicAuth = "Basic " + java.util.Base64.getEncoder().encodeToString(userCredentials.getBytes());
Request request = new Request.Builder()		.url(urlBuilder.build())		.method("GET", null)		.addHeader("Content-Type", "application/json")		.addHeader("Authorization", basicAuth)		.build();Response response = client.newCall(request).execute();
Nodejs
var axios = require('axios');
var config = {  method: 'GET',  url: 'https://support.zendesk.com/api/incidents/active',  headers: {	'Content-Type': 'application/json',	'Authorization': 'Basic <auth-value>', // Base64 encoded "{email_address}/token:{api_token}"  },  params: {    'subdomain': 'mycompany',  },};
axios(config).then(function (response) {  console.log(JSON.stringify(response.data));}).catch(function (error) {  console.log(error);});
Python
import requestsfrom requests.auth import HTTPBasicAuth
url = "https://support.zendesk.com/api/incidents/active?subdomain=mycompany"headers = {	"Content-Type": "application/json",}email_address = 'your_email_address'api_token = 'your_api_token'# Use basic authenticationauth = HTTPBasicAuth(f'{email_address}/token', api_token)
response = requests.request(	"GET",	url,	auth=auth,	headers=headers)
print(response.text)
Ruby
require "net/http"require "base64"uri = URI("https://support.zendesk.com/api/incidents/active")uri.query = URI.encode_www_form("subdomain": "mycompany")request = Net::HTTP::Get.new(uri, "Content-Type": "application/json")email = "your_email_address"api_token = "your_api_token"credentials = "#{email}/token:#{api_token}"encoded_credentials = Base64.strict_encode64(credentials)request["Authorization"] = "Basic #{encoded_credentials}"response = Net::HTTP.start uri.hostname, uri.port, use_ssl: true do |http|	http.request(request)end

Example response(s)

200 OK
// Status 200 OK
{  "data": [    {      "attributes": {        "degradation": false,        "impact": "major",        "outage": true,        "postmortem": "",        "resolved_at": null,        "started_at": "2022-05-11T19:56:49.000Z",        "status": "investigating",        "title": "Big, Bad incident"      },      "id": "247",      "relationships": {        "incident_services": {          "data": [            {              "id": "5032",              "type": "incident_service"            },            {              "id": "5033",              "type": "incident_service"            },            {              "id": "5034",              "type": "incident_service"            }          ]        },        "incident_updates": {          "data": [            {              "id": "7",              "type": "incident_update"            },            {              "id": "8",              "type": "incident_update"            }          ]        }      },      "type": "incident"    }  ],  "included": [    {      "attributes": {        "created_at": "2022-05-11T19:58:13.000Z",        "description": "This is an incident description"      },      "id": "7",      "type": "incident_update"    },    {      "attributes": {        "created_at": "2022-05-11T19:58:13.000Z",        "description": "First Incident Update"      },      "id": "8",      "type": "incident_update"    },    {      "attributes": {        "name": "Ticketing",        "slug": "support-ticketing"      },      "id": "2",      "type": "service"    },    {      "attributes": {        "degradation": false,        "incident_id": "247",        "outage": true,        "resolved_at": null,        "service_id": "2",        "started_at": "2022-05-11T19:56:49.000Z"      },      "id": "5052",      "relationships": {        "service": {          "data": {            "id": "2",            "type": "service"          }        }      },      "type": "incident_service"    },    {      "attributes": {        "name": "API",        "slug": "support-api"      },      "id": "10",      "type": "service"    },    {      "attributes": {        "degradation": false,        "incident_id": "247",        "outage": true,        "resolved_at": null,        "service_id": "10",        "started_at": "2022-05-11T19:56:49.000Z"      },      "id": "5053",      "relationships": {        "service": {          "data": {            "id": "10",            "type": "service"          }        }      },      "type": "incident_service"    },    {      "attributes": {        "name": "Support",        "slug": "support"      },      "id": "1",      "type": "service"    },    {      "attributes": {        "degradation": false,        "incident_id": "247",        "outage": true,        "resolved_at": null,        "service_id": "1",        "started_at": "2022-05-11T19:56:49.000Z"      },      "id": "5054",      "relationships": {        "service": {          "data": {            "id": "1",            "type": "service"          }        }      },      "type": "incident_service"    }  ]}

List Maintenance Incidents

  • GET /api/incidents/maintenance

Use the List Maintenance Incidents endpoint to get all upcoming maintenance incidents. Optionally filter your results by subdomain by appending ?subdomain={subdomain}

Parameters

NameTypeInRequiredDescription
subdomainstringQueryfalseSubdomain

Code Samples

curl
curl https://status.zendesk.com/api/incidents/maintenance
Go
import (	"fmt"	"io"	"net/http")
func main() {	url := "https://support.zendesk.com/api/incidents/maintenance?subdomain=mycompany"	method := "GET"	req, err := http.NewRequest(method, url, nil)
	if err != nil {		fmt.Println(err)		return	}	req.Header.Add("Content-Type", "application/json")	req.Header.Add("Authorization", "Basic <auth-value>") // Base64 encoded "{email_address}/token:{api_token}"
	client := &http.Client {}	res, err := client.Do(req)	if err != nil {		fmt.Println(err)		return	}	defer res.Body.Close()
	body, err := io.ReadAll(res.Body)	if err != nil {		fmt.Println(err)		return	}	fmt.Println(string(body))}
Java
import com.squareup.okhttp.*;OkHttpClient client = new OkHttpClient();HttpUrl.Builder urlBuilder = HttpUrl.parse("https://support.zendesk.com/api/incidents/maintenance")		.newBuilder()		.addQueryParameter("subdomain", "mycompany");String userCredentials = "your_email_address" + "/token:" + "your_api_token";String basicAuth = "Basic " + java.util.Base64.getEncoder().encodeToString(userCredentials.getBytes());
Request request = new Request.Builder()		.url(urlBuilder.build())		.method("GET", null)		.addHeader("Content-Type", "application/json")		.addHeader("Authorization", basicAuth)		.build();Response response = client.newCall(request).execute();
Nodejs
var axios = require('axios');
var config = {  method: 'GET',  url: 'https://support.zendesk.com/api/incidents/maintenance',  headers: {	'Content-Type': 'application/json',	'Authorization': 'Basic <auth-value>', // Base64 encoded "{email_address}/token:{api_token}"  },  params: {    'subdomain': 'mycompany',  },};
axios(config).then(function (response) {  console.log(JSON.stringify(response.data));}).catch(function (error) {  console.log(error);});
Python
import requestsfrom requests.auth import HTTPBasicAuth
url = "https://support.zendesk.com/api/incidents/maintenance?subdomain=mycompany"headers = {	"Content-Type": "application/json",}email_address = 'your_email_address'api_token = 'your_api_token'# Use basic authenticationauth = HTTPBasicAuth(f'{email_address}/token', api_token)
response = requests.request(	"GET",	url,	auth=auth,	headers=headers)
print(response.text)
Ruby
require "net/http"require "base64"uri = URI("https://support.zendesk.com/api/incidents/maintenance")uri.query = URI.encode_www_form("subdomain": "mycompany")request = Net::HTTP::Get.new(uri, "Content-Type": "application/json")email = "your_email_address"api_token = "your_api_token"credentials = "#{email}/token:#{api_token}"encoded_credentials = Base64.strict_encode64(credentials)request["Authorization"] = "Basic #{encoded_credentials}"response = Net::HTTP.start uri.hostname, uri.port, use_ssl: true do |http|	http.request(request)end

Example response(s)

200 OK
// Status 200 OK
{  "data": [    {      "attributes": {        "degradation": false,        "impact": "major",        "maintenance_article": "",        "maintenance_end_time": "2022-05-11T20:12:49.000Z",        "maintenance_start_time": "2022-05-11T19:56:49.000Z",        "outage": true,        "title": "Upcoming scheduled maintenance"      },      "id": "247",      "relationships": {        "incident_services": {          "data": [            {              "id": "5032",              "type": "incident_service"            },            {              "id": "5033",              "type": "incident_service"            },            {              "id": "5034",              "type": "incident_service"            }          ]        },        "incident_updates": {          "data": [            {              "id": "7",              "type": "incident_update"            },            {              "id": "8",              "type": "incident_update"            }          ]        }      },      "type": "incident"    }  ],  "included": [    {      "attributes": {        "created_at": "2022-05-11T19:58:13.000Z",        "description": "This is the maintenance description"      },      "id": "7",      "type": "incident_update"    },    {      "attributes": {        "created_at": "2022-05-11T19:58:13.000Z",        "description": "First Maintenance Update"      },      "id": "8",      "type": "incident_update"    },    {      "attributes": {        "name": "Ticketing",        "slug": "support-ticketing"      },      "id": "2",      "type": "service"    },    {      "attributes": {        "degradation": false,        "incident_id": "247",        "outage": true,        "service_id": "2"      },      "id": "5052",      "relationships": {        "service": {          "data": {            "id": "2",            "type": "service"          }        }      },      "type": "incident_service"    },    {      "attributes": {        "name": "API",        "slug": "support-api"      },      "id": "10",      "type": "service"    },    {      "attributes": {        "degradation": false,        "incident_id": "247",        "outage": true,        "service_id": "10"      },      "id": "5053",      "relationships": {        "service": {          "data": {            "id": "10",            "type": "service"          }        }      },      "type": "incident_service"    },    {      "attributes": {        "name": "Support",        "slug": "support"      },      "id": "1",      "type": "service"    },    {      "attributes": {        "degradation": false,        "incident_id": "247",        "outage": true,        "service_id": "1"      },      "id": "5054",      "relationships": {        "service": {          "data": {            "id": "1",            "type": "service"          }        }      },      "type": "incident_service"    }  ]}

Show Active Incident

  • GET /api/incidents/{incident_id}

Use the Show Active Incident endpoint to get an active incident by its id.

Optionally include associated records by appending ?include[]={resource_types}, where {resource_type} is a comma-delimited list of one or more of the following:

  • incident_update: Include incident update details. This information is also visible on the Zendesk Status page.
  • incident_services.service: Include information about which services affect the incident.
  • incident_service: Include product-level information about the incident. Typically used with incident_services.service.

Parameters

NameTypeInRequiredDescription
include[]stringQueryfalseOptional Incident sideloads
incident_idstringPathtrueId of the incident

Code Samples

curl
curl https://status.zendesk.com/api/incidents/{incident_id}}?include[]=incident_services,incident_updates,incident_services.service
Go
import (	"fmt"	"io"	"net/http")
func main() {	url := "https://support.zendesk.com/api/incidents/247?include[]=marklar"	method := "GET"	req, err := http.NewRequest(method, url, nil)
	if err != nil {		fmt.Println(err)		return	}	req.Header.Add("Content-Type", "application/json")	req.Header.Add("Authorization", "Basic <auth-value>") // Base64 encoded "{email_address}/token:{api_token}"
	client := &http.Client {}	res, err := client.Do(req)	if err != nil {		fmt.Println(err)		return	}	defer res.Body.Close()
	body, err := io.ReadAll(res.Body)	if err != nil {		fmt.Println(err)		return	}	fmt.Println(string(body))}
Java
import com.squareup.okhttp.*;OkHttpClient client = new OkHttpClient();HttpUrl.Builder urlBuilder = HttpUrl.parse("https://support.zendesk.com/api/incidents/247")		.newBuilder()		.addQueryParameter("include[]", "marklar");String userCredentials = "your_email_address" + "/token:" + "your_api_token";String basicAuth = "Basic " + java.util.Base64.getEncoder().encodeToString(userCredentials.getBytes());
Request request = new Request.Builder()		.url(urlBuilder.build())		.method("GET", null)		.addHeader("Content-Type", "application/json")		.addHeader("Authorization", basicAuth)		.build();Response response = client.newCall(request).execute();
Nodejs
var axios = require('axios');
var config = {  method: 'GET',  url: 'https://support.zendesk.com/api/incidents/247',  headers: {	'Content-Type': 'application/json',	'Authorization': 'Basic <auth-value>', // Base64 encoded "{email_address}/token:{api_token}"  },  params: {    'include[]': 'marklar',  },};
axios(config).then(function (response) {  console.log(JSON.stringify(response.data));}).catch(function (error) {  console.log(error);});
Python
import requestsfrom requests.auth import HTTPBasicAuth
url = "https://support.zendesk.com/api/incidents/247?include[]=marklar"headers = {	"Content-Type": "application/json",}email_address = 'your_email_address'api_token = 'your_api_token'# Use basic authenticationauth = HTTPBasicAuth(f'{email_address}/token', api_token)
response = requests.request(	"GET",	url,	auth=auth,	headers=headers)
print(response.text)
Ruby
require "net/http"require "base64"uri = URI("https://support.zendesk.com/api/incidents/247")uri.query = URI.encode_www_form("include[]": "marklar")request = Net::HTTP::Get.new(uri, "Content-Type": "application/json")email = "your_email_address"api_token = "your_api_token"credentials = "#{email}/token:#{api_token}"encoded_credentials = Base64.strict_encode64(credentials)request["Authorization"] = "Basic #{encoded_credentials}"response = Net::HTTP.start uri.hostname, uri.port, use_ssl: true do |http|	http.request(request)end

Example response(s)

200 OK
// Status 200 OK
{  "data": {    "attributes": {      "degradation": false,      "impact": "major",      "outage": true,      "postmortem": "",      "resolved_at": null,      "started_at": "2022-05-11T19:56:49.000Z",      "status": "investigating",      "title": "Big, Bad incident"    },    "id": "247",    "relationships": {      "incident_services": {        "data": [          {            "id": "5032",            "type": "incident_service"          },          {            "id": "5033",            "type": "incident_service"          },          {            "id": "5034",            "type": "incident_service"          }        ]      },      "incident_updates": {        "data": [          {            "id": "7",            "type": "incident_update"          },          {            "id": "8",            "type": "incident_update"          }        ]      }    },    "type": "incident"  },  "included": [    {      "attributes": {        "created_at": "2022-05-11T19:58:13.000Z",        "description": "This is an incident description"      },      "id": "7",      "type": "incident_update"    },    {      "attributes": {        "created_at": "2022-05-11T19:58:13.000Z",        "description": "First Incident Update"      },      "id": "8",      "type": "incident_update"    },    {      "attributes": {        "name": "Ticketing",        "slug": "support-ticketing"      },      "id": "2",      "type": "service"    },    {      "attributes": {        "degradation": false,        "incident_id": "247",        "outage": true,        "resolved_at": null,        "service_id": "2",        "started_at": "2022-05-11T19:56:49.000Z"      },      "id": "5052",      "relationships": {        "service": {          "data": {            "id": "2",            "type": "service"          }        }      },      "type": "incident_service"    },    {      "attributes": {        "name": "API",        "slug": "support-api"      },      "id": "10",      "type": "service"    },    {      "attributes": {        "degradation": false,        "incident_id": "247",        "outage": true,        "resolved_at": null,        "service_id": "10",        "started_at": "2022-05-11T19:56:49.000Z"      },      "id": "5053",      "relationships": {        "service": {          "data": {            "id": "10",            "type": "service"          }        }      },      "type": "incident_service"    },    {      "attributes": {        "name": "Support",        "slug": "support"      },      "id": "1",      "type": "service"    },    {      "attributes": {        "degradation": false,        "incident_id": "247",        "outage": true,        "resolved_at": null,        "service_id": "1",        "started_at": "2022-05-11T19:56:49.000Z"      },      "id": "5054",      "relationships": {        "service": {          "data": {            "id": "1",            "type": "service"          }        }      },      "type": "incident_service"    }  ]}