İçeriğe geç

REST API

API token ile kimlik doğrulayın; monitörleri, olayları ve durum sayfalarını HTTP üzerinden yönetin.

Paneldeki her şey /api/v1 altındaki JSON REST API ile de kullanılabilir. Her uç noktanın doğruluk kaynağı OpenAPI tanımıdır.

Kimlik doğrulama

API token’ları Takım ve İşletme planlarında vardır. Bir yönetici ya da sahip Ayarlar → API token’ları altından bir token oluşturur: bir ad, bir kapsam ve isterseniz bir son kullanma tarihi. Token — hmd_ ile başlar — yalnızca bir kez, oluşturulduktan hemen sonra gösterilir; Heimdall yalnızca özetini saklar, bu yüzden o anda gizli bilgi kasanıza kaydedin. Her istekte gönderin:

curl
curl -s https://heimdall.warewave.tech/api/v1/monitors \
  -H "Authorization: Bearer $HEIMDALL_API_TOKEN"
KapsamToken ne yapabilir
readBir izleyicinin gördüğü her şey: monitörler, sonuçlar, olaylar, durum sayfaları, nöbet, mesajlar
writeEk olarak bir üyenin yapabildikleri: monitör oluşturma ve değiştirme, olayı erteleme ve çözme, durum sayfası güncellemesi ve bakım duyurusu yayınlama
  • Bir token tek bir organizasyona aittir. Başka bir organizasyon için orada token oluşturun.
  • Token’lar, kapsamı ne olursa olsun profillere, kullanıcılara, API token’larına, faturalandırmaya ve organizasyon ayarlarına erişemez.
  • 401, kod invalid_token: token bilinmiyor, iptal edilmiş ya da süresi dolmuş.
  • 402, kod plan_limit: organizasyonun planı artık API’yi içermiyor. Token’lar saklanır ve plan yükseltildiğinde yeniden çalışır.
  • 403, kod forbidden: token’ın kapsamı isteğe izin vermiyor; örneğin read token’ıyla POST.
  • 429: bu token’la çok fazla istek; Retry-After kaç saniye beklemeniz gerektiğini söyler.
  • Token’ı Ayarlar → API token’ları altından iptal edin; hemen çalışmaz olur.

Sık kullanılan uç noktalar

MetotYolAmaç
GET/api/v1/monitorsMonitörleri listele
POST/api/v1/monitorsMonitör oluştur
POST/api/v1/monitors/{id}/pauseMonitörü duraklat
GET/api/v1/incidentsOlayları listele
POST/api/v1/incidents/{id}/ackOlayı üstlen
POST/api/v1/incidents/{id}/snoozeEscalation’ı ertele
GET/api/v1/events/streamCanlı olaylar (Server-Sent Events)

Canlı olaylar

/api/v1/events/stream, monitör durum değişikliklerini ve olay güncellemelerini taşıyan bir Server-Sent Events akışıdır. Panelin kendisi de bunu kullanır.

Olay
event: monitor.state
data: {"monitor_id":"mon_01J9Z…","state":"down","regions":{"ist":"failing","stc":"failing","fra":"failing"}}