API Nedir? En Popüler API Servisleri

API Nedir? En Popüler API Servisleri

Açılımı Application Programming Interface olan API özellikle web tabanlı uygulamalar ve programcılıkla uğraşan kişiler için oldukça meşhur bir kavramdır. Bunu eğer daha anlaşılabilir bir şekilde açmak gerekirse Uygulama Programlama Arayüzü olarak ifade edebiliriz. Peki, bu API dediğimiz arayüzler nerelerde kullanılıyor? Bunun için çok geniş, çeşitli alanlarda cevabı vererek konuyu biraz daha genişletebiliriz.

API temelde bir bağlantı arayüzüdür. Bu arayüz ile programa, verilere, sunucu yazılımlarına rahat bir şekilde ulaşım sağlanabilir. Daha açık bir tabirle, iki makinenin konuşmasını sağlayan sistem de diyebiliriz. Hemen bunu örneklendirmek gerekirse bir e-ticaret siteniz var ve doğal olarak alışveriş için banka kartı ile para çekilmesi gerekiyor. İşte bu noktada sistem ile bankanın kartından para çekilmesine izin veren diğer sistem arasındaki bağlantı geneline API diyebiliriz. Yani API aslında web sitelerin işlerini kolaylaştıran bir arayüz. Bu nedenle de çok önemli olduğunu belirtmek gerekiyor.

API için sosyal medyadan da örnekler verebiliriz. Mesela Facebook kullanıyorsanız verilerinizin çekilip ekranda size gösterilmesi API sayesinde oluyor. API ile ekstradan bir altyapı kurulumuna gerek kalmadan direkt olarak iki sistem arasında bağlantı kurulabiliyor. Kısacası pek çok veriyi API’ler sayesinde edinebiliyor, işleyebiliyor ya da değiştirebiliyoruz. Bu anlamda hem web sitelerinde hem de sosyal medya kanallarında API oldukça işlevsel bir araç.

API Çeşitleri

API’nin ne olduğunu ve ne işe yaradığını açıkladıktan sonra şimdi de API çeşitleri nelerdir onlara bakalım. API’ler temelde web tabanlı servisler içerisinde kullanılıyor ve kullanım şekillerine göre sınıflandırılıyor. Bu anlamda kullanım amaçlarına göre API çeşitlerini değerlendirmek daha doğru olacaktır.

Dahili API

Bu API türü sadece belirli kişi ya da alanlarda kullanılmak üzere geliştirilmiştir. Buna örnek vermek gerekirse bir şirketin farklı departmanlar için geliştirdiği API’leri gösterebiliriz. Bunlar dahili API olarak bilinirler.

Açık API

Adından da anlaşılacağı üzere herkesin kullanımına izin verilen API çeşitleridir. Bunların yaygın adı Open API’dir. Az önce bahsettiğimiz Dahili API’lerin tam tersidir. Herkes tarafından kullanabilirler.

Partner API

Farklı şirketlerin belirli bir iş ortaklığı üzerinde yürüttükleri operasyonlar için geliştirilmiş API’ler partner API’lerdir. Bunlar firmalar arasında koordinasyon sağlanmasına yardımcı olurlar.

API çeşitleri bir de mimarilerine yani temellendirildiği yapılar üzerinden çeşitlendirilir ve sınıflandırılır. Bunları da şu şekilde açabiliriz:

Rest API

Rest API, URI (Uniform Resource Identifier) adreslerini kullanarak HTTP protokolü ile çalışırlar. Veri alışverişini sağlayabilmek için HTTP isteklerinden (Request) GET, POST, PUT, DELETE gibi komutları kullanırlar. Rest API hem kullanışlı hem de hafiftir. Bu sebeple de API kullanırken en sık tercih edilenlerden bir tanesidir.

SOAP API

Açılımı Simple Object Access Protocol olan SOAP veri transferini çok daha sıkı bir güvenlik protokolü ile yapan API’dir. Bu mimari içerisinde API’nın kullandığı format XML’dir. Yapılandırma açısından bakarsak Rest API’ye göre biraz daha zordur. Ancak güvenli bir bağlantı sağladığı söylendiği için de tercih sebebi olabilmektedir.

API çalışma mantığı

API’lerin iki sistemi birbirine bağlayan bir arayüz olduğundan bahsetmiştik. Herhangi bir yazılım veya veri tabanı arasındaki güvenli bağlantıyı sağlayan bir sistemdir. Peki, API çalışma mantığı nasıl oluyor? Öncelikle alıcı programdan bir istek yani API çağrısı geliyor. Bu gelen çağrı URI aracılığı ile web sunucusuna filli olarak işleniyor. İstek sonrasında API bir web sunucusu ya da harici programa çağrıda bulunuyor. Sunucu bu çağrı sonucunda istenen bilgileri API’ye bir yanıt şeklinde aktarıyor. Sonrasında API istek yapan alıcı program hangisi ise ona önceden aldığı o verileri iletmeye başlıyor. API’nin genel olarak çalışma mantığı bu şekildedir.

API’nın çalışma mantığını bir örnek üzerinden anlatmak gerekirse çok büyük bir kütüphanede, eski dokümanların olduğunu varsayalım. Bu dokümanlara ise düzenli olarak erişmeniz gerekiyor ancak kütüphanenin bölümleri çok fazla. Bu birimlerden ulaşmak istediğiniz bölüm için size yetki veriliyor. Bu yetkiyi de bir anahtar olarak düşünelim. Kütüphane merkezinden size yetkinize uygun olarak bir API yani anahtar veriliyor. Bu anahtar sayesinde size tanımlanmış olan odalarda, sıralardan dilediğiniz dosyaları dilediğiniz şekilde almaya olanak tanınıyor.

Burada sizin için tanımlanmış olan anahtar yani API işinizi düzenli bir şekilde yapabildiğiniz gibi size güvenlik de sağlıyor. Bu örnekte her ziyaretçi bir istemci program oluyor. Program kütüphaneye istek gönderiyor ve API sayesinde o istediği veriye ulaşabiliyor. Özellikle son yıllardaki mobil ya da internet bankacılığında da API sistemi yaygın şekilde kullanılıyor. Akıllı telefonlara kurulan banka aplikasyonları bankaların API sistemleri sayesinde hesabınıza girmenize işlem yapmanıza olanak tanıyor. Bu arayüz API’leri temsil ediyor.

API dediğimiz şey sizin bankanın sadece sınırlı bölgelerinde, size izin verilerin yerlerinde işlem yapmanıza olanak tanır. Zaten bankaların kendi işletim sistemi telefondaki uygulamalardan çok daha farklıdır. Bu iki farklı yazılım arasındaki bağlantıyı API sayesinde kurmak mümkün olabiliyor. API sayesinde iki programın sistemin yazılım dili farklı bile olsa iletişim kurmak mümkün olabiliyor.

API Nasıl Kullanılır?

API’ler eğer bir hizmet sağlıyorsanız bu hizmeti daha kolay hale getirmek için kullanabilirsiniz. Öncelikle sisteminize entegre ettiğiniz bir API olması gerekiyor. Bu entegre sayesinde sistem sürekli güncel kalacaktır. Ödemelerin günün para birimlerine, döviz kurlarına uygun şekilde yapılmasını API’nin güncel fonksiyonu ile sağlayabilirsiniz. Peki, API entegrasyonunu nasıl yapacaksınız? Öncelikle bu entegrasyonu yapabilmek için istemcinin kendisini tanımlayabildiği bir API anahtar edinmesi gerekecek. Çünkü API hizmetini sağlayan uygulama ya da sunucu istemciden API anahtarını yani şifresini isteyecektir.

Anahtar yani şifre aldığınızda ise size yetkilendirilme veren alan çerçevesinde sunucuda sürekli bir bağlantınız olacaktır. Bununla beraber düzenli veri akışını da sağlamış olacaksınız. İhtiyacınız olan API key yani anahtarını nasıl alacaksınız? Öncelikle bunun bir sistemin arka tarafında yani backend dediğimiz kısımda gerçekleştirilmesi gerektiğinin altını çizmemiz gerekİyor. İşlemciye tanınacak API key bu arka kısımda veri tabanında saklanacaktır.

Alacağınız bu anahtar ve şifre ile istemcinin kimliği de resmi olarak tanınmış olacaktır. Daha öncesinde yetkilendirme sağlandığı için de güvenli bir şekilde bağlantı sağlanabilecek talep edilen veriler istemciye açık hale getirilecektir. Bu noktada güvenlik adımı olarak isteğe bağlı şekilde istemcinin IP adresi de talep edilebilir. Dediğimiz gibi bu güvenlik amaçlı bir istemdir ve başkalarının anahtarı kullanmasının önüne geçilebilmek adına alınmış bir tedbirdir.

En Popüler API Servisleri Hangileridir?

API’ler temelde kullanım alanları ve çeşitlerine göre servis tarafından ücretlendirmeye tabi tutulur; ancak ücretsiz seçenekleri de bulunuyor. Bu tamamen servisle ilgili bir durumdur. Sizlere API sağlayan bu servisleri sıralamak gerekirse:

  • Web sitesi API’leri
  • Pazarlama API’leri
  • Sosyal medya API’leri
  • Bankacılık API’leri
  • Harita API’leri
  • E-posta ve mesaj API’leri
  • Haber servisi API’leri
  • Video ya da resim API’leri

Yukarıda da gördüğünüz gibi API’ler hedefinize ve kullanımınıza uygun olarak çeşitlendirilmiştir. İnternet üzerinden API’lerini yönetebileceğiniz pek çok API servisi görebilirsiniz. API’lerini güncelleyip yönetebileceğiniz servislerin yanı sıra API’lerinizi yönetmeye yardımcı olacak farklı API yönetim araçları da bulunmaktadır. Kullanışlı API araçlarına örnek vermek gerekirse:

Google API

Google servislerinizi web sitenize entegre edebilirsiniz. Bu sayede kullanabileceğiniz bir Google API servisi bulunuyor. Google API sevisinde ihtiyacınız olan farklı çeşitlerde API’leri rahatlıkla bulabilirsiniz.

QR Code Monkey

QR Code Monkey ile çeşitli hizmetlerde QR kodu oluşturmanız mümkün olur. Bu servis sayesinde pek çok API entegrasyonu da yapabilirsiniz. Peki, QR Code Monkey hangi hizmetlerde işinize yarabilir? URL, e-posta, Vcard, SMS, MP3, video, bitcoin cüzdanları, sosyal medya uygulamaları sayılabilir.

Whatsapp API

Günümüz web sitelerinde en çok kullanılan uygulamalardan bir tanesi Whatsapp uygulamasıdır. Web sitenize Whatsapp butonu ekleyerek bu uygulamayı kullanabiliyorsunuz. Ancak bunun için de bir API hizmetinden faydalanmanız gerekiyor. Whatsapp API’nin pek çok önemli faydası bulunuyor. Kurumsal telefonunuza bağlantı yapmak, müşterilerin sizlerle daha rahat iletişime geçmesini sağlamak gibi.

Harita (Maps) API’leri

Lokasyon eklemek, hizmet ya da merkezinizin nerede olduğunu insanlara göstermek için harita kullanımları söz konusudur. Eğer siz de web sitenize bir harita eklemek istiyor, lokasyonları otomatik olarak çekmek istiyorsanız MapBOX API kullanabilirsiniz. Bu API sizlere harita konusunda büyük bir kolaylık sağlayacaktır.

Telegram API

Telegram hizmetini sitenize entegre etmek isterseniz kullanmanız gereken Telegram’a özel API’dir. Telegram mesajlaşma hizmeti sağlamakla beraber bot görevi de görür. Bu sebeple çok kullanışlı, avantajlıdır. 

Facebook API

Günümüzün en çok kullanıcıya sahip sosyal medya platformlarından olan Faceook için API kullanabilirsiniz. Bu sayede sitenizi Facebook’a bağlantılı şekilde kullanmaya devam edebilirsiniz.

Twitter API

Temelde bir haber paylaşım sitesi olan ancak günlük mini blog olarak da ünlüler ve işletmeler tarafından kullanılan Twitter’ı API ile sitenize entegre edebilirsiniz. Twitter API sayesinde kurumsal hesabınızı bağlayarak gelişmeleri takip edebilir ya da burada paylaşımlar yapabilirsiniz.

Youtube API

Youtube API, videolarınızın eş zamanlı sitenizde yayınlanmasına yardımcı olan bir sistemdir. Bu aynı zamanda aplikasyonlar için de geçerlidir.

Quick Chart API

Firmaların en çok ihtiyaç duyduğu API’lerden bir tanesi Quick Chart API’dir. Bu API sayesinde e-posta, raporlama, tablo oluşturma, analizler ekleme gibi pek çok özelliği hızlı bir şekilde entegre edebilirsiniz. Oluşturacağınız tablolar Java Script tabanlı olacaktır. Bu tabloları API sayesinde güncel olarak çekebilmeniz mümkündür.

API Yönetim Araçları Nelerdir?

API’lerden bu kadar söz ettikten sonra API’lerin yönetim araçlarına da değinmemizde fayda olacaktır. API yönetim araçlarını kullanarak çok daha hızlı ve işlevsel şekilde veri alışverişi yapabilir, güncelleyebilir ve yayınlayabilirsiniz. Bu araçlardan bir tanesi Improvado’dur. Bu API entegrasyon hizmeti ile pek çok farklı veri kaynağını ya da sosyal medya araçlarını bağlayabilirsiniz. Improvado ücretli bir uygulamadır.

Bir diğer API aracı da Apigee API Management’dır. Hem ücretli hem de kısıtlı ücretsiz servisinden faydalanabilirsiniz. Bu araç da sizlere entegrasyon ve optimizasyon konusunda oldukça büyük kolaylık sağlayacaktır. IBM API Connect de ücretli ya da ücretsiz versiyonunu kullanabileceğiniz, IBM tarafından sunulan bir API hizmetidir. Microsoft Azure API Management ise farklı özellikleri ile dikkat çeken bir API aracıdır. Veri alışverişi ve entegrasyon yanı sıra çapraz platformlarda otomatik bağlantı kurmaya da olanak sağlıyor. Ücretli bir servis olan bu araç Microsoft tarafından geliştirilmiş olup yaygın bir şekilde tercih edilmektedir.