İçindekiler
- API Nedir?
- API Çeşitleri
- API Protokolleri
- REST API
- SOAP API
- RPC API
- Web Servisi ile API arasındaki fark nedir?
- Referanslar
API Nedir?
API (Application Programming Interface/ Uygulama Programlama Arabirimi),
belirli tanımlar ve protokoller aracılığıyla,
yazılımlar arasında iletişim kurulmasını sağlayan araçlardır.
İletişimi sağlanan yazılımlar programlama dilinden bağımsızdır.
Bu özelliği sayesinde ihtiyaç duyulabilecek herhangi bir kod bloğunun
birbirinden farklı projelerde kullanılmasına olanak sağlar.
Dolayısıyla açılımındaki “Uygulama” kelimesi,
ayrı bir işlevi bulunan her türlü yazılımı ifade eder.
“Arabirim” kelimesi ise,
iki uygulama arasındaki isterler ve
yanıtlar kullanılarak nasıl bir iletişim kurulacağına
karar veren bir sözleşmedir.
Dolayısıyla açılımındaki “Uygulama” kelimesi, ayrı bir işlevi bulunan her türlü yazılımı ifade eder. “Arabirim” kelimesi ise, iki uygulama arasındaki isterler ve yanıtlar kullanılarak nasıl bir iletişim kurulacağına karar veren bir sözleşmedir.
API Çeşitleri
- Open API: HTTP protokolü ile erişebileceğiniz açık kaynaklı uygulama programlama arabirimleridir.
- Partner API: geliştiriciler bu API’lere self-servis modunda bir genel API geliştirici portalı aracılığıyla erişir.
- Internal API: harici kullanıcılardan gizli kalır. Bu özel API’ler, şirket dışındaki kullanıcılar tarafından kullanılamaz.
- Composite API: birden çok veriyi veya hizmet API’sini birleştirir. Programcıların tek bir çağrıda birkaç uç noktaya erişmesine izin verirler.
API Protokolleri
Protokol, bilgisayar gibi elektronik cihazlar arasında veri iletmek için kullanılan kurallardır.
İki cihaz arasındaki iletişimin nasıl yapılandırılacağına ve her iki tarafın da veriyi nasıl gönderip alacağına karar veren bir anlaşmadır.
REST API
REST (Representational State Transfer/Temsili Durum Aktarımı) istemci, sunucuya isteklerini veri olarak gönderir. Sunucu bu istemci girdisini kullanarak dahili işlevleri başlatır ve çıktı verilerini tekrar istemciye gönderir. REST API’nın protokolleri URI (Uniform Resource Identifier) ve HTTP (Hyper-Text Transfer Protocol) protokollerine dayanır.- GET: veri okumak
- POST: veri oluşturmak
- PUT: bir veriyi güncellemek
- DELETE: bir veriyi silmek
SOAP API
SOAP (Simple Object Access Protocol / Basit Nesne Erişim Protokolü), istemci ve sunucu arasında mesaj alışverişi yapar. REST API’ye kıyasla kendi protokolü vardır. Güvenlik ve mesajların gönderilmesi konusunda REST API’ye göre daha karmaşık standartlara sahiptir.RPC API
RPC (Remote Procedure Call / Uzak Prosedür Çağrıları), istemci önce sunucu üzerinde bir işlevi (yani prosedür) tamamlar ve ardından sunucu da çıktıyı istemciye gönderir.Web Servisi ile API Arasındaki Fark Nedir?
Bir web servisi, bir web adresi üzerinden erişilebilen ve veri transferini kolaylaştıran bir yazılım bileşenidir. Aslında her web hizmeti bir API‘dir. Ancak, her API bir web hizmeti değildir.
API’ler, birbiriyle bağlantısı olmayan iki uygulama arasında aracı görevi gören herhangi bir yazılım bileşenidir. Web servisleri uygulamaları da birbirine bağlarken, bunun için bir ağa ihtiyaç duyarlar.
Referanslar
- Upwork: SOAP vs REST: A Look at Two Different API Styles. Erişim Linki: https://www.upwork.com/resources/soap-vs-rest-a-look-at-two-different-api-styles
- Amazon Web Services (AWS): API Nedir? Erişim Linki: https://aws.amazon.com/tr/what-is/api/
- IBM docs
