Skip to content

Instantly share code, notes, and snippets.

@rashedtalukder
Created October 4, 2017 00:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save rashedtalukder/b85f0858e215bb28e332bee259fd6822 to your computer and use it in GitHub Desktop.
Save rashedtalukder/b85f0858e215bb28e332bee259fd6822 to your computer and use it in GitHub Desktop.
API Spec to some of Status Page's V1 apis
#%RAML 1.0
version: v1
title: StatusPage.io-REST-API
baseUri: https://api.statuspage.io/v1/
securitySchemes:
api-key:
type: x-api-key
description: See https://doers.statuspage.io/api/authentication/ for more details
describedBy:
headers:
Authorization:
type: string
description: The API key retrieved from StatusPage.io's UI.
/pages/{page_id}/incidents.json:
securedBy: api-key
post:
description: Updates an existing incident's mutable attributes
body:
application/json:
type: object
properties:
incident:
type: object
properties:
name:
required: true
type: string
status:
required: false
type: string
enum: [investigating, identified, monitoring, resolved]
message:
required: false
type: string
wants_twitter_update:
required: false
type: boolean
default: false
impact_override:
required: false
type: string
enum: [none, minor, major, critical]
component_ids:
required: false
type: string
responses:
200:
body:
application/json:
example: {
"backfilled": false,
"created_at": "2013-04-21T13:07:16-06:00",
"id": "21w20wsvz5kv",
"impact": "minor",
"impact_override": null,
"incident_updates": [
{
"body": "We've identified an issue with and are rolling back a recent code push that is causing slow API response times.",
"created_at": "2013-04-21T13:07:17-06:00",
"display_at": "2013-04-21T13:07:17-06:00",
"id": "fbt48twx0lzh",
"incident_id": "21w20wsvz5kv",
"status": "identified",
"twitter_updated_at": null,
"updated_at": "2013-04-21T13:07:17-06:00",
"wants_twitter_update": false
}
],
"monitoring_at": null,
"name": "Slow API Response Times",
"page_id": "jcm87b8scw0b",
"postmortem_body": null,
"postmortem_body_last_updated_at": null,
"postmortem_ignored": false,
"postmortem_notified_subscribers": false,
"postmortem_notified_twitter": false,
"postmortem_published_at": null,
"resolved_at": null,
"scheduled_auto_in_progress": false,
"scheduled_auto_completed": false,
"scheduled_for": null,
"scheduled_remind_prior": false,
"scheduled_reminded_at": null,
"scheduled_until": null,
"shortlink": "http://j.mp/11AsbTS",
"status": "identified",
"updated_at": "2013-04-21T13:07:17-06:00",
"components": [ # this key only present if component subscriptions are enabled
{
"created_at": "2014-01-18T01:15:08Z",
"description": null,
"id": "4g812xxgm6ws",
"name": "API",
"page_id": "kz6x7zrrmrpk",
"position": 1,
"status": "major_outage",
"updated_at": "2014-01-18T01:15:12Z"
},
{
"created_at": "2014-01-18T01:15:08Z",
"description": null,
"id": "gynp8g27p5xw",
"name": "Management Portal",
"page_id": "kz6x7zrrmrpk",
"position": 2,
"status": "major_outage",
"updated_at": "2014-01-18T01:15:12Z"
}
]
}
422:
description: Validation failed (see errors in response body)
body:
application/json:
type: string
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment