Xuquuqda API

Isku dar EstaCaido la codsiyadaada

Bilow

The EstaCaido API kuu ogolaanaya inaad maamulo monitors aad, arko dhacdooyinka, configure digniinta iyo in ka badan oo ka mid ah koodkaada. dhammaan API endpoints isticmaalaan JSON si ay u codsadaan iyo jawaabta jirka.

URL-ka asalka ah

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

Xaddidaadda

API token kastaa wuxuu sameyn karaa ilaa 100 codsiyada daqiiqada. Dalabaadka ka badan xaddidan ka heli jawaab 429 Too Many Requests.

Adeegga aqoonsiga

isticmaalka token-ku salaysan xaqiijinta ee dhammaan codsiyada API. Ku darto token aad in Authorization header.

Ka hel calaamadda aqoonsiga

POST /api/v1/auth/token/
Dalab
curl -X POST https://www.estacaido.com/api/v1/auth/token/ \
  -H "Content-Type: application/json" \
  -d '{"username": "your@email.com", "password": "yourpassword"}'
Jawaab
{
  "token": "your-api-token-here"
}

Ku isticmaal astaanta xarafka

Authorization: Token your-api-token-here

Monitors

Maareeyaha website-kaaga monitors.

Liiska Monitors

GET /api/v1/monitors/
Jawaab
[
  {
    "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"
  }
]

Abuur Kormeere

POST /api/v1/monitors/
Parameters
name Waa in la raaco Magaca monitorka
domain Waa in la raaco Domain in la daawado, tusaale ahaan example.com
check_interval ikhtiyaari Check interval in seconds, one of 30, 60, 300, 600, 900, 1800, 3600. Default: 300
check_type ikhtiyaari Mid ka mid ah qiimahaan: http, https, ping. Default: https

Ka hel Monitor

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

Ku cusbooneysiiya Monitor

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

Dib u Dhig

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

Monitor-ka jooji

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

Ku soo celi Monitor-ka

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

Ka hel tirakoobka

GET /api/v1/monitors/{id}/statistics/
Parameters
days ikhtiyaari Tirada maalmaha in la ku daray. Default: 30

Dhacdo

Ka eeg dhacdooyinka downtime iyo taariikhdooda.

Liiska Dhacdooyinka

GET /api/v1/incidents/
Parameters
status ikhtiyaari Cirfiiq xaaladda: socda, la xalin
monitor ikhtiyaari Ciwaanka Monitor-ka

Ka hel dhacdo

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

Digniin

Configure ogaysiisyada digniinta ee monitors aad.

Liiska Digniinta

GET /api/v1/alerts/

abuuro

POST /api/v1/alerts/
Parameters
monitor Waa in la raaco ID-ka Monitor-ka
alert_type Waa in la raaco Mid ka mid ah qiimaha: email, sms, slack, discord, webhook, pagerduty, teams
recipients Waa in la raaco Xarunta la soo diray ama webhook URLs
alert_on_down ikhtiyaari U sheeg marka goobta hoos u dhacdo (default: true)
alert_on_recovery ikhtiyaari U sheeg marka goobta soo kabashada (default: true)

Cusbooneysiinta Digniinta

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

Dib u Dhig

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

Dukumiintiyada Xaaladda

abuuro oo maamula boggaga xaaladda dadweynaha.

Liiska Dukumiintiyada Xaaladda

GET /api/v1/status-pages/

Dhis Warqadda Xaaladda

POST /api/v1/status-pages/
Parameters
title Waa in la raaco Magaca bogga xaaladda
slug Waa in la raaco URL slug (tusaale, my-status-page)
description ikhtiyaari Tilmaamaha
is_public ikhtiyaari Samee dadweynaha u furan (default: true)

Kooxaha

Maareeyaha kooxaha helitaanka iyo wada shaqeynta.

Liiska kooxaha

GET /api/v1/teams/

Abuur koox

POST /api/v1/teams/

Ka hel koox

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

Codsiga tusaale

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

Ma diyaar u tahay inaad bilowdo?

Ka diiwaangashan oo bilaash ah oo ka heli API-gaaga si aad u bilowdo isku-darka.

Lacag la'aan ku biir Ka hel API Token