Geliştiriciler · REST API

REST API hızlı başlangıç

Beş dakikada ilk isteğiniz. Bütün API aynı birkaç kurala uyar: oluştururken yalnız gerekenleri gönderin, her liste aynı biçimde sayfalanır, güncelleme PATCH'tir, hatalar makinece okunur bir kod taşır.

Temel adres
https://rintup.com/api/v1

1. API anahtarı oluşturun

Panelde Ayarlar > API anahtarları sayfasından yeni bir anahtar oluşturun ve erişimini seçin: yalnız okuma ya da okuma ve yazma. Anahtar yalnız bir kez gösterilir; güvenli bir yerde saklayın.

Authorization: Bearer rup_live_...

Anahtar bir çalışma alanına bağlıdır; her istekte Authorization başlığıyla gönderin. Başka bir çalışma alanının kaydı hiçbir zaman dönmez (404).

API anahtarlarına gidin

2. İlk monitörünüz: tek satır

Zorunlu yalnız tür ve o türün hedefi. Geri kalan her şeyin makul bir varsayılanı vardır: ad adresten türetilir, kontrol aralığı ve kontrol lokasyonları paketinize göre seçilir.

curl
curl -X POST https://rintup.com/api/v1/monitors -H "Authorization: Bearer rup_live_..." -H "Content-Type: application/json" -d '{"type":"http","http":{"url":"https://example.com"}}'

Cevap 201 Created ve oluşan kaydın tamamıdır (varsayılanlar dolu); Location başlığı kaydın adresini verir. Hangi alanların varsayılanı olduğu tam başvuruda (default) görünür.

3. Listeleme ve sayfalama

Her liste aynı zarfı döner: data kayıtları, nextCursor sonraki sayfanın imlecidir.

curl
curl "https://rintup.com/api/v1/monitors?limit=50" -H "Authorization: Bearer rup_live_..."
200 OK
{
  "data": [ { "id": "…", "name": "example.com", "status": "up", … } ],
  "nextCursor": "eyJ…"
}

Sonraki sayfa için nextCursor değerini aynen cursor parametresiyle gönderin. nextCursor null ise son sayfadasınız. Sayfa boyutu limit ile 1-200 arasıdır (varsayılan 50). İmleç opaktır; çözmeye ya da değiştirmeye çalışmayın.

curl
curl "https://rintup.com/api/v1/monitors?limit=50&cursor=<nextCursor>" -H "Authorization: Bearer rup_live_..."

Sıralama her uçta belgelidir ve kararlıdır; aynı listeyi sayfa sayfa gezerken kayıt atlanmaz ya da tekrar etmez.

4. Güncelleme: PATCH

Güncelleme her zaman PATCH ile yapılır ve yalnız gönderdiğiniz alanları değiştirir; gövdede olmayan alan aynı kalır. Bütün nesneyi isteyen PUT kullanılmaz.

curl
curl -X PATCH https://rintup.com/api/v1/monitors/<id> -H "Authorization: Bearer rup_live_..." -H "Content-Type: application/json" -d '{"intervalSeconds":60}'

İsteğe bağlı bir metni temizlemek için boş metin ("") gönderin. Sır alanlarında (parola, token) null ya da maskeli değer mevcut sırrı korur.

5. Eylemler

Durum değiştiren işlemler kaynağın altında fiil yollarıdır ve POST ile çağrılır; gövde gerekmez. Örnek: bir monitörü duraklatmak ve sürdürmek, bir bildirim kanalından test bildirimi göndermek (POST /channels/{id}/test).

curl
curl -X POST https://rintup.com/api/v1/monitors/<id>/pause -H "Authorization: Bearer rup_live_..."
curl -X POST https://rintup.com/api/v1/monitors/<id>/resume -H "Authorization: Bearer rup_live_..."

6. Hata biçimi

Hatalar application/problem+json olarak döner. Programınızda title'a değil, code alanına bakın: code kalıcıdır, title Accept-Language başlığına göre Türkçe ya da İngilizce yazılır.

problem+json
HTTP/1.1 400 Bad Request
Content-Type: application/problem+json

{
  "type": "https://rintup.com/docs/errors/RUP-PLT-400-INVALID_PAGE",
  "title": "Invalid page request. …",
  "status": 400,
  "code": "RUP-PLT-400-INVALID_PAGE",
  "traceId": "…"
}

Doğrulama hatalarında errors alanı, alan adı başına iletileri içerir.

Durum kodları

  • 201: oluşturuldu (Location başlığıyla)
  • 204: silindi ya da gövdesiz eylem tamamlandı
  • 400: geçersiz istek ya da doğrulama hatası (alan hataları errors içinde)
  • 401: anahtar yok ya da geçersiz
  • 403: anahtarın erişimi bu işleme yetmiyor
  • 404: kayıt yok (başka çalışma alanının kaydı da 404'tür)
  • 402: paket sınırı (ör. monitör sayısı)
  • 429: hız sınırı aşıldı

Her hatanın type alanı, kodun herkese açık sayfasına bağlantıdır: HTTP durumu, Türkçe ve İngilizce anlamı ve nasıl ele alınacağı.

Bütün hata kodları

7. Hız sınırları

Kimlik doğrulama ve doğrulama kodu uçları IP başına dakikada 10, herkese açık durum sayfası uçları IP başına dakikada 120 istekle sınırlıdır. Sınır aşılırsa 429 ve RUP-PLT-429-RATE_LIMITED kodu döner; bir dakika bekleyip yeniden deneyin.

Bir sayfada en çok 200 kayıt döner. Büyük listeleri nextCursor ile sırayla gezin; aynı anda çok sayıda paralel istek yerine sayfaları art arda isteyin.

Tam başvuru

Bütün uçlar, alanlar, varsayılanlar ve hata kodları etkileşimli API başvurusundadır (OpenAPI). Yapay zekâ asistanınızla çalışıyorsanız RintUp MCP sunucusunu bağlayabilirsiniz.