Àwọn Àkọsílẹ̀

Fi EstaCaido pamọ́ sí àwọn ìṣàmúlò-ètò rẹ̀

Ìṣàmúlò-ètò

EstaCaido API ná láti mú òǹlò rẹ̀ lágbára lórí àwọn mónẹ́ẹ̀lì rẹ̀, wó àwọn àgbègbè, kọ́òdù àwọn ìṣàfarawé àwọn ìṣàmúlò-ètò àti àwọn mìíràn láti inú ìṣàmúlò-ètò rẹ̀. Gbogbo àwọn ààyè API tí a lò ní JSON fún àwọn ẹ̀yàn ìtàn atí àwọn ààyè ìṣàmúlò-ètò.

URL Ìdájútó

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

Àwọn Ìgúnrégé Ìjáde

Each API token can make up to 100 requests per minute. Requests over that limit get a 429 Too Many Requests response.

Àwọn Àmì-ìwé

Lo ìṣàfihàn ààtòjútó àìdálẹ̀ àìdálẹ̀ fún gbogbo àwọn ìtàn API. Fi àìdálẹ̀ rẹ̀ sínú àkọlé Àìdálẹ̀.

Gba àwọn àmì-ìwé ìṣàfarawé

POST /api/v1/auth/token/
Àwọn Ìtàn
curl -X POST https://www.estacaido.com/api/v1/auth/token/ \
  -H "Content-Type: application/json" \
  -d '{"username": "your@email.com", "password": "yourpassword"}'
Àwọn ìṣàmúlò-ètò
{
  "token": "your-api-token-here"
}

Ló àtòjọ-ẹ̀yàn nínú àkọlé Àwọn Ààyè-iṣẹ́

Authorization: Token your-api-token-here

Àwọn Àkọlé

Ṣàrà àwọn ìṣàmúlò-ètò rẹ̀.

Àtòjọ Àwọn Àkọ́lé

GET /api/v1/monitors/
Àwọn ìṣàmúlò-ètò
[
  {
    "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"
  }
]

Ṣẹda Atẹle

POST /api/v1/monitors/
Àwọn Àtòjọ-ẹ̀yàn
name Tí a fẹ́ Orúkọ fún àwọn ìṣàfihàn
domain Tí a fẹ́ Àwọn dómén láti wòye, àwọn ààyè-iṣẹ́ example.com
check_interval Àwọn ìkúndùǹ Àwọn ìparí ìṣàmúlò-ètò ìṣàyẹwo nínú àwọn ìṣísẹ̀, ọkan ninu 30, 60, 300, 600, 900, 1800, 3600. Àtòjọ-ẹ̀yàn: 300
check_type Àwọn ìkúndùǹ Àwọn fálù yìí: http, https, ping. Àtòjọ-ẹ̀yàn: https

Gba àwòrán

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

Àwọn Àtòjọ-ẹ̀yàn

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

Pa Àwọn Àkóónú Rẹ́

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

Àwọn Àkọ́lé

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

Àwọn Ààyè-iṣẹ́

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

Gba àwọn ìtàn ìṣàmúlò-ètò

GET /api/v1/monitors/{id}/statistics/
Àwọn Àtòjọ-ẹ̀yàn
days Àwọn ìkúndùǹ Àwọn ọjọ́ tí a fẹ́ láti fàyè gba. Àtòjọ-ẹ̀yàn: 30

Àwọn Ìtàn

Wó àwọn àgbègbè àwọn ààyè-iṣẹ́ àti ìtàn wọn.

Àtòjọ àwọn ìṣàmúlò-ètò

GET /api/v1/incidents/
Àwọn Àtòjọ-ẹ̀yàn
status Àwọn ìkúndùǹ Àwọn ìṣàmúlò-ètò
monitor Àwọn ìkúndùǹ Àwọn ààtò àtòjọ-ẹ̀yàn

Gba àwọn àgbéwọlé

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

Àwọn Ìṣàmúlò-ètò

Àtòjọ-ẹ̀yàn àwọn ìṣàmúlò-ètò fún àwọn ìṣàmúlò-ètò rẹ.

Àwọn Àlàyé Àìṣàmúlò-ètò

GET /api/v1/alerts/

Ṣẹ̀dà àwọn ìṣàmúlò-ètò

POST /api/v1/alerts/
Àwọn Àtòjọ-ẹ̀yàn
monitor Tí a fẹ́ Àwọn Àkọ́lé
alert_type Tí a fẹ́ Ọkan ninu àwọn fálù yìí: email, sms, slack, discord, webhook, pagerduty, teams
recipients Tí a fẹ́ Àdírẹ̀sì àwọn ìṣàmúlò-ètò tàbí URL̀ wẹ́ẹ̀bù
alert_on_down Àwọn ìkúndùǹ Fi àkọlé àwòrán pamọ́ látigbá tí ààyè-iṣẹ́ náà bá kù (ò̀tọ́: òótọ́)
alert_on_recovery Àwọn ìkúndùǹ Fi àkọlé silẹ látigbá tí ààyè-iṣẹ́ náà bá dáábòónú (ò̀tọ́: òótọ́)

_Ṣàfikún Àìkúndùn

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

Pa Àìyìn Rẹ́

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

Àwọn ojú-ìwé ìṣàfarawé

Ṣẹ̀dà àti ìrànwọ́ àwọn ojú-ìwé ìṣàfarawé àwọn ìṣàmúlò-ètò ìtàn.

Àwọn ojú-ìwé ìṣàmúlò-ètò àtòjọ

GET /api/v1/status-pages/

Ṣẹ̀dà ojú-ìwé ìṣàmúlò-ètò

POST /api/v1/status-pages/
Àwọn Àtòjọ-ẹ̀yàn
title Tí a fẹ́ Àkọ́lé fún ojú-ìwé ìṣàfarawé
slug Tí a fẹ́ URL slug (gẹ́gẹ́ bíi ojú-ìwé ìṣàfarawékọ́ mìíràn)
description Àwọn ìkúndùǹ Àwọn àkọlé
is_public Àwọn ìkúndùǹ Fi àwọn ààyè-iṣẹ́ pamọ́ (òòró: òótọ́)

Àwọn

Ṣàrà ìṣàmúlò-ètò àti ìṣàmúlò-ètò.

Àtòjọ-ẹ̀yàn

GET /api/v1/teams/

Ṣẹ̀dà Àwọn Àwọn Àkọ́gbè

POST /api/v1/teams/

Gba àwọn ààyè-iṣẹ́

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

Àwọn Ààtòjú àwọn Àwọn Ààtò

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}'

Tí o fẹ́ láti bẹrẹ?

Ṣàfihàn fun ọ̀fẹ̀ àti gba API rẹ̀ tokè láti bẹrẹ ìdapọ̀.

Forukọsilẹ Ọfẹ Gba Tókè API