Тохиргооны баримт бичиг

EstaCaido-ийг програмуудтайгаа нэгтгэх

Эхлэх

EstaCaido API нь таныг өөрийн кодоос хянах, үйл явдлыг харах, анхааруулга тохируулах, бусад зүйлийг удирдах боломжийг олгодог. Бүх API эцсийн цэгүүд хүсэлт, хариултын биед JSON ашигладаг.

Үндсэн URL

https://www.estacaido.com/api/v1/

Хязгаарлалтууд

API-ийн тэмдэгт бүр минутанд 100 хүсэлтийг хийх боломжтой. Энэ хэмжээнээс хэтэрсэн хүсэлтүүд 429 Too Many Requests хариуг авна.

Ангилал

Бүх API хүсэлтүүдэд токен дээр суурилсан баталгаажуулалтыг ашиглах. Токеноо Authorization-ийн толгойд оруулна уу.

Ангилал

POST /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

Хянагч

Вебсайтынхаа хяналтыг удирдах.

Хянагчдын жагсаалт

GET /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"
  }
]

Монитор үүсгэх

POST /api/v1/monitors/
Параметрүүд
name Заавал Хянагчдын нэр
domain Заавал Хянах домен, жишээ нь example.com
check_interval Зөвхөн сонгосон Хоёр дахь шалгах хугацаа секундээр, 30, 60, 300, 600, 900, 1800, 3600- ийн нэг. Бүдүүн: 300
check_type Зөвхөн сонгосон Эдгээрийн нэг: http, https, ping. Өгөгдсөн: https

Хянагчийг авах

GET /api/v1/monitors/{id}/

Шинэчлэх

PUT /api/v1/monitors/{id}/

Хянагчийг устгах

DELETE /api/v1/monitors/{id}/

Хянагчийг түр зогсоох

POST /api/v1/monitors/{id}/pause/

Хянагчийг үргэлжлүүл

POST /api/v1/monitors/{id}/resume/

Хянагч статистикийг авах

GET /api/v1/monitors/{id}/statistics/
Параметрүүд
days Зөвхөн сонгосон Өдөрт багтаах хоногийн тоо. Өгөгдөл: 30

Тоглоомууд

Үгүй болсон үйлдлүүд болон тэдний түүхийг харах.

Тоглоомын жагсаалт

GET /api/v1/incidents/
Параметрүүд
status Зөвхөн сонгосон Бүтэцээр нь шүүх: үргэлжилж байгаа, шийдэгдсэн
monitor Зөвхөн сонгосон Монитор ID- ээр шүүх

Тоглоомын мэдээ авах

GET /api/v1/incidents/{id}/

Сэтгэгдэл

Configure alert notifications for your monitors.

Сүүлд үзсэн

GET /api/v1/alerts/

Сэтгэгдэл үүсгэх

POST /api/v1/alerts/
Параметрүүд
monitor Заавал Дисплейний ID
alert_type Заавал Эдгээрийн нэг: email, sms, slack, discord, webhook, pagerduty, teams
recipients Заавал Хариулт:
alert_on_down Зөвхөн сонгосон Сайт унтраахад мэдэгдэх (Өндөржүүлсэн: үнэн)
alert_on_recovery Зөвхөн сонгосон Сайт сэргээхэд мэдэгдэх (Өндөржүүлсэн: үнэн)

Сэрэмжлүүлэг шинэчлэх

PUT /api/v1/alerts/{id}/

Сэтгэгдэл устгах

DELETE /api/v1/alerts/{id}/

Бүтэц хуудас

Create and manage public status pages.

Бүх хуудас

GET /api/v1/status-pages/

Бүтээгдэхүүний хуудас

POST /api/v1/status-pages/
Параметрүүд
title Заавал Бүтээгдэхүүний нэр:
slug Заавал URL-ийн бөглөрөл (жишээ нь, my-status-page)
description Зөвхөн сонгосон Тодорхойлолт
is_public Зөвхөн сонгосон Олон нийтэд нээлттэй болгох (Өндөржүүлсэн: үнэн)

Багууд

Багийн нэвтрэх эрх, хамтын ажиллагааг удирдана.

Багийн жагсаалт

GET /api/v1/teams/

Багийг үүсгэх

POST /api/v1/teams/

Багийг авах

GET /api/v1/teams/{id}/

Кодын жишээ

Python

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())

JavaScript

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));

cURL

# 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-ийн түлхүүрийг авах