Інтегрувати EstaCaido з вашими програмами
API EstaCaido дає змогу керувати моніторами, переглядати інциденти, налаштовувати сповіщення та багато іншого з вашого коду. Усі кінцеві точки API використовують JSON у запитах і відповідях.
https://www.estacaido.com/api/v1/
Кожен токен API може надсилати не більше 100 запитів на хвилину. На запити понад ліміт надходить відповідь 429 Too Many Requests.
Використовуйте токен для автентифікації всіх запитів до API. Передавайте токен у заголовку Authorization.
/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
Керуйте моніторами своїх сайтів.
/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 |
Обов'язково | Назва монітора |
domain |
Обов'язково | Домен для моніторингу, наприклад example.com |
check_interval |
Необов'язково | Інтервал перевірки в секундах, одне зі значень 30, 60, 300, 600, 900, 1800, 3600. За замовчуванням: 300 |
check_type |
Необов'язково | Одне зі значень: http, https, ping. За замовчуванням: 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 |
Необов'язково | Кількість днів у вибірці. За замовчуванням: 30 |
Переглядайте інциденти простою та їхню історію.
/api/v1/incidents/
status |
Необов'язково | Фільтр за статусом: ongoing, resolved |
monitor |
Необов'язково | Фільтр за ID монітора |
/api/v1/incidents/{id}/
Налаштуйте сповіщення для своїх моніторів.
/api/v1/alerts/
/api/v1/alerts/
monitor |
Обов'язково | ID монітора |
alert_type |
Обов'язково | Одне зі значень: email, sms, slack, discord, webhook, pagerduty, teams |
recipients |
Обов'язково | Адреси отримувачів або URL вебхуків |
alert_on_down |
Необов'язково | Сповіщати, коли сайт недоступний (за замовчуванням: true) |
alert_on_recovery |
Необов'язково | Сповіщати, коли сайт відновлено (за замовчуванням: true) |
/api/v1/alerts/{id}/
/api/v1/alerts/{id}/
Створюйте публічні сторінки статусу та керуйте ними.
/api/v1/status-pages/
/api/v1/status-pages/
title |
Обов'язково | Заголовок сторінки статусу |
slug |
Обов'язково | Слаг URL (наприклад, my-status-page) |
description |
Необов'язково | Текст опису |
is_public |
Необов'язково | Зробити загальнодоступним (за замовчуванням: true) |
Керуйте доступом команди та спільною роботою.
/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}'
Зареєструйтеся безкоштовно та отримайте токен API, щоб почати інтеграцію.
Зареєструватися безкоштовно Отримати токен API