Endpoint Özellikleri
Path
Endpoint’in URL yolu. Örneğin:
/api/v1/productsMethod
HTTP method. GET, POST, PUT, DELETE, PATCH vb.
Operation
Endpoint’in gerçekleştirdiği işlem. Örneğin: “Ürün listesi getir”
Backend Mapping
Endpoint’in backend’deki karşılığı
Endpoint İşleme Akışı
Aşağıdaki diyagram, endpoint’in istek ve yanıt akışında nasıl çalıştığını ve path rewriting işlemini gösterir:Endpoint Yapısı
Bir endpoint şu bilgileri içerir:Örnek Endpoint’ler
GET /api/v1/products
Ürün listesi getir
GET /api/v1/products/{id}
Tek ürün detayı getir
POST /api/v1/products
Yeni ürün oluştur
PUT /api/v1/products/{id}
Ürün güncelle
DELETE /api/v1/products/{id}
Ürün sil
Endpoint ve Client Route İlişkisi
Endpoint’ler Client Route’un altında tanımlanır:Client Route, endpoint’lerin üst seviye yapılandırmasıdır. Bir Client Route altında birden fazla endpoint tanımlanabilir. Endpoint’ler, Client Route’un path’i içinde spesifik path ve method kombinasyonlarıdır.
Endpoint Yapılandırması
Bir endpoint oluştururken şu bilgiler tanımlanır:Temel Bilgiler
Temel Bilgiler
- Path: Endpoint’in URL yolu
- Method: HTTP method (GET, POST, PUT, DELETE, vb.)
- Operation ID: Endpoint’in benzersiz tanımlayıcısı
- Description: Endpoint’in açıklaması
Parametreler
Parametreler
- Query Parameters: URL’deki query string parametreleri
- Path Parameters: URL path’indeki dinamik parametreler (örn:
{id}) - Header Parameters: HTTP header parametreleri
Request ve Response
Request ve Response
- Request Body: İstek gövdesi şeması (JSON, XML, vb.)
- Response: Yanıt şeması ve status code’ları
- Content-Type: İstek ve yanıt içerik tipleri
Backend Mapping
Backend Mapping
- Backend Path: Backend’deki karşılık gelen path
- Backend Method: Backend’deki HTTP method
- Path Rewrite: Path dönüşüm kuralları
Endpoint Türleri
REST Endpoint
REST API’ler için endpoint’lerJSON formatında veri alışverişi. RESTful tasarım prensiplerine uygun endpoint’ler.
SOAP Endpoint
SOAP Web Servisleri için endpoint’lerXML formatında veri alışverişi. WSDL tanımları ile yapılandırılır.
gRPC Endpoint
gRPC servisleri için endpoint’lerProtobuf formatında veri alışverişi. Yüksek performanslı RPC çağrıları.
WebSocket Endpoint
WebSocket bağlantıları için endpoint’lerGerçek zamanlı iletişim. İki yönlü veri alışverişi sağlar.
Endpoint ve Politika İlişkisi
Endpoint’lere özel politikalar uygulanabilir:Endpoint Bazlı Güvenlik
Her endpoint için farklı güvenlik politikalarıOAuth2, JWT, API Key gibi güvenlik mekanizmaları endpoint bazında yapılandırılabilir.
Endpoint Bazlı Rate Limiting
Her endpoint için farklı rate limitEndpoint bazında istek sayısı ve bant genişliği limitleri tanımlanabilir.
Endpoint Bazlı Dönüştürme
Her endpoint için farklı dönüştürme kurallarıJSON ↔ XML dönüşümü, veri mapping ve transformation endpoint bazında yapılabilir.
Endpoint Bazlı Doğrulama
Her endpoint için farklı doğrulama kurallarıRequest/Response validation, schema doğrulama endpoint bazında yapılandırılabilir.
Endpoint Versiyonlama
Endpoint’ler versiyonlanabilir:Version 1
/api/v1/productsİlk versiyon. Temel işlevsellik.Version 2
/api/v2/productsGeliştirilmiş versiyon. Yeni özellikler.Version 3
/api/v3/productsEn son versiyon. Güncel API.Geriye Dönük Uyumluluk
Geriye Dönük Uyumluluk
Geriye dönük uyumluluk korunur. Eski versiyonlar çalışmaya devam eder ve yeni versiyonlar eski versiyonları etkilemez.
Kademeli Geçiş
Kademeli Geçiş
Kademeli geçiş yapılabilir. İstemciler kendi hızlarında yeni versiyona geçebilir.
Versiyon Yönetimi
Versiyon Yönetimi
Farklı versiyonlar farklı ortamlara deploy edilebilir ve aynı anda çalışabilir. Versiyonlama sayesinde API yaşam döngüsü yönetilebilir.
Endpoint ve Routing İlişkisi
Endpoint’ler, Client Route ve Upstream Target arasında köprü görevi görür:Endpoint, Client Route’dan gelen istekleri Upstream Target’a yönlendirirken, routing mantığı ve politikaları uygular.

