Web Api Nedir ?

Web API’ları, etkileşimlerin kuruluş ve uygulamalar arasında gerçekleştiği tanımlanmış arayüzlerdir. Bir API yaklaşımı programlanabilir arayüz sağlayarak farklı tip tüketici topluluklarına hizmet eden farklı uygulamaların bulunduğu servisleri sağlayan mimari yakaşımdır. Web geliştirme bağlamında ise bir API tipik olarak Hypertext Transfer Protocol (HTTP) istek mesajları ile Extensible Markup Language(XML) ya da JavaScript Object Notation (JSON) formatında olan tepki mesajları yapısının bir tanımıdır.

REST mimarisi temelde Proxy’ye ihtiyaç duymaksızın HTTP istekleri ile basitçe gerçekleştirilebilen Get, Post, Put, Delete ve benzeri metotlarını destekler. Bu sayede de nereden ve hangi uygulamadan istekte bulunulursa bulunulsun, özel durumlar dışında Web Api’ye erişilebilecektir. Kısacası HTTP metotları kullanıldığı için bu bir tarayıcı isteği dahi olabilir.

  • Flickr ve Photobucket gibi sitelerden paylaşılan fotoğraflar Facebook, MySpace gibi sosyal ağ sitelerinde paylaşılabilir.
  • İçerik sayfaya gömülebilir. Örneğin, SlideShare’deki bir sunum LinkedIn profiline gömülebilir.
  • İçerik dinamik olarak gönderilebilir. Facebook hesabında canlı tweet paylaşımı API’lar sayesinde sağlanmaktadır.
  • Başka sunucuların hizmetiyle sitelere video içeriği gömülebilir.
  • Eğer içerik fiziki dünyanın direkt bir temsilcisiyse (mesela Dünya’da bir konumun sıcaklığı); API, EPI (Environmental Programming Interface) olarak adlandırılır.

Gözümüzde API’ı daha somut hale getirebilmek için gerçek bir API örneğini ele alalım. İnternet üzerinden otobüs bileti alırken online seyehat servisi, seçtiğimiz kriterlere göre bize birkaç otobüs firmasının bulunduğu seçenekler listesi çıkartır. Bize bu verileri sağlayabilmek için tüm şirketlerin API’larından bilgi almalıdır. Girilmiş olan kriterlerle birlikte otobüs firmasından sefer bilgilerini ister. Otobüs firmaları ise istenen veriyi online seyahat sağlayıcısı siteye gönderir. İşte bu örnekteki gibi uygulama, veri ve cihazlar arasındaki pek çok etkileşim API ile sağlanır.

Geliştirdiğimiz bir projede Twitter API’yi çağırarak, Twitter’ın bize izin verdiği (tweet atma, hesap takip etme, vb.) işlemleri, API yetkimiz olan Twitter hesaplarında, kendi uygulamamız üzerinden de gerçekleştirebiliriz.

API ile erişim yetkimizin olduğu 100 hesabın aynı anda “Merhaba Dünya! “ tweet’ini atmasını sağlayabiliriz!

Farklı bir örnek olarak, WordPress altyapısını kullanan bir blog’a sahipsek, WordPress API’yi çağırarak, gerekli API yetkileri sağlandığı taktirde, blog’umuza kayıtlı kullanıcıların listesini çekebilir, yeni bir yazı yayınlayabilir veya bir yazıya yorum yapabiliriz.

Tüm bu örneklerde görüldüğü gibi, API’si olan uygulamaları, kendi uygulamamız içinden çağırarak, asıl uygulamaya ait yetenekleri kullanmış olduk.

İşletim sistemleri, uygulamalar veya websiteleri için birçok farklı API çeşidi vardır. Örneğin Windows’un sistem yazılımı ve donanımı tarafından kullanılan birçok API grubu vardır. Bir uygulamadan diğerine kopyala-yapıştır yaparken bunun gerçekleşmesine API izin verir.

Başta gelen API’lara Facebook, Google Maps, Twitter, YouTube ve AccuWeather’ı örnek verebiliriz.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir