API, farklı yazılımların belirli kurallar çerçevesinde birbirleriyle iletişim kurmasını sağlayan arayüzdür. İngilizce “Application Programming Interface” ifadesinin kısaltmasıdır; Türkçede “uygulama programlama arayüzü” olarak karşılık bulur. Bir yazılımın hangi bilgileri sunacağını, hangi işlemlere izin vereceğini ve bunların nasıl talep edileceğini tanımlar.

Bir üniversitenin web sitesinde yayımlanan ders bilgilerinin öğrenci bilgi sisteminden alınması, API kullanımına örnektir. Web sitesi, diğer sistemin veritabanına doğrudan bağlanmak yerine sunulan arayüz üzerinden ihtiyaç duyduğu bilgileri ister. Ancak bir API’nin bulunması, bağlantının kendiliğinden kurulacağı anlamına gelmez; veri alanlarının eşleştirilmesi, erişim izinleri ve güncelleme süreci ayrıca planlanır.

API nasıl çalışır?

Web üzerinden çalışan bir API’de süreç genellikle istek ve yanıt alışverişine dayanır. Örneğin bir bölüm sayfasında ders listesinin gösterilmesi şu adımlarla gerçekleşebilir:

  1. İstek gönderilir: Web sitesi, ders bilgilerini sunan API adresine belirli bir bölümün derslerini talep eden bir istek iletir. İsteklerin gönderildiği bu adreslere “uç nokta” veya “endpoint” denir.
  2. İstek kontrol edilir: Hizmet, gönderilen bilgilerin geçerliliğini ve gerekiyorsa isteği yapan uygulamanın ya da kullanıcının erişim yetkisini denetler.
  3. Yanıt döndürülür: Sonuç, çoğunlukla JSON gibi yazılımların kolayca işleyebildiği bir veri biçiminde iletilir. Hata oluştuğunda da uygun bir durum kodu ve hata bilgisi döndürülebilir.
  4. Veri kullanılır: Web sitesi, gelen ders adlarını ve açıklamalarını kendi sayfa tasarımı içinde gösterir.

JSON bir veri biçimidir; tek başına API değildir. API ise isteğin nasıl yapılacağını, hangi verilerin sunulacağını ve yanıtın nasıl yorumlanacağını belirleyen arayüzü ifade eder.

REST API nedir?

REST API, REST mimari yaklaşımına göre tasarlanan bir API’dir. Bu yaklaşımda ders, duyuru veya etkinlik gibi öğeler birer kaynak olarak ele alınır. Web uygulamalarında bu kaynaklara genellikle URL’ler üzerinden erişilir ve yapılacak işlemi belirtmek için HTTP yöntemleri kullanılır.

Aşağıdaki tablo, bu yöntemlerin yaygın kullanımını gösterir. Bir API’nin bu işlemlerin tamamını desteklemesi gerekmez; kullanılabilecek işlemler hizmetin tasarımına ve erişim izinlerine bağlıdır.

HTTP yöntemiYaygın kullanımÖrnek
GETBilgi almakYayımlanmış etkinlikleri listelemek
POSTİşlenmek üzere veri göndermek veya yeni kayıt oluşturmakEtkinlik başvurusu göndermek
PATCHBir kaydın belirli alanlarını güncellemekEtkinliğin saatini değiştirmek
DELETEBir kaynağı silmekİzin verilen bir etkinlik kaydını kaldırmak

REST bir iletişim protokolü veya veri biçimi değildir. JSON ile veri döndüren her API de otomatik olarak REST sayılmaz. Kaynakların nasıl tanımlandığı ve istemci ile sunucunun nasıl etkileştiği, bu mimari yaklaşımın parçasıdır.

API ile web servisi arasındaki fark nedir?

Web servisi, uygulamaların ağ üzerinden birbirleriyle iletişim kurmasını sağlayan bir hizmettir. API ise daha geniş bir kavramdır. Bir işletim sisteminin veya yazılım kütüphanesinin sunduğu API, internet bağlantısı olmadan da kullanılabilir.

Web servislerinde farklı teknolojilerle karşılaşılabilir. REST tabanlı hizmetler web uygulamalarında yaygındır; bazı kurumsal sistemler ise XML tabanlı mesajlaşma protokolü olan SOAP kullanır. Entegrasyon yöntemi, bağlanılacak sistemin sunduğu hizmete göre belirlenir. Mevcut sistem SOAP kullanıyorsa yalnızca REST desteği olan bir çözüm doğrudan yeterli olmayabilir.

Üniversite web sitelerinde API nerelerde kullanılır?

API’ler, aynı bilginin farklı platformlarda kullanılmasına ve sistemler arasında iş akışları kurulmasına yardımcı olur. Üniversiteler için öne çıkan kullanım alanları şunlardır:

  • Ders ve program bilgileri: Yetkili sistemin sunduğu servisler üzerinden ders adları, içerikleri ve program bilgileri web sitesine aktarılabilir. Öğrenci bilgi sistemi entegrasyonu planlanırken hangi bilgilerin herkese açık olacağı ayrıca belirlenmelidir.
  • Aday öğrenci başvuruları: Web sitesindeki bir bilgi talep formu, uygun API desteği varsa kurumun CRM sisteminde kayıt oluşturabilir. Aktarılacak alanlar ve başvurunun hangi birime yönlendirileceği önceden tanımlanır.
  • Mobil uygulama içerikleri: Web sitesinde yönetilen duyurular ve etkinlikler, API üzerinden mobil uygulamada da gösterilebilir. Böylece aynı içerik için ayrı bir giriş süreci kurma ihtiyacı azalır.

Bu örneklerde API, veri alışverişinin yolunu sağlar. Bilginin anlık mı yoksa belirli aralıklarla mı güncelleneceği, önbellekte ne kadar tutulacağı ve bağlantı kesildiğinde ne yapılacağı entegrasyonun ayrıca tasarlanması gereken parçalarıdır.

Drupal’ın API desteği ne sağlar?

Drupal çekirdeğinde bulunan JSON:API modülü, içerikleri ve ilgili veri yapılarını standart bir arayüz üzerinden sunabilir. Örneğin Drupal’da yönetilen bir duyurunun başlığı, metni ve ilişkili alanları başka bir uygulama tarafından alınabilir. JSON:API, yalnızca JSON kullanılması anlamına gelmez; istek ve yanıtların yapısını belirleyen bir standardı ifade eder.

JSON:API modülünde varsayılan çalışma biçimi salt okunurdur. İçerik oluşturma, güncelleme veya silme işlemleri için yazma işlemlerinin ayrıca etkinleştirilmesi ve gerekli yetkilerin tanımlanması gerekir. İçerik ve alan erişimi, Drupal’ın erişim denetimleriyle birlikte değerlendirilir.

Drupal’ın API sunabilmesi, herhangi bir öğrenci bilgi sistemine veya CRM’e otomatik olarak bağlandığı anlamına gelmez. Dış sistemin API’sini kullanmak için uygun modüller, bağlantı ayarları veya ihtiyaca göre özel geliştirme gerekebilir.

API-first yaklaşımı, içerik ve hizmetlerin farklı uygulamalar tarafından kullanılabilmesini tasarımın başından itibaren dikkate alır. Bu yaklaşım, Drupal’ın sayfa oluşturma özelliklerinden vazgeçmeyi gerektirmez. Kurum, web sitesini Drupal ile sunarken aynı içerikleri bir mobil uygulamaya da aktarabilir.

API güvenliğinde nelere dikkat edilmeli?

Kimlik doğrulama ile yetkilendirme farklı kontrollerdir. Bir öğrencinin sisteme giriş yapmış olması, tüm öğrencilerin kayıtlarını görebileceği anlamına gelmez. API, her istekte kullanıcının ilgili işlem ve kayıt için erişim hakkını kontrol etmelidir.

  • Veri aktarımını koruyun: Web API’lerinde HTTPS kullanın. Bunun, kullanıcı ve kayıt düzeyindeki yetki kontrollerinin yerini tutmadığını unutmayın.
  • Gereken veriyi açın: Herkese açık ders kataloğu ile kişisel öğrenci bilgilerini aynı erişim kurallarıyla sunmayın. Kullanılmayan uç noktaları ve gereksiz veri alanlarını kapatın.
  • Anahtarları doğru yönetin: API anahtarı, isteği yapan uygulamanın tanınmasında kullanılabilir; ancak kullanıcının hangi kayda erişebileceğini tek başına belirlemez. Gizli anahtarları herkese açık sayfa koduna veya bağlantı adreslerine eklemeyin.
  • İstekleri denetleyin: Gönderilen verileri doğrulayın, uygun istek sınırları belirleyin ve hataları izleyin. Bu kontroller, hatalı ya da aşırı taleplerin hizmeti aksatma riskini azaltır.

API entegrasyonuna başlamadan önce neler netleştirilmeli?

Başarılı bir entegrasyon için yalnızca API adresini bilmek yeterli değildir. Teknik ekiplerle şu soruların yanıtlarını netleştirmek, uygulama sırasında ortaya çıkabilecek belirsizlikleri azaltır:

  • Asıl veri kaynağı hangisi? Aynı bilgi iki sistemde değiştirilebiliyorsa hangi kaydın esas alınacağını ve alanların nasıl eşleşeceğini belirleyin.
  • Güncelleme ne sıklıkla yapılacak? Her veri için anlık aktarım gerekmeyebilir. Güncellik ihtiyacı ile sistem yükünü birlikte değerlendirin.
  • Bağlantı kesilirse ne olacak? Kullanıcıya gösterilecek mesajı ve yeniden deneme davranışını planlayın. Tekrarlanan bir isteğin aynı başvuruyu iki kez oluşturmaması için gerekli kontrolleri kurun.
  • Değişiklikleri kim takip edecek? API dokümantasyonunu, sürüm değişikliklerini ve hata kayıtlarını takip edecek sorumluları belirleyin.

Drupal tabanlı bir üniversite sitesi planlarken API ihtiyaçlarını, içerik yönetimi ve erişim yetkileriyle birlikte ele alın. Eğitimde Drupal sayfasında platformun kurumsal web projelerindeki kullanım alanlarını inceleyebilirsiniz.

Son güncelleme: 04.11.2026 16:44