បញ្ចូល EstaCaido ជាមួយកម្មវិធីរបស់អ្នក
The EstaCaido API allows you to programmatically manage your monitors, view incidents, configure alerts, and more. All API endpoints use JSON for request and response bodies.
https://www.estacaido.com/api/v1/
API requests are limited to 100 requests per minute per API token. Exceeding this limit will result in 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": 5,
"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 (e.g., example.com) |
check_interval |
Optional | Check interval in minutes (1, 3, 5, 10, 15, 30, 60). Default: 5 |
check_type |
Optional | 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 (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 | 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': 5
}
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: 5
})
})
.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": 5}'
Sign up for free and get your API token to start integrating.
ចុះឈ្មោះដោយឥតគិតថ្លៃ Get API Token