Rest API bağlayın

Kuika ile Datasources: Rest API'yi öğrenin.

REST API (Representational State Transfer Application Programming Interface), uygulamalar arasında veri iletişimini kolaylaştıran bir protokoldür. REST API'leri kullanarak, bir uygulama diğer bir uygulamadan veri alabilir veya veri gönderebilir.

Bir hava durumu uygulamanız olduğunu varsayalım. Hava durumu verilerini dışarıdan bir hizmetten almanız gerekiyor. Bu hizmetin REST API'sini kullanarak, hava durumu verilerini çekebilirsiniz.

Örneğin, hava durumu verilerini almak için şu URL'yi kullanabilirsiniz: https://api.weather.com/current-weather?city=Ankara.

Bu URL'i tarayıcıda açtığınızda, hava durumu verilerini döndüren bir yanıt alırsınız. Uygulamanızda bu API'yi kullanarak hava durumu verilerini çekebilir ve kullanıcıya sunabilirsiniz.

Bu şekilde, REST API'leri kullanarak farklı uygulamalar arasında veri alışverişi sağlayabilirsiniz.

Kuika'da geliştirdiğiniz bir uygulamaya veri kaynağı olarak Rest API Bağlama

Kuika ile uygulama geliştirirken çeşitli veri kaynaklarını kullanabilirsin. Kullanabileceğin veri kaynaklarından biri de Rest API’dir. Sahip olduğunuz bir Rest API’ ı Kuika’da geliştirdiğiniz bir uygulamaya veri kaynağı olarak hızlıca bağlayabilirsiniz.

Kuika’da Rest API oluşturmak için uygulama içerisinde yer alan Header’da Datasource görünüm moduna tıklayın.

Datasources görünüm modunda sol taraftan geliştirdiğiniz uygulamada yer alan veri kaynaklarını, aksiyonları ve tabloları görüntüleyebilirsiniz. Yeni bir veri kaynağı, yeni bir aksiyon ve yeni bir tablo ekleyebilirsiniz.

Datasources görünüm modunda solda yer alan + ikonuna tıklayın. Açılan ekran yeni bir Datasource oluşturma ekranında REST API’yi seçip isimlendirme yaparak Create butonuna tıklayın.

Kullanıcı açılan ekran içerisinde başlangıçta API’ye verilen ismin yazılı olduğu alana tıklayarak isim değiştirilebilmektedir. Sağ köşede yer alan Description alanında ise kullanıcı API ile ilgili notları tutabilmektedir.

Connection Settings sayfasında API’nin bağlantı ve kimlik doğrulama ayarlarının yapıldığı alanları barındırmaktadır. API’nin bağlantı ayarlarını yapabilmek için Service Base URL alanına API’ın servis verdiği URL’inin girilmesi gerekmektedir.

Örnek API URL’i: https://petstore.swagger.io/v2

(API Dökümantasyonu için: https://petstore.swagger.io/)

Bir API'nin servis taban URL'si (base URL), API sağlayıcısı tarafından sunulur API sağlayıcısının web sitesinde bulunur.

Kimlik doğrulama ayarlarının yapılması için Authentication Type başlıklı açılır menüde yer alan No Auth, Bearer veya API Key seçeneklerinden birinin seçilmesi gerekmektedir.

1. No Auth

Eğer kimlik doğrulama türü olarak No Auth seçimi yapılmış ise herhangi bir yapılandırma işlemi yapılmasına gerek yoktur.

No Auth haricinde Bearer ve API Key seçeneklerinde parametreler oluşturulmaktadır. Query String,Path ve Header olmak üzere Üç çeşit parametre oluşturulabilmektedir.

Query String

  • Query string, URL'in sonunda "?" işareti ile başlar ve bir veya daha fazla anahtar-değer çifti içerir. Örnek: https://www.example.com/api/endpoint?param1=value1&param2=value2

  • "?" işaretinden sonra her anahtar bir "=" işareti ile değeri ile ayrılır ve farklı anahtar-değer çiftleri "&" işareti ile birbirinden ayrılır.

  • Query string, genellikle filtrelemek, sıralamak veya sorgu yapmak gibi işlemler için kullanılır.

Path (Yol):

  • Path parametreleri, URL'in başlangıcından itibaren gelen ve kaynakların belirli bir yapıda gösterildiği kısmı ifade eder. Örnek: https://www.example.com/api/users/123/profile

  • Path parametreleri, endpoint veya kaynakların belirli bir şekilde sıralandığı ve erişildiği URL parçalarını ifade eder.

  • Path parametreleri genellikle veri okuma, güncelleme veya silme işlemleri için kullanılır.

Header (Başlık):

  • Header parametreleri, HTTP isteklerinde veya cevaplarında ek bilgileri taşır ve genellikle anahtar-değer çiftleri olarak gelir.

2. Bearer

  • Bearer, bir istemci (genellikle bir uygulama veya kullanıcı) tarafından sunucuya erişim yetkisinin kanıtı olarak kullanılır.

  • Bu, OAuth 2.0 ve diğer kimlik doğrulama protokollerinde yaygın olarak kullanılan bir yöntemdir.

  • Kuika içerisinde Authentication type açılır menü içerisinden Bearer seçildiğinde açılan ekranda parametreler Custom ve Username ile birlikte gelmektedir.

  • Parametre ekleme işlemi sırasında Kuika senin için varsayılan olarak Username parametresine ait değer (value) oluşturmaktadır. Özel parametreler eklemek için Custom seçeneğini kullanarak parametre bilgilerini Key ve Value Pair olarak gir.

Bearer kimlik doğrulama yöntemi, şu şekilde çalışır:

  • Bir istemci (örneğin, bir mobil uygulama veya web uygulaması), bir sunucuya erişmek için kimlik doğrulama gerektiğinde sunucuya bir istek gönderir.

  • Sunucu, istemcinin kimlik doğrulama gerektiğini algılar ve bir erişim belirteci (access token) üretir. Erişim belirteci, istemcinin sunucu tarafındaki kaynaklara erişmesine izin veren bir yetkilendirme kodudur.

  • Sunucu, erişim belirtecini istemciye verir. Bu erişim belirteci, bir Bearer Token olarak adlandırılır.

  • İstemci, sunucu tarafındaki kaynaklara erişmek istediğinde, HTTP isteğinin başlık bölümünde Authorization (Yetkilendirme) başlığını kullanarak Bearer Token'i sunucuya ileterek kimlik doğrulama yapar. Bearer Token, Bearer kelimesi ile birlikte bir boşlukla ayrılarak gönderilir.

3. API Key

API Key (Application Programming Interface Key), API kullanarak uygulama geliştirme işlemlerini güvence altına almak ve izlemek için kullanılan bir kimlik doğrulama mekanizmasıdır.

Açılır pencere içerisinden API Key seçildiğinde,Custom, Username, Auth Token seçenekleri ile gelmektedir.

Authentication Type alanında API key seçildiğinde kimlik doğrulama türünü kullanmak için Client ID Key Name, Client ID, Client Secret Key Name, Client Secret alanları doldurulmalıdır.

  • Client ID Key Name: Bu, API isteği başlığında kullanılan anahtar adıdır.

  • Client ID: Bir uygulamanın veya kullanıcının tanımlandığı benzersiz kimliktir.

  • Client Secret Key Name: Yine API isteği başlığında kullanılan, gizli anahtarın adıdır.

  • Client Secret: Client ID'yi doğrulamak için kullanılan, gizli ve güvende tutulması gereken bir anahtardır.

Bilgi girişini sağladıktan sonra parametre ekleme işlemini yap. Parametre ekleme işlemi sırasında Kuika senin için varsayılan olarak Username parametresine ait değeri oluşturmaktadır. Özel parametreler eklemek için Custom seçeneğini kullanarak parametre bilgilerini Key ve Value pair olarak girin.

Gerekli bilgiler ve parametreler girildikten sonra Create butonuna tıklayın. Ardından Rest API, yeni bir ekrana yönlendirilecektir.

Rest API EndPoint:

API Endpoint, bir web hizmetinin (API) belirli bir işlevselliği veya kaynağı temsil eden, erişilebilir bir URL veya URI (Uniform Resource Identifier) adresidir. Endpoint, bir API'nin dış dünyayla iletişim kurmasını ve belirli bir kaynağı veya işlemi gerçekleştirmesini sağlar.

Rest API EndPoint ekranında Parameters, Authorization, Body kategorileri yer almaktadır.

Parameters ekranında tanımlanan Key, Value, Location, Type gibi alanlar ile API’ye parametre oluşturabilirsiniz.

Authorization ekranında Authentication Type’da içerisinde Rest API de olduğu gibi No Auth, Bearer ve API Key yer almaktadır.

Farklı olarak Inherit From collection yer almaktadır.

Açılır menü içerisinden Inherit From collection seçilirse, Rest API’nin içerisinde tanımlı parametreler kullanılır.

Body ekranı ise oluşturulan HTTP isteklerinde dönen değerleri göstermektedir.

GET : Veri almak için kullanılır, sunucuya veri göndermez.

POST : Sunucuya yeni veri göndermek için kullanılır, veri HTTP isteği gövdesinde iletilir.

PUT : Mevcut veriyi güncellemek veya yeni veri oluşturmak için kullanılır.

DELETE : Belirtilen URL'deki kaynağı silmek için kullanılır.

GET ve DELETE’de geri dönen bir alan olmadığı için Body alanı sadece sadece okunur şekilde görüntülenmektedir.

Body ekranı, Request Body, Response Body gibi iki temel alandan oluşmaktadır.

Request Body, bir HTTP isteğinin bir parçasıdır. Bu, bir istemci tarafından bir sunucuya gönderilen isteğin veri veya içeriğini içeren kısımdır.

Response Body, bir web isteğinin sonucunda gelen isteğin başarılı bir şekilde tamamlanması durumunda döner ve isteğin amacına bağlı olarak farklı veri türlerini içerir.

Datasource içerisinde herhangi bir yeni Endpoint tanımlamak istediğinizde Oluşturulan RestAPI altında Actions yanında yer alan + ikonuna tıklayın. New Rest API Endpointi seçerek yeni bir Endpoint oluşturabilirsiniz.

Rest API Endpoint ekranında HTML metodları seçilerek path yazılır. Açılan ekranda API Url’i yazılı bir şekilde gelmektedir.

Rest API Entegrasyonu

https://petstore.swagger.io/v2 API URL ile Kuika içerisinde Rest API entegrasyonunu inceleyelim.

İlk olarak Datasource görünüm moduna tıklayın. Ardından + ikonuna tıklayarak Rest API’ye tıklayın. PetRestApi şeklinde isimlendirme yapın.

Ardından Create butonuna tıklayın.

Service Base URL alanına ise https://petstore.swagger.io/v2 API URL’ini girin. Authentication Type’ı No Auth olarak seçin.

Ardından Create butonuna tıklayın.

Rest API Endpoint ekranı açılacaktır. Bu ekranda API'ye ait endpointleri projenize action olarak entegre edebilirsiniz. API endpointleri eklerken kaynak kodunuza veya varsa dokümanınıza bakmalısınız. (Örn https://petstore.swagger.io/v2)

Bu sayfa içerisinde eklemek istediğiniz HTTP metodunu açılır pencere içerisinden seçip önünde “ / “olmayacak şekilde eklemelisiniz. Çünkü, “ / ” Kuika’da tanımlı gelmektedir.

Örneğin, GET metodunu kullanmak için /pet/findByStatus kopyalanıp önündeki “ / ” alınmayarak items yazan yere eklenir.

Eğer entegre etmek istediğiniz Rest API'nin endpoint inde herhangi bir parametre kullanılıyorsa burda eklemelisiniz .

Parametre oluşturmak için Add field’e tıklayın.

Parametre de oluşturulduktan sonra Run butonuna tıklayın.

Rest API ve parametre başarılı bir şekilde oluşturuldu.

Oluşturulan Rest API sol panede HTTP metoduyla birlikte görüntülenecektir.

Rest API işlemlerini kolaylıkla yapmış oldunuz.

Last updated