API Reference
The Uptime Monitor API enables you to programmatically manage monitors, contacts, and incidents. Build powerful integrations and automate your monitoring workflows.
Base URL: https://api.uptime-monitor.io/api
All API requests must include authentication using Bearer tokens. See Authentication for details.
The API uses a point-based rate limiting system (5000 points/hour). See Rate Limiting for details.
Simple Authentication
Use API keys with Bearer authentication. Generate and manage keys directly from your account settings.
RESTful Design
Standard HTTP methods and JSON request/response format. Easy to integrate with any programming language.
Fast & Reliable
Low latency responses with 99.9% uptime SLA. Rate limits ensure fair usage across all customers.
Secure by Default
All API traffic is encrypted with TLS 1.2+. API keys are account-scoped with granular permissions.
Quick Start
1. Generate an API Key
Go to your Account Settings and create a new API key in the API section. Store it securely - you won't be able to see it again.
2. Make Your First Request
Test your API key by listing your monitors:
curl -X GET https://api.uptime-monitor.io/api/monitors \
-H "Authorization: Bearer um_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"3. Handle the Response
All successful responses return JSON with a status of “ok”:
{
"status": "ok",
"monitors": [
{
"id": "507f1f77bcf86cd799439011",
"name": "Production API",
"url": "https://api.example.com",
"type": "HTTPS",
"interval": 60,
"status": "ONLINE"
}
],
"pagination": {
"page": 1,
"per_page": 50,
"total": 1,
"total_pages": 1
}
}Available Resources
Contacts API
Manage notification channels including email, SMS, webhooks, Slack, Discord, PagerDuty, and more. Configure who gets alerted when monitors detect issues.
GET /api/contactsPOST /api/contactsPUT /api/contacts/:idDELETE /api/contacts/:idMonitors API
Create and manage HTTPS, TCP, and Ping monitors. Configure check intervals, regions, assertions, and notification rules.
GET /api/monitorsPOST /api/monitorsPUT /api/monitors/:idDELETE /api/monitors/:idPOST /api/monitors/:id/pausePOST /api/monitors/:id/resumeIncidents API
View monitor incidents and downtime history.
GET /api/incidentsGET /api/incidents/:idPATCH /api/incidents/:id/commentStatus Pages API
Create and manage public status pages to share the health status of your monitored services with customers or team members.
GET /api/status_pagesPOST /api/status_pagesPATCH /api/status_pages/:idDELETE /api/status_pages/:idResponse Format
All API responses follow a consistent JSON format:
Success Response
{
"status": "ok",
"data": { ... },
"pagination": { ... }
}Error Response
{
"status": "error",
"error": {
"code": "VALIDATION_ERROR",
"message": "Invalid request data"
}
}