Corendis Geliştirici
Önizleme: Public API henüz yayında değil. Rehberler ilk uçlar açılmadan önce paylaşılan taslaklardır ve değişebilir.

Hatalar

Taslak.

Biçim

Hatalar RFC 9457 problem details biçiminde döner (Content-Type: application/problem+json). Başlıca alanlar:

Alan Anlamı
type Hatanın makine tarafından okunan türü. Programınız buna göre karar vermelidir.
title İnsan için kısa açıklama. Sözleşme değildir, değişebilir.
status HTTP durum kodu.
code Bazı hatalarda bulunan, hatayı daha ayrıntılı tanımlayan makine kodu (uzantı alanı).
Diğer uzantılar Hataya özgü ek alanlar (ör. module).

Örnek:

{
  "type": "license/module-not-entitled",
  "title": "Bu modül lisansınızda veya koltuğunuzda yok.",
  "status": 403,
  "module": "<modul-kodu>"
}

Not: type değerleri şu an license/module-not-entitled gibi göreli metindir.

Lisans hatası ile yetki hatası farklıdır

İkisi de 403 döner; ayrım type alanındadır. Lisans kontrolü yetki kontrolünden önce çalışır.

type Durum Anlamı Ne yapmalı?
license/module-not-entitled 403 Çağırdığınız modül firmanızın lisansında veya entegrasyon koltuğunuzda yok. Yanıtta module alanı modül kodunu verir. Lisans/paket değişikliği için BilgiTek veya hesap yöneticinizle görüşün. Yeniden denemek işe yaramaz.
license/read-only 403 Abonelik salt-okunur modda; yazma istekleri reddedilir. Okuma ve export açıktır. Aboneliği yenileyin. Okuma isteklerine devam edebilirsiniz.
authz/forbidden 403 Lisans uygundur ama istemcinin bu işlem için izni yok. İzin değişikliği için BilgiTek'e başvurun (bkz. Kimlik doğrulama).

Abonelik süresi dolsa bile verinize erişim kilitlenmez: okuma, rapor ve export her zaman açık kalır.

HTTP durum kodları

Kodda ve sözleşme kararlarında yer alan durumlar:

Kod Ne zaman
400 Geçersiz istek; örneğin çözülemeyen sayfa imleci veya izin verilen aralığın dışında sayfa boyutu.
401 Kimlik doğrulanamadı (token yok, geçersiz veya süresi dolmuş).
403 Lisans veya yetki hatası (yukarıdaki tablo).
409 Çakışma; örneğin kayıt zaten var. Yanıtta code bulunabilir.
422 Anlamsal olarak geçersiz istek; örneğin aynı Idempotency-Key farklı gövdeyle gönderildi. Yanıtta code bulunabilir.

Önerilen hata işleme

  1. Önce status'a, sonra type'a bakın; title metnine göre karar vermeyin.
  2. license/read-only alındığında yazmaları kuyruğa alıp okumaya devam edebilirsiniz.
  3. license/module-not-entitled ve authz/forbidden için otomatik yeniden deneme yapmayın.