API Reference
Programmatic access to ReliaPulse.
Overview
The ReliaPulse API is a RESTful API that allows you to:
- Manage components, incidents, and maintenances programmatically
- Integrate with CI/CD pipelines
- Build custom integrations
- Automate status updates
Base URL
https://your-domain.com/api/v1For local development:
http://localhost:3000/api/v1Interactive API Explorer
Access the Swagger UI documentation at:
https://your-domain.com/api/docsThis provides:
- Interactive endpoint testing
- Request/response schemas
- Authentication testing
Quick Start
1. Create an API Key
- Go to Settings > API Keys
- Click "New API Key"
- Select permissions
- Copy the key (shown only once)
2. Make Your First Request
curl -X GET https://your-domain.com/api/v1/components \
-H "Authorization: Bearer sk_live_xxxxxxxx"3. Handle the Response
{
"data": [
{
"id": "comp_123",
"name": "API Server",
"type": "ENDPOINT",
"status": "operational"
}
],
"meta": {
"total": 1,
"page": 1,
"pageSize": 20
}
}Authentication
All API requests require authentication via API key:
Authorization: Bearer sk_live_xxxxxxxxSee Authentication for details.
Response Format
All responses follow a consistent format:
Success Response
{
"data": { ... },
"meta": {
"total": 100,
"page": 1,
"pageSize": 20
}
}Error Response
{
"error": {
"code": "NOT_FOUND",
"message": "Component not found",
"details": {}
}
}Common Patterns
Pagination
GET /api/v1/components?page=1&pageSize=20Filtering
GET /api/v1/components?type=ENDPOINT&status=operationalSorting
GET /api/v1/components?sortBy=name&sortOrder=ascExpanding Related Data
GET /api/v1/components/{id}?include=subComponents,monitorsAPI Endpoints
Core Resources
| Resource | Endpoint | Description |
|---|---|---|
| Components | /components | Services and infrastructure |
| Incidents | /incidents | Service disruptions |
| Maintenances | /maintenances | Scheduled downtime |
| Status Pages | /status-pages | Public status pages |
| Subscribers | /subscribers | Notification recipients |
Configuration
| Resource | Endpoint | Description |
|---|---|---|
| API Keys | /api-keys | Manage API access |
| Notification Channels | /notification-channels | Alert configuration |
| SLA | /sla | Service level agreements |
| Integrations | /integrations | External services |
Public API
Public endpoints require no authentication:
| Endpoint | Description |
|---|---|
/public/status/{slug} | Public status data |
/public/status/{slug}/incidents | Public incidents |
/public/status/{slug}/feed | RSS/Atom/JSON feed |
Rate Limits
| Tier | Limit |
|---|---|
| Default | 100 requests/minute |
| Per endpoint | 20 requests/minute |
See Rate Limits for details.
SDK Support
Official SDK support coming soon. For now, use any HTTP client:
curl
curl -X GET https://api.example.com/api/v1/components \
-H "Authorization: Bearer sk_live_xxx"JavaScript (fetch)
const response = await fetch('https://api.example.com/api/v1/components', {
headers: {
'Authorization': 'Bearer sk_live_xxx'
}
});
const data = await response.json();Python (requests)
import requests
response = requests.get(
'https://api.example.com/api/v1/components',
headers={'Authorization': 'Bearer sk_live_xxx'}
)
data = response.json()Webhook Integration
Receive real-time updates via webhooks:
- Create a webhook subscriber
- Configure endpoint URL
- Receive POST requests on events
See Subscribers for webhook setup.
API Versioning
The current API version is v1. The version is included in the URL path:
/api/v1/componentsBreaking changes will result in a new version (v2). Deprecation notices will be provided at least 6 months before version sunset.
Support
- OpenAPI Spec: Available at
/api/docs - GitHub Issues: Report bugs and request features
- Documentation: You're reading it!