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 ضروری حاصل کرنے والے کے پتہ یا ویب ہوک URLs
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 ٹوکن حاصل کریں