EstaCaido'i uygulamalarınızla entegre edin
EstaCaido API'si, monitörlerinizi yönetmenizi, olayları görüntülemenizi, uyarıları yapılandırmanızı ve daha fazlasını kendi kodunuzdan yapmanızı sağlar. Tüm API uç noktaları istek ve yanıt gövdeleri için JSON kullanır.
https://www.estacaido.com/api/v1/
Her API belirteci dakikada en fazla 100 istek yapabilir. Sınırı aşan isteklere 429 Too Many Requests yanıtı verilir.
Tüm API istekleri için belirteç tabanlı kimlik doğrulamayı kullanın. Belirtecinizi Authorization başlığına ekleyin.
/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
Web sitesi monitörlerinizi yönetin.
/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 |
Zorunlu | Monitörün adı |
domain |
Zorunlu | İzlenecek alan adı, örneğin example.com |
check_interval |
İsteğe bağlı | Saniye cinsinden kontrol aralığı, şunlardan biri: 30, 60, 300, 600, 900, 1800, 3600. Varsayılan: 300 |
check_type |
İsteğe bağlı | Şu değerlerden biri: http, https, ping. Varsayılan: 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 |
İsteğe bağlı | Dahil edilecek gün sayısı. Varsayılan: 30 |
Kesinti olaylarını ve geçmişlerini görüntüleyin.
/api/v1/incidents/
status |
İsteğe bağlı | Duruma göre filtrele: ongoing, resolved |
monitor |
İsteğe bağlı | Monitör ID'sine göre filtrele |
/api/v1/incidents/{id}/
Monitörleriniz için uyarı bildirimlerini yapılandırın.
/api/v1/alerts/
/api/v1/alerts/
monitor |
Zorunlu | Monitör ID'si |
alert_type |
Zorunlu | Şu değerlerden biri: email, sms, slack, discord, webhook, pagerduty, teams |
recipients |
Zorunlu | Alıcı adresleri veya webhook URL'leri |
alert_on_down |
İsteğe bağlı | Site çöktüğünde bildir (varsayılan: true) |
alert_on_recovery |
İsteğe bağlı | Site düzeldiğinde bildir (varsayılan: true) |
/api/v1/alerts/{id}/
/api/v1/alerts/{id}/
Herkese açık durum sayfaları oluşturun ve yönetin.
/api/v1/status-pages/
/api/v1/status-pages/
title |
Zorunlu | Durum sayfasının başlığı |
slug |
Zorunlu | URL kısa adı (örn. my-status-page) |
description |
İsteğe bağlı | Açıklama metni |
is_public |
İsteğe bağlı | Herkese açık yap (varsayılan: true) |
Ekip erişimini ve iş birliğini yönetin.
/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}'
Ücretsiz kaydolun ve entegrasyona başlamak için API belirtecinizi alın.
Ücretsiz Kaydolun API belirteci al