API ডকুমেন্টেশন

আপনার অ্যাপ্লিকেশনের সাথে EstaCaido একীভূত করুন

শুরু করা হচ্ছে

EstaCaido API আপনাকে আপনার মনিটর পরিচালনা করতে, ঘটনা প্রদর্শন করতে, সতর্কবার্তা কনফিগার করতে এবং আপনার নিজের কোড থেকে আরও অনেক কিছু করতে দেয়। সমস্ত API শেষ বিন্দু অনুরোধ এবং প্রতিক্রিয়া দেহের জন্য JSON ব্যবহার করে।

ভিত্তি ইউ- আর- এল

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 বৈকল্পিক মনিটর আই. ডি. অনুসারে ফিল্টার করো

ঘটনা পাওয়া যায়নি

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

সতর্কবার্তা

আপনার মনিটরগুলির জন্য সতর্কবার্তা বিজ্ঞপ্তি কনফিগার করুন ।

অ্যালার্ম তালিকা

GET /api/v1/alerts/

অ্যালার্ম তৈরি করো

POST /api/v1/alerts/
পরামিতি
monitor আবশ্যক মনিটর আই. ডি.
alert_type আবশ্যক এই মানগুলির একটি: email, sms, slack, discord, webhook, pagerduty, teams
recipients আবশ্যক প্রাপকের ঠিকানা অথবা ওয়েবহুক 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 slagg (যেমন, 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 টোকেন প্রাপ্ত করুন