Getting started
Welcome to Spike's API to programmatically manage incidents and on-call schedules.
Spike’s API lets you programmatically manage incidents, teams, users, on-call schedules, and more.
You can use the API to integrate Spike with your systems, automate workflows, or build custom tooling around incident response.
Most API requests require:
an API key for authentication
a team
_idto scope the request
Your typical flow will look like this:
Generate your API key from the Spike dashboard (find it here)
Fetch your teams using the API (learn more)
Use the team ID in subsequent requests
The API is REST-based and returns JSON responses.
Base URL
https://api.spike.shAll API requests should be made to this base URL.
Authentication
Spike API uses API key authentication.
Include your API key in every request using the header below:
You can generate your API key from: https://app.spike.sh/api
The API key has full access to your organization’s API capabilities. Granular permissions (read-only, write-only, etc.) are not supported at the moment.
Team context
Many Spike API endpoints are scoped to a team.
For these requests, you must include the team _id in the header:
How to get your team ID
Example:
From the response, copy the _id of the team you want to use.
Example request
This will return a list of incidents for the given team.
Notes
You can download the complete OpenAPI specification directly from this documentation.
Most API routes require a x-team-id header. Spike operates with team-scoped data — incidents, integrations, escalation policies, and alert routing rules belong to a specific team.
Because of this, requests are handled one team at a time. You cannot query or operate across multiple teams in a single request.
Try it out
This documentation is interactive.
You can test API endpoints directly by clicking the “Test it” button on any route and providing your API key and team ID.
Feedback
We’re actively improving the API and adding more capabilities.
If you have feedback, questions, or run into issues, reach out to us via the chat widget in the bottom-right corner.
Last updated