API Reference
Ionhour REST API documentation.
The Ionhour API lets you programmatically manage checks, view incidents, and integrate monitoring into your CI/CD pipelines.
Base URL: https://api.ionhour.com/api
Three API surfaces
Ionhour exposes three programmatic surfaces, each with its own credential. Pick the right one before you write any code:
| Surface | Base path | Credential | Built for |
|---|---|---|---|
| Integration API | /api/v1 | ionh_ API key | Third-party services, CI/CD, machine-to-machine — incidents, status pages, deployments, maintenance windows |
| MCP | /api/mcp | ionh_ API key | AI assistants — broad tool surface over checks, jobs, projects, and more |
| Dashboard REST API | all other /api/* | OAuth session token | The Ionhour dashboard itself, and custom UIs built on the OAuth flow |
ionh_ API keys authenticate only the Integration API and MCP. The dashboard REST endpoints documented in this section require an OAuth session token and reject API keys. If you are integrating an external product or pipeline, start at Integrations.
Quick Start
Verify an API key against the Integration API:
curl -H "Authorization: Bearer ionh_your_api_key" \
https://api.ionhour.com/api/v1/whoamiThe signal ping endpoint requires no authentication at all:
curl https://signal.ionhour.com/api/signals/ping/CHECK_TOKENSee Authentication for creating keys, OAuth token flows, and which credential each endpoint accepts.
API Sections
Integration API
Token-protected REST surface for third-party integrations: incidents, status pages, deployments, webhooks.
Authentication
API keys, token-based auth, rate limits, and CSRF protection.
Checks
Create, list, update, pause, and delete checks. Includes outbound check configuration.
Incidents
List and filter incidents, acknowledge, add notes, and view event timelines.
Signals
Send heartbeat pings, query signal history, and subscribe to real-time updates via SSE.
Status Pages
Manage status pages, components, announcements, and public feeds.
Deployments
Create deployment windows, auto-pause checks, and track deployment history.
Dependencies
Manage external service dependencies and track their health impact.
Escalation Policies
Configure multi-step escalation policies for incident alert routing.
MCP Integration
Connect AI assistants to Ionhour using the Model Context Protocol.
Response Format
Paginated Lists
All list endpoints return paginated responses:
{
"items": [],
"total": 0,
"page": 1,
"itemCount": 0,
"pageCount": 0,
"limit": 20
}Single Resources
Single resource endpoints return the entity directly (no wrapper object).
Errors
Error responses follow a standard format:
{
"statusCode": 400,
"message": "Validation failed",
"error": "Bad Request"
}| Status Code | Meaning |
|---|---|
400 | Validation error or bad request |
401 | Missing or invalid authentication |
403 | Insufficient permissions or CSRF mismatch |
404 | Resource not found |
409 | Conflict (e.g., duplicate resource) |
429 | Rate limit exceeded |