Integrate EstaCaido with your applications
The EstaCaido API lets you manage your monitors, view incidents, configure alerts and more from your own code. All API endpoints use JSON for request and response bodies.
https://www.estacaido.com/api/v1/
Each API token can make up to 100 requests per minute. Requests over that limit get a 429 Too Many Requests response.
Use token-based authentication for all API requests. Include your token in the Authorization header.
/api/v1/auth/token/
curl -X POST https://www.estacaido.com/api/v1/auth/token/ \
-H "Content-Type: application/json" \
-d '{"username": "your@email.com", "password": "yourpassword"}'
{
"token": "your-api-token-here"
}
Authorization: Token your-api-token-here
Manage your website monitors.
/api/v1/monitors/
[
{
"id": 1,
"name": "Production API",
"company": {
"id": 1,
"website": "api.example.com"
},
"check_type": "http",
"check_interval": 300,
"is_active": true,
"is_paused": false,
"last_check_at": "2024-01-15T10:30:00Z",
"created_at": "2024-01-01T00:00:00Z"
}
]
/api/v1/monitors/
name |
Required | Name for the monitor |
domain |
Required | Domain to monitor, for example example.com |
check_interval |
Optional | Check interval in seconds, one of 30, 60, 300, 600, 900, 1800, 3600. Default: 300 |
check_type |
Optional | One of these values: http, https, ping. Default: https |
/api/v1/monitors/{id}/
/api/v1/monitors/{id}/
/api/v1/monitors/{id}/
/api/v1/monitors/{id}/pause/
/api/v1/monitors/{id}/resume/
/api/v1/monitors/{id}/statistics/
days |
Optional | Number of days to include. Default: 30 |
View downtime incidents and their history.
/api/v1/incidents/
status |
Optional | Filter by status: ongoing, resolved |
monitor |
Optional | Filter by monitor ID |
/api/v1/incidents/{id}/
Configure alert notifications for your monitors.
/api/v1/alerts/
/api/v1/alerts/
monitor |
Required | Monitor ID |
alert_type |
Required | One of these values: email, sms, slack, discord, webhook, pagerduty, teams |
recipients |
Required | Recipient addresses or webhook URLs |
alert_on_down |
Optional | Notify when site goes down (default: true) |
alert_on_recovery |
Optional | Notify when site recovers (default: true) |
/api/v1/alerts/{id}/
/api/v1/alerts/{id}/
Create and manage public status pages.
/api/v1/status-pages/
/api/v1/status-pages/
title |
Required | Title for the status page |
slug |
Required | URL slug (e.g., my-status-page) |
description |
Optional | Description text |
is_public |
Optional | Make publicly accessible (default: true) |
Manage team access and collaboration.
/api/v1/teams/
/api/v1/teams/
/api/v1/teams/{id}/
import requests
API_TOKEN = 'your-api-token'
BASE_URL = 'https://www.estacaido.com/api/v1'
headers = {
'Authorization': f'Token {API_TOKEN}',
'Content-Type': 'application/json'
}
# List all monitors
response = requests.get(f'{BASE_URL}/monitors/', headers=headers)
monitors = response.json()
print(monitors)
# Create a new monitor
new_monitor = {
'name': 'My Website',
'domain': 'example.com',
'check_interval': 300
}
response = requests.post(f'{BASE_URL}/monitors/', json=new_monitor, headers=headers)
print(response.json())
const API_TOKEN = 'your-api-token';
const BASE_URL = 'https://www.estacaido.com/api/v1';
const headers = {
'Authorization': `Token ${API_TOKEN}`,
'Content-Type': 'application/json'
};
// List all monitors
fetch(`${BASE_URL}/monitors/`, { headers })
.then(res => res.json())
.then(monitors => console.log(monitors));
// Create a new monitor
fetch(`${BASE_URL}/monitors/`, {
method: 'POST',
headers,
body: JSON.stringify({
name: 'My Website',
domain: 'example.com',
check_interval: 300
})
})
.then(res => res.json())
.then(data => console.log(data));
# List all monitors
curl -X GET https://www.estacaido.com/api/v1/monitors/ \
-H "Authorization: Token your-api-token"
# Create a new monitor
curl -X POST https://www.estacaido.com/api/v1/monitors/ \
-H "Authorization: Token your-api-token" \
-H "Content-Type: application/json" \
-d '{"name": "My Website", "domain": "example.com", "check_interval": 300}'
Sign up for free and get your API token to start integrating.
Sign Up Free Get API Token