API ලේඛන

ඔබේ යෙදුම් සමග EstaCaido ඒකාබද්ධ

ආරම්භ කිරීම

මෙම EstaCaido API ඔබ ඔබේ මොනිටර කළමනාකරණය කිරීමට ඉඩ, සිදුවීම් දර්ශනය, ඔබේම කේතය සිට අනතුරු ඇඟවීම් සහ තවත් සැකසීමට. සියලු API අවසන් ස්ථානයන් ඉල්ලීම සහ ප්රතිචාර ශරීර සඳහා JSON භාවිතා.

මූලික URL

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

අනුපාත සීමා

එක් එක් API ටොකන් මිනිත්තු 100 ඉල්ලීම් දක්වා කළ හැකි. එම සීමාව ඉක්මවා ඉල්ලීම් 429 Too Many Requests ප්රතිචාරයක් ලබා ගන්න.

අවසරදීම

සියලු API ඉල්ලීම් සඳහා ටොකන්-පාදක කරගත් සහතික කිරීම භාවිතා කරන්න. බලපත්ර ශීර්ෂය තුළ ඔබේ ටොකන් ඇතුළත් කරන්න.

අවසරදීමේ ටොකනය ලබාගන්න

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

අනතුරු ඇඟවීම්

ඔබේ මොනිටර සඳහා අනතුරු ඇඟවීම් දැනුම්දීම් සකසන්න.

අනතුරු ඇඟවීම් ලැයිස්තුව

GET /api/v1/alerts/

අනතුරු ඇඟවීමක් නිර්මාණය කරන්න

POST /api/v1/alerts/
පරාමිතීන්
monitor අවශ්ය දර්ශක ID
alert_type අවශ්ය මෙම අගයන් එක්: email, sms, slack, discord, webhook, pagerduty, teams
recipients අවශ්ය ලැබුම්කරුගේ ලිපින හෝ webhook URL
alert_on_down විකල්ප අඩවිය බිඳවැටෙන විට දැනුම් දෙන්න (පෙරනිමි: සත්‍ය)
alert_on_recovery විකල්ප අඩවිය යළි ලබාගත් විට දැනුම් දෙන්න (පෙරනිමි: සත්‍ය)

යාවත්කාලීන අනතුරු ඇඟවීම

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

අනතුරු ඇඟවීම මකන්න

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

තත්ව පිටු

නිර්මාණය සහ පොදු තත්ත්වය පිටු කළමනාකරණය.

තත්ව පිටු ලැයිස්තුගත කරන්න

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 ටොකන් ලබා ගන්න