API Builder Method Oluşturma ve Properties Paneli

Oluşturduğunuz bir API'nin içine girdiğinizde, üstte API adı (açılır liste ile değiştirilebilir) ve yanında bir düzenleme (kalem) ikonu yer alır.

Henüz hiç method eklenmemişse, ekranda Add a method kartı ve altında "No API Method exists. — Add a method to expose one of this API's operations." mesajı görüntülenir.

Bu karta tıkladığınızda açılan New Method penceresinde:

  • Name: Method'un adı (zorunlu alan).
  • Description: Method'un ne yaptığını açıklayan alan (opsiyonel).

SAVE butonuna tıklayarak method'u oluşturabilir, CANCEL ile iptal edebilirsiniz.

Method oluşturulduktan sonra, sol tarafta oluşturulan method'ların listelendiği bir tablo görüntülenir. Search by name... kutusuyla method'lar arasında arama yapılabilir. Tablo sütunları:

  • Method: Method'un adı.
  • Verb: Method'un çalıştığı HTTP tipi (örn. POST).
  • Access: Method'un erişim seviyesi (örn. All roles).
  • Actions: Method'a bağlı aksiyon sayısı.
  • Method Inputs: Method'a tanımlı giriş parametresi sayısı.

Bir method seçildiğinde, sağ tarafta Properties paneli açılır.

Properties Paneli Alanları

Authorization

Method'a özel yetkilendirme ayarlarını bu alandan yapılandırabilirsiniz. Panelde bir açılır menü (⋮) ve genişletme oku (>) bulunur. API methodu için erişim seviyesi belirlenebilir:

  • Anonymous Access: API herkes tarafından erişilebilir olur.
  • All Roles Access: Tüm yetkilendirilmiş kullanıcılar erişebilir.
  • Rol bazlı erişim kısıtlaması tanımlanabilir.

Request Ayarları

  • HTTP Method: Method'un hangi HTTP tipi ile çalışacağını belirler. Desteklenen method türleri: POST, GET, PUT, DELETE, PATCH. Seçilen HTTP Method, API'nin veri alma veya veri değiştirme davranışını belirler.
  • Content Type: API'ye gönderilecek verinin formatını belirler. Desteklenen içerik türleri: application/json, application/x-www-form-urlencoded, application/xml. Örneğin, JSON payload gönderilecekse application/json; form-data gönderilecekse application/x-www-form-urlencoded seçilmelidir.

Response Ayarları

  • Content Type: API'nin döndüreceği yanıt formatını belirler. Desteklenen yanıt türleri: application/json, text/html. Genellikle veri tabanlı API'lerde application/json tercih edilir.

Actions

Sağdaki + ikonuyla method çağrıldığında çalışacak aksiyonlar eklenir. Henüz aksiyon eklenmemişse "No actions yet. Add action" mesajı görüntülenir. Eklenen aksiyonlar:

  • Custom Action
  • SQL Action
  • REST Action
  • System Action

Aksiyon sonuçları Symbol Picker üzerinden Response'a bağlanabilir.

Method Inputs

API'nin dışarıdan parametre almasını sağlar. Sağdaki + ikonuyla yeni bir giriş parametresi eklenir.

  • Input Type:
    • Manual: Parametreler tek tek tanımlanır.
    • Dynamic: JSON obje yapısı üzerinden parametre alınır.
  • Payload As:
    • Object
    • List of Objects: Array (çok satırlı) veri yapısı sayesinde, API methodu tek bir istekte birden fazla kaydı işleyebilir. Bu yapı özellikle toplu kayıt ekleme, toplu güncelleme, çoklu ürün/çoklu satır veri gönderimi ve batch işlem senaryoları için kullanılır.

Manual Input

  • ADD METHOD INPUT butonuna tıklayarak yeni parametre eklenir. Alanlar:
  • Input Name
  • Type
  • Description

Dynamic Input

Dynamic seçildiğinde JSON Object alanı açılır. Örnek yapı:

{  "paramName": "Value1",  "paramName2": 10,  "paramName3": 10.4}

Bu yapı, methodun beklediği request gövdesini tanımlar. Burada bulunan değerler ile sistem ilgili parametrenin tipini otomatik anlar. Aşağıda kritik olan ve sistemin varsayılan olarak tip tanımlama kriterleri belirtilmiştir:

  • Numeric: Eğer değer Float değil ise sistem otomatik olarak tipi Long seçer. Eğer değer Float ise yani "." içeriyor ise sistem ilgili parametre tipini decimal olarak belirler.
  • DateTime: Sistem sadece DateTime olarak "iso" formatını tanır. "YYYY-MM-DDThh:mm:ss" kalan DateTime değerleri otomatik string tipi olarak belirlenir.

Örnek Senaryo

Barkod numarasına göre menü durumu döndüren bir API oluşturulacak.

  1. API Builder modülüne girin.
  2. Add a method ile yeni method oluşturun.
  3. HTTP Method olarak POST seçin.
  4. Request Content Type olarak application/json seçin.
  5. Response Content Type olarak application/json seçin.
  6. Authorization ayarını belirleyin.
  7. Actions altındaki + ile Status Inquiry aksiyonunu ekleyin.
  8. Symbol Picker ile Action Results → Status Inquiry seçin.
  9. Method Input olarak:
    • Input Name: Barcode
    • Type: Guid
    • Payload: Object
  10. Preview butonu ile API'yi test edin.
  11. Swagger ekranından method çıktısını kontrol edin.