Grafana OnCallGrafana OnCall API referencePostmortem HTTP API

Create a postmortem

curl "{{API_URL}}/api/v1/postmortems/" \
  --request POST \
  --header "Authorization: meowmeowmeow" \
  --header "Content-Type: application/json" \
  --data '{
      "incident_id": "I68T24C13IFW1",
      "text": "Demo postmortem text"
  }'

The above command returns JSON structured like this:

{
    "id": "P658FE5K87EWZ",
    "incident_id": "I68T24C13IFW1",
    "created_at": "2020-06-19T12:37:01.430444Z",
    "text": "Demo postmortem text"
}

HTTP request

POST {{API_URL}}/api/v1/postmortems/

Get a postmortem

curl "{{API_URL}}/api/v1/postmortems/P658FE5K87EWZ/" \
  --request GET \
  --header "Authorization: meowmeowmeow" \
  --header "Content-Type: application/json"

The above command returns JSON structured like this:

{
    "id": "P658FE5K87EWZ",
    "incident_id": "I68T24C13IFW1",
    "created_at": "2020-06-19T12:37:01.430444Z",
    "text": "Demo postmortem text",
    "postmortem_messages": [
        {
            "id": "M4BTQUS3PRHYQ",
            "incident_id": "I68T24C13IFW1",
            "author": "U4DNY931HHJS5",
            "source": "web",
            "created_at": "2020-06-19T12:40:01.429805Z",
            "text": "Demo postmortem message"
        }
    ]
}

HTTP request

GET {{API_URL}}/api/v1/postmortems/<POSTMORTEM_ID>/

List postmortems

curl "{{API_URL}}/api/v1/postmortems/" \
  --request GET \
  --header "Authorization: meowmeowmeow" \
  --header "Content-Type: application/json"

The above command returns JSON structured like this:

{
    "count": 1,
    "next": null,
    "previous": null,
    "results": [
        {
            "id": "P658FE5K87EWZ",
            "incident_id": "I68T24C13IFW1",
            "created_at": "2020-06-19T12:37:01.430444Z",
            "text": "Demo postmortem text",
            "postmortem_messages": [
                {
                    "id": "M4BTQUS3PRHYQ",
                    "incident_id": "I68T24C13IFW1",
                    "author": "U4DNY931HHJS5",
                    "source": "web",
                    "created_at": "2020-06-19T12:40:01.429805Z",
                    "text": "Demo postmortem message"
                }
            ]
        }
    ]
}

The following available filter parameter should be provided with a get argument:

  • incident_id

HTTP request

GET {{API_URL}}/api/v1/postmortems/

Update a postmortem

curl "{{API_URL}}/api/v1/postmortems/P658FE5K87EWZ/" \
  --request PUT \
  --header "Authorization: meowmeowmeow" \
  --header "Content-Type: application/json" \
  --data '{
      "text": "Demo postmortem text"
  }'

The above command returns JSON structured like this:

{
    "id": "P658FE5K87EWZ",
    "incident_id": "I68T24C13IFW1",
    "created_at": "2020-06-19T12:37:01.430444Z",
    "text": "Demo postmortem text"
}

HTTP request

PUT {{API_URL}}/api/v1/postmortems/<POSTMORTEM_ID>/

Delete a postmortem

curl "{{API_URL}}/api/v1/postmortems/P658FE5K87EWZ/" \
  --request DELETE \
  --header "Authorization: meowmeowmeow"

HTTP request

DELETE {{API_URL}}/api/v1/postmortems/<POSTMORTEM_ID>/