İçeriğe geç
VexCoreVexCore
Sözlük

REST API Nedir?

REST API nedir, nasıl çalışır, HTTP, kaynak ve uç nokta kavramları, JSON ve API ile ilişkisi sade bir dille açıklanır. VexCore sözlük rehberi.

Kısa Cevap

REST API, uygulamaların birbiriyle HTTP üzerinden veri alışverişi yapmasını sağlayan bir arayüz tasarım yaklaşımıdır. Sunucudaki veriler "kaynak" olarak adlandırılır ve her kaynağa bir uç nokta üzerinden erişilir. İstek ve yanıtlar genellikle JSON biçiminde taşınır. Bu yapı, sistem entegrasyonlarını daha düzenli ve öngörülebilir hâle getirir.

Özet

  • REST API, HTTP protokolü üzerinden çalışan, kaynak temelli bir arayüz yaklaşımıdır.
  • Her kaynağa benzersiz bir uç nokta (endpoint) üzerinden erişilir.
  • GET, POST, PUT, DELETE gibi HTTP metotları işlemleri belirler.
  • İstek ve yanıt verileri çoğunlukla JSON biçiminde taşınır.
  • Sistem entegrasyonlarını daha düzenli ve öngörülebilir hâle getirmeye yardımcı olur.

REST API ne demek?

REST API, farklı yazılımların internet üzerinden birbiriyle konuşmasını sağlayan bir arayüz tasarım yaklaşımıdır. REST, "Representational State Transfer" ifadesinin kısaltmasıdır ve bir protokol değil, bir mimari yaklaşımdır. API ise iki uygulamanın belirli kurallar çerçevesinde veri alışverişi yapmasını sağlayan arayüzdür. REST kurallarına uygun şekilde tasarlanmış bir API'ye genel olarak REST API ya da RESTful API denir.

Bu yaklaşımın temel fikri sadedir: Sistemdeki her şey bir kaynak olarak ele alınır ve bu kaynaklara standart, öngörülebilir bir biçimde erişilir. Böylece farklı ekiplerin geliştirdiği sistemler ortak bir dilde anlaşabilir.

HTTP üzerinden çalışması

REST API, web tarayıcılarının da kullandığı HTTP protokolü üzerinden çalışır. İşlemler, HTTP metotlarıyla ifade edilir:

  • GET: Bir kaynağı okur, veri getirir.
  • POST: Yeni bir kaynak oluşturur.
  • PUT veya PATCH: Var olan bir kaynağı günceller.
  • DELETE: Bir kaynağı siler.

Bu metotların ayrı ayrı tanımlı olması, isteğin amacını net hâle getirir. Örneğin aynı adrese GET isteği veri okurken, DELETE isteği aynı veriyi silmeye yöneliktir.

Kaynak ve uç nokta kavramı

REST'te veriler kaynak olarak adlandırılır; bir müşteri kaydı, bir fatura ya da bir kullanıcı birer kaynaktır. Her kaynağa, uç nokta (endpoint) denilen bir adres üzerinden erişilir. Uç noktalar genellikle kaynağın ne olduğunu açıkça yansıtacak biçimde tasarlanır; örneğin müşterilerle ilgili bir adres, müşteri kaynağına işaret eder. Bu düzenli yapı, API'yi kullanan geliştiricinin hangi adresin neye karşılık geldiğini kolayca tahmin etmesine yardımcı olur.

JSON ile veri taşıma

REST API'lerde istek ve yanıt verileri çoğunlukla JSON biçiminde taşınır. JSON, hem insanların okuyabileceği hem de yazılımların kolayca işleyebileceği, anahtar-değer çiftlerine dayalı sade bir veri biçimidir. Örneğin bir müşteri kaydı; ad, e-posta ve kayıt tarihi gibi alanları JSON içinde taşıyabilir. JSON'un yaygın olması, farklı programlama dillerinde yazılmış sistemlerin aynı veriyi sorunsuz anlamasını kolaylaştırır.

API ile ilişkisi

Her REST API bir API'dir; ancak her API REST kurallarına uymak zorunda değildir. API, genel bir kavramdır ve birçok farklı tarzda tasarlanabilir. REST ise bu tasarımları belirli ilkelere bağlayan bir yaklaşımdır: kaynak temelli adresleme, standart HTTP metotları ve durumsuz (stateless) iletişim gibi. Bu ilkeler, API'yi daha öngörülebilir ve sürdürülebilir kılar.

Basit bir örnek senaryo

Bir işletmenin sahadaki ekibi, müşteri bilgilerini bir mobil uygulamadan görüntülemek istesin. Mobil uygulama, sunucudaki müşteri kaynağına bir GET isteği gönderir; sunucu da ilgili müşteri kaydını JSON biçiminde geri döndürür. Yeni bir müşteri eklenmek istendiğinde aynı adrese POST isteğiyle JSON verisi gönderilir. Bu döngü, farklı sistemlerin tek bir entegrasyon dili üzerinden çalışmasını sağlar.

VexCore Teknoloji A.Ş.; kamu, yerel yönetim ve özel sektör için sistem entegrasyonu ve kuruma özel geliştirme projelerinde REST API tabanlı arayüzleri değerlendirir. Mevcut sistemler arasında veri akışının daha düzenli ve izlenebilir hâle getirilmesi, pilot/PoC çalışmalarıyla kurum ihtiyacına göre planlanabilir.

Sık sorulan sorular

REST API ile API arasındaki fark nedir?
API genel bir kavramdır ve iki uygulamanın veri alışverişi yapmasını sağlayan her tür arayüzü kapsar. REST API ise REST ilkelerine (kaynak temelli adresleme, standart HTTP metotları, durumsuz iletişim) uygun şekilde tasarlanmış bir API türüdür. Yani her REST API bir API'dir, ancak her API REST değildir.
REST API hangi veri biçimini kullanır?
REST API'ler veri biçimi konusunda esnektir, ancak günümüzde istek ve yanıtlar çoğunlukla JSON biçiminde taşınır. JSON; sade, okunabilir ve birçok programlama dilinde kolayca işlenebilir olduğu için tercih edilir. XML gibi başka biçimler de kullanılabilir.
REST API'de uç nokta (endpoint) nedir?
Uç nokta, bir kaynağa erişmek için kullanılan adrestir. Her kaynak (örneğin bir müşteri ya da fatura) kendine ait bir uç nokta üzerinden çağrılır. Uç noktalar genellikle kaynağı açıkça yansıtacak biçimde tasarlanır, böylece geliştirici hangi adresin neye karşılık geldiğini kolayca anlayabilir.
REST API hangi HTTP metotlarını kullanır?
En sık kullanılan metotlar GET (veri okuma), POST (yeni kayıt oluşturma), PUT veya PATCH (güncelleme) ve DELETE (silme) metotlarıdır. Her metot işlemin amacını net biçimde belirttiği için isteğin ne yapacağı öngörülebilir hâle gelir.
REST API neden tercih edilir?
REST API; kaynak temelli yapısı, standart HTTP metotları ve yaygın JSON desteği sayesinde sistemler arası entegrasyonu daha düzenli ve öngörülebilir hâle getirmeye yardımcı olur. Farklı dillerde yazılmış sistemlerin ortak bir dilde anlaşmasını kolaylaştırır.

Projeniz için konuşalım

Kurumunuzun ihtiyaçlarını birlikte değerlendirelim; size uygun çözüm ve teklif için bizimle iletişime geçin.