EstaCaido программасын колдонмолорго интеграциялоо
EstaCaido API сиздин мониторлоруңузду башкарууга, окуяларды көрүү, эскертүүлөрдү конфигурациялоо жана башкалар үчүн өз кодуңуздан мүмкүндүк берет. Бардык 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 |
Котормо | Check interval in seconds, one of 30, 60, 300, 600, 900, 1800, 3600. Default: 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 |
Котормо | Сатып алуу |
monitor |
Котормо | Монитор ID боюнча фильтрлөө |
/api/v1/incidents/{id}/
Мониторлор үчүн эскертүүлөрдү конфигурациялоо.
/api/v1/alerts/
/api/v1/alerts/
monitor |
Зарыл | Монитор ID |
alert_type |
Зарыл | Бул маанилердин бири: email, sms, slack, discord, webhook, pagerduty, teams |
recipients |
Зарыл | Алуучулардын адрестери же webhook URLs |
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-токен алуу