API dokumentatsioon

Integreeri EstaCaido oma rakendustega

Alustamine

EstaCaido API võimaldab teil hallata oma monitorid, vaadata intsidente, seadistada teateid ja rohkem oma koodi. Kõik API tulemusnäitajad kasutavad JSON taotluse ja vastuse asutused.

Baas- URL

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

Hinnapiirangud

Iga API märgi võib tasa teha kuni 100 päringuid minutis. Taotlused üle selle piirmäära saada 429 Too Many Requests vastus.

Autentimine

Kasuta žetoonil põhinevat autentimist kõigi API päringute puhul. Lisa oma märgis autentimise päisesse.

Hangi autentimise märk

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

Kasuta märgist autentimise päises

Authorization: Token your-api-token-here

Monitorid

Manage oma veebilehe monitorid.

Nimekiri Monitorid

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

Loo monitor

POST /api/v1/monitors/
Parameetrid
name Nõutav Monitori nimi
domain Nõutav Jälgitav domeen, näiteks example.com
check_interval Vabatahtlik Kontrolli intervalli sekundites, üks 30, 60, 300, 600, 900, 1800, 3600. Vaikimisi: 300
check_type Vabatahtlik Üks neist väärtustest: http, https, ping. Vaikimisi: https

Hangi jälgija

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

Uuenda jälgijat

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

Kustuta jälgija

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

Paus Monitor

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

Jätka jälgimist

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

Hangi jälgija statistika

GET /api/v1/monitors/{id}/statistics/
Parameetrid
days Vabatahtlik Kaasatavate päevade arv. Vaikimisi: 30

Intsidendid

Vaata aegseisakide juhtumeid ja nende ajalugu.

Nimekiri Intsidentsid

GET /api/v1/incidents/
Parameetrid
status Vabatahtlik Filter oleku järgi: käimas, lahendatud
monitor Vabatahtlik Filter monitori ID järgi

Saage vahejuhtum

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

Hoiatused

Seadista häireteateid monitoridele.

Nimekiri

GET /api/v1/alerts/

Loo häire

POST /api/v1/alerts/
Parameetrid
monitor Nõutav Monitori ID
alert_type Nõutav Üks neist väärtustest: email, sms, slack, discord, webhook, pagerduty, teams
recipients Nõutav Saaja aadressid või veebikonksu URL- id
alert_on_down Vabatahtlik Teata, kui saidi alla läheb (vaikimisi: true)
alert_on_recovery Vabatahtlik Teavitage, kui saidi taastub (vaikimisi: true)

Uuenda häiret

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

Kustuta häire

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

Olekuleheküljed

Luua ja hallata avaliku staatuse lehekülgi.

Nimekirja oleku leheküljed

GET /api/v1/status-pages/

Loo oleku lehekülg

POST /api/v1/status-pages/
Parameetrid
title Nõutav Olekulehekülje pealkiri
slug Nõutav URL nälkjas (nt minu staatus-lehekülg)
description Vabatahtlik Kirjeldus
is_public Vabatahtlik Avalikkusele kättesaadavaks tegemine (vaikimisi: true)

Meeskonnad

Juhtida meeskonna juurdepääsu ja koostööd.

Nimekiri Meeskonnad

GET /api/v1/teams/

Loo meeskond

POST /api/v1/teams/

Hangi meeskond

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

Koodi näited

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

Oled valmis alustama?

Registreeru tasuta ja saada oma API märgi alustada integreerimist.

Registreeru tasuta Hangi API märgis