REST API Nedir?
Yayın: · Son güncelleme:
REST API Nedir? Kısaca
REST API, uygulamaların HTTP protokolü üzerinden ve genellikle JSON biçiminde veri alışverişi yaptığı, REST mimari ilkelerine dayanan uygulama programlama arayüzüdür. Web'de en yaygın API türüdür.

REST API, bir sunucudaki verilere standart HTTP istekleriyle ulaşmayı sağlayan arayüzdür. Mobil uygulamaların, web sitelerinin ve otomasyon araçlarının büyük kısmı arka planda REST API'lerle konuşur.
REST API nedir?
Kısaltmanın açılımı Representational State Transfer'dır. Bu mimari yaklaşımı Roy Fielding, 2000 yılındaki doktora tezinde tanımladı. Temel fikir, her şeyi bir "kaynak" olarak görmek ve her kaynağa bir adres vermektir. Ürünler, müşteriler ve siparişler birer kaynaktır.
Örneğin bir mağaza API'sinde şu adresler bulunabilir:
/urunler: tüm ürünler/urunler/42: 42 numaralı ürün
HTTP metotları nasıl kullanılır?
| Metot | İşlem | Örnek |
|---|---|---|
| GET | Okuma | Ürün listesini getir |
| POST | Oluşturma | Yeni sipariş ekle |
| PUT / PATCH | Güncelleme | Stok miktarını değiştir |
| DELETE | Silme | Ürünü kaldır |
Sunucu her isteğe bir durum koduyla cevap verir. 200 başarılı, 201 oluşturuldu, 404 bulunamadı, 401 yetkisiz anlamına gelir. Veri çoğunlukla JSON biçiminde döner.
Önemli ilkeler ve dikkat edilecekler
REST'in temel özelliklerinden biri durumsuzluktur (stateless). Sunucu önceki istekleri hatırlamaz; her istek, kimlik bilgisi dahil gereken her şeyi kendisi taşır. Bu, sistemi birden fazla sunucuya dağıtmayı kolaylaştırır.
Bir REST API kullanırken önce dokümantasyonu okuyun: kimlik doğrulama yöntemi, istek sınırı ve sayfalama kuralları genellikle orada yazar. Varsayımsal bir örnek: 10.000 ürünü tek istekte istemek yerine API sayfalama sunuyorsa 100'erli parçalar hâlinde çekmek, hem sizin hem sunucunun işini kolaylaştırır.
Sıkça Sorulan Sorular
REST API ile RESTful API aynı şey mi?
Günlük kullanımda çoğu zaman aynı anlamda kullanılır. RESTful ifadesi, API'nin REST ilkelerine ne kadar sıkı uyduğunu vurgulamak için tercih edilir.
REST API'yi denemek için ne kullanabilirim?
Postman, Insomnia gibi araçlar ya da komut satırındaki curl ile istek gönderebilirsiniz. Birçok API'nin dokümantasyonunda tarayıcıdan deneme imkânı da bulunur.