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 _id to scope the request

Your typical flow will look like this:

  1. Generate your API key from the Spike dashboard (find it herearrow-up-right)

  2. Fetch your teams using the API (learn morearrow-up-right)

  3. Use the team ID in subsequent requests

The API is REST-based and returns JSON responses.


Base URL

https://api.spike.sh

All 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/apiarrow-up-right

circle-info

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

Call the Teams endpoint

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