Actions On Incidents
Your organisation's API key. Create one in the Spike dashboard under Settings > API. Sent on every request as the x-api-key header.
Your API key. Find it in your Spike dashboard under Settings > API.
Optional here. The organisation is derived from the API key, not from this header, so incident actions work without it. When supplied it must be a team _id belonging to the key's organisation, otherwise the request is rejected with 403.
5f2b1c4d9e8a7b6c5d4e3f21An ARRAY of incident ids. Each entry may be a counterId (e.g. eng-116) or an incident _id. Also answers on /incidents/acknowledge/multi with an identical handler.
Scoping: counterId entries are only accepted when the request is scoped to an organisation — send a valid x-api-key (the org is taken from the key) or call with a dashboard session. An unscoped counterId request is rejected with 401. Entries that are _ids are exempt, because an ObjectId is unguessable.
["eng-116"]Successful response
Bad request
Either the API key is missing/revoked ({ valid_api: false }), or the body named incidents by counterId without an org-scoped principal.
The supplied x-team-id names a team in another organisation.
Your organisation's API key. Create one in the Spike dashboard under Settings > API. Sent on every request as the x-api-key header.
Your API key. Find it in your Spike dashboard under Settings > API.
Optional here. The organisation is derived from the API key, not from this header, so incident actions work without it. When supplied it must be a team _id belonging to the key's organisation, otherwise the request is rejected with 403.
5f2b1c4d9e8a7b6c5d4e3f21An ARRAY of incident ids. Each entry may be a counterId (e.g. eng-116) or an incident _id. Also answers on /incidents/resolve/multi with an identical handler.
Scoping: counterId entries are only accepted when the request is scoped to an organisation — send a valid x-api-key (the org is taken from the key) or call with a dashboard session. An unscoped counterId request is rejected with 401. Entries that are _ids are exempt, because an ObjectId is unguessable.
["eng-116"]Successful response
Bad request
Either the API key is missing/revoked ({ valid_api: false }), or the body named incidents by counterId without an org-scoped principal.
The supplied x-team-id names a team in another organisation.
Your organisation's API key. Create one in the Spike dashboard under Settings > API. Sent on every request as the x-api-key header.
Your API key. Find it in your Spike dashboard under Settings > API.
Optional here. The organisation is derived from the API key, not from this header, so incident actions work without it. When supplied it must be a team _id belonging to the key's organisation, otherwise the request is rejected with 403.
5f2b1c4d9e8a7b6c5d4e3f21An ARRAY of incident ids. Each entry may be a counterId (e.g. eng-116) or an incident _id. Also answers on /incidents/escalate/multi with an identical handler.
Scoping: counterId entries are only accepted when the request is scoped to an organisation — send a valid x-api-key (the org is taken from the key) or call with a dashboard session. An unscoped counterId request is rejected with 401. Entries that are _ids are exempt, because an ObjectId is unguessable.
["eng-116"]A per-incident result summary. escalated counts incidents moved to the next escalation step; skipped explains the ones that were not.
Bad request
Either the API key is missing/revoked ({ valid_api: false }), or the body named incidents by counterId without an org-scoped principal.
Either the supplied x-team-id names a team in another organisation ({ success: false, message: "x-team-id does not belong to this organisation" }), or nothing was escalated and at least one incident was skipped — in which case message is the first skip reason.
Your organisation's API key. Create one in the Spike dashboard under Settings > API. Sent on every request as the x-api-key header.
Your API key. Find it in your Spike dashboard under Settings > API.
Optional here. The organisation is derived from the API key, not from this header, so incident actions work without it. When supplied it must be a team _id belonging to the key's organisation, otherwise the request is rejected with 403.
5f2b1c4d9e8a7b6c5d4e3f21An ARRAY of incident ids. Each entry may be a counterId (e.g. eng-116) or an incident _id. Also answers on /incidents/unacknowledge/multi with an identical handler.
Scoping: counterId entries are only accepted when the request is scoped to an organisation — send a valid x-api-key (the org is taken from the key) or call with a dashboard session. An unscoped counterId request is rejected with 401. Entries that are _ids are exempt, because an ObjectId is unguessable.
["eng-116"]Always { unacknowledged: true } — the affected incidents are not echoed back.
Bad request
Either the API key is missing/revoked ({ valid_api: false }), or the body named incidents by counterId without an org-scoped principal.
The supplied x-team-id names a team in another organisation.
Your organisation's API key. Create one in the Spike dashboard under Settings > API. Sent on every request as the x-api-key header.
The target team's _id — a 24-character hex ObjectId such as 5f2b1c4d9e8a7b6c5d4e3f21. This is NOT the short uid slug (e.g. eng) shown in dashboard URLs; passing the uid will not resolve a team. Read the _id from GET /teams/get-all-teams or GET /teams/get-my-teams.
REQUIRED for: GET /on-calls (API-key callers get 400 without it), POST /on-calls, and every team-scoped read that declares it — the /incidents/* and /services/* listings, /escalations, /automation/rules and the integration endpoints.
OPTIONAL for: the incident action endpoints (acknowledge, resolve, escalate, unacknowledge), which derive the organisation from the API key itself; PUT /on-calls/{oncallId} and the on-call layer endpoints, which fall back to the organisation's default team; and org-wide reads such as GET /orgs/info and GET /users, which ignore it.
When supplied it must name a team inside the API key's organisation. A team from another organisation is rejected with 403.
Your API key. Find it in your Spike dashboard under Settings > API.
The team's _id — a 24-character hex ObjectId, NOT the short uid slug. Read it from GET /teams/get-all-teams.
5f2b1c4d9e8a7b6c5d4e3f21Successful response
Bad request
Unauthorized
Your organisation's API key. Create one in the Spike dashboard under Settings > API. Sent on every request as the x-api-key header.
The target team's _id — a 24-character hex ObjectId such as 5f2b1c4d9e8a7b6c5d4e3f21. This is NOT the short uid slug (e.g. eng) shown in dashboard URLs; passing the uid will not resolve a team. Read the _id from GET /teams/get-all-teams or GET /teams/get-my-teams.
REQUIRED for: GET /on-calls (API-key callers get 400 without it), POST /on-calls, and every team-scoped read that declares it — the /incidents/* and /services/* listings, /escalations, /automation/rules and the integration endpoints.
OPTIONAL for: the incident action endpoints (acknowledge, resolve, escalate, unacknowledge), which derive the organisation from the API key itself; PUT /on-calls/{oncallId} and the on-call layer endpoints, which fall back to the organisation's default team; and org-wide reads such as GET /orgs/info and GET /users, which ignore it.
When supplied it must name a team inside the API key's organisation. A team from another organisation is rejected with 403.
Your API key. Find it in your Spike dashboard under Settings > API.
The team's _id — a 24-character hex ObjectId, NOT the short uid slug. Read it from GET /teams/get-all-teams.
5f2b1c4d9e8a7b6c5d4e3f21Successful response
Bad request
Unauthorized
Your organisation's API key. Create one in the Spike dashboard under Settings > API. Sent on every request as the x-api-key header.
The target team's _id — a 24-character hex ObjectId such as 5f2b1c4d9e8a7b6c5d4e3f21. This is NOT the short uid slug (e.g. eng) shown in dashboard URLs; passing the uid will not resolve a team. Read the _id from GET /teams/get-all-teams or GET /teams/get-my-teams.
REQUIRED for: GET /on-calls (API-key callers get 400 without it), POST /on-calls, and every team-scoped read that declares it — the /incidents/* and /services/* listings, /escalations, /automation/rules and the integration endpoints.
OPTIONAL for: the incident action endpoints (acknowledge, resolve, escalate, unacknowledge), which derive the organisation from the API key itself; PUT /on-calls/{oncallId} and the on-call layer endpoints, which fall back to the organisation's default team; and org-wide reads such as GET /orgs/info and GET /users, which ignore it.
When supplied it must name a team inside the API key's organisation. A team from another organisation is rejected with 403.
Your API key. Find it in your Spike dashboard under Settings > API.
The team's _id — a 24-character hex ObjectId, NOT the short uid slug. Read it from GET /teams/get-all-teams.
5f2b1c4d9e8a7b6c5d4e3f21Successful response
Unauthorized
Your organisation's API key. Create one in the Spike dashboard under Settings > API. Sent on every request as the x-api-key header.
The target team's _id — a 24-character hex ObjectId such as 5f2b1c4d9e8a7b6c5d4e3f21. This is NOT the short uid slug (e.g. eng) shown in dashboard URLs; passing the uid will not resolve a team. Read the _id from GET /teams/get-all-teams or GET /teams/get-my-teams.
REQUIRED for: GET /on-calls (API-key callers get 400 without it), POST /on-calls, and every team-scoped read that declares it — the /incidents/* and /services/* listings, /escalations, /automation/rules and the integration endpoints.
OPTIONAL for: the incident action endpoints (acknowledge, resolve, escalate, unacknowledge), which derive the organisation from the API key itself; PUT /on-calls/{oncallId} and the on-call layer endpoints, which fall back to the organisation's default team; and org-wide reads such as GET /orgs/info and GET /users, which ignore it.
When supplied it must name a team inside the API key's organisation. A team from another organisation is rejected with 403.
Your API key. Find it in your Spike dashboard under Settings > API.
The team's _id — a 24-character hex ObjectId, NOT the short uid slug. Read it from GET /teams/get-all-teams.
5f2b1c4d9e8a7b6c5d4e3f21Successful response
Unauthorized
Your organisation's API key. Create one in the Spike dashboard under Settings > API. Sent on every request as the x-api-key header.
The target team's _id — a 24-character hex ObjectId such as 5f2b1c4d9e8a7b6c5d4e3f21. This is NOT the short uid slug (e.g. eng) shown in dashboard URLs; passing the uid will not resolve a team. Read the _id from GET /teams/get-all-teams or GET /teams/get-my-teams.
REQUIRED for: GET /on-calls (API-key callers get 400 without it), POST /on-calls, and every team-scoped read that declares it — the /incidents/* and /services/* listings, /escalations, /automation/rules and the integration endpoints.
OPTIONAL for: the incident action endpoints (acknowledge, resolve, escalate, unacknowledge), which derive the organisation from the API key itself; PUT /on-calls/{oncallId} and the on-call layer endpoints, which fall back to the organisation's default team; and org-wide reads such as GET /orgs/info and GET /users, which ignore it.
When supplied it must name a team inside the API key's organisation. A team from another organisation is rejected with 403.
counterId parameter
Your API key. Find it in your Spike dashboard under Settings > API.
The team's _id — a 24-character hex ObjectId, NOT the short uid slug. Read it from GET /teams/get-all-teams.
5f2b1c4d9e8a7b6c5d4e3f21Successful response
public_url is present only when sharing was enabled.
Bad request
Unauthorized
Not found
Last updated