Doğrudan istek gönderme

Uygulamanız için istemci kitaplıklarını ve örneklerini kullanmanızı öneririz. Bununla birlikte, API ile entegrasyonunuzun desteklenmeyen bir dil kullanmak gibi özel ihtiyaçları varsa aşağıda açıklandığı şekilde doğrudan istekte bulunabilirsiniz.

Görüşme stili

REST, veri isteme ve değiştirmeye kullanışlı ve tutarlı yaklaşım sağlayan bir yazılım mimarisi stilidir.

REST terimi, "Representational State Transfer"in (Temsili Durum Aktarımı) kısaltmasıdır. Google API'leri bağlamında, Google tarafından saklanan verilerin temsillerini almak ve değiştirmek için HTTP fiillerini kullanma anlamına gelir.

RESTful bir sistemde, kaynaklar bir veri deposunda saklanır. Bir istemci, sunucunun belirli bir işlemi (ör. kaynak oluşturma, alma, güncelleme veya silme) gerçekleştirmesi için istek gönderir. Sunucu, işlemi gerçekleştirir ve yanıt gönderir. Bu yanıt genelde belirtilen kaynağın bir temsili biçimindedir.

Google'ın RESTful API'lerinde istemci, POST, GET, PUT veya DELETE gibi bir HTTP fiili kullanarak işlem belirtir. Bir kaynağı, aşağıdaki biçimde genel olarak benzersiz bir URI ile belirtir:

https://www.googleapis.com/apiName/apiVersion/resourcePath?parameters

Tüm API kaynaklarının HTTP tarafından erişilebilen benzersiz URI'ları olduğu için REST, veri önbelleğe almayı etkinleştirir ve web'deki dağıtılan altyapıyla birlikte çalışmak üzere optimize edilmiştir.

HTTP 1.1 standartları belgelerindeki yöntem tanımlarını faydalı bulabilirsiniz. Bu tanımlar, GET, POST, PUT ve DELETE özelliklerini içerir.

AdSense Management API'de REST

Desteklenen işlemler, AdSense Management API işlemlerinde açıklandığı gibi doğrudan REST HTTP fiilleriyle eşlenir.

AdSense Management API URI'ları için spesifik biçim şu şekildedir:

https://adsense.googleapis.com/v2/resourceID?parameters

Burada resourceID; reklam istemcisi, reklam birimi, URL kanalı, özel kanal veya rapor koleksiyonunun tanımlayıcısıdır. parameters ise sorguya uygulanacak tüm parametrelerdir.

resourceID yol uzantılarının biçimi, şu anda çalıştırmakta olduğunuz kaynağı tanımlamanızı sağlar. Örneğin:

https://adsense.googleapis.com/v2/accounts/account_id/adclients
https://adsense.googleapis.com/v2/accounts/account_id/adclients/adClientId
https://adsense.googleapis.com/v2/accounts/account_id/adclients/adClientId/adunits
https://adsense.googleapis.com/v2/accounts/account_id/adclients/adClientId/adunits/adUnitId
https://adsense.googleapis.com/v2/accounts/account_id/adclients/adClientId/urlchannels
...

API'de desteklenen her işlem için kullanılan URI'ların tamamı AdSense Management API Referansı belgesinde özetlenmiştir.

Aşağıda, bunun AdSense Management API'de nasıl işlediğine dair birkaç örnek verilmiştir.

Reklam müşterilerini listele:

GET https://adsense.googleapis.com/v2/accounts/account_id/adclients/

Reklam istemcisindeki ca-pub-1234567890123456'da reklam birimlerini listeleme:

GET https://adsense.googleapis.com/v2/accounts/account_id/adclients/ca-pub-1234567890123456/adunits

Veri biçimi

JSON (JavaScript Object Notation - JavaScript Nesne Gösterimi), rastgele veri yapılarının basit metin temsilini sağlayan yaygın, dilden bağımsız bir veri biçimidir. Daha fazla bilgi için json.org adresine bakın.

İstekleri yetkilendirme

AdSense'in Hizmet Hesaplarını desteklemediğini, bunun yerine Yüklü Uygulama akışını kullanmanız gerektiğini unutmayın.

Uygulamanızın AdSense Management API'ye gönderdiği her istek bir yetkilendirme jetonu içermelidir. Bu jeton ayrıca uygulamanızı Google'a tanıtır.

Yetkilendirme protokolleri hakkında

Uygulamanız, istekleri yetkilendirmek için OAuth 2.0 kullanmalıdır. Başka hiçbir yetkilendirme protokolü desteklenmez. Uygulamanız Google ile Oturum Açma özelliğini kullanıyorsa yetkilendirme işleminin bazı kısımları sizin adınıza gerçekleştirilir.

OAuth 2.0 kullanarak istekleri yetkilendirme

AdSense Management API'ye yapılan tüm isteklerin kimliği doğrulanmış bir kullanıcı tarafından yetkilendirilmesi gerekir.

Bu işlem, OAuth istemci kimliğiyle gerçekleştirilir.

OAuth istemci kimliği alma

veya Kimlik Bilgileri sayfasında bir tane oluşturun.

OAuth 2.0 ile yetkilendirme işleminin ("akış") ayrıntıları, yazdığınız uygulamanın türüne bağlı olarak değişiklik gösterir. Aşağıdaki genel işlem tüm uygulama türleri için geçerlidir:

  1. Uygulamanız kullanıcı verilerine erişmesi gerektiğinde Google'dan belirli bir erişim kapsamı ister.
  2. Google, kullanıcıya uygulamanızı kullanıcının verilerinden bazılarını istemeye yetkilendirmesi için bir onay ekranı gösterir.
  3. Kullanıcı onaylarsa Google, uygulamanıza kısa süreli bir erişim jetonu verir.
  4. Uygulamanız, erişim jetonunu isteğe ekleyerek kullanıcı verileri için istekte bulunur.
  5. Google, isteğinizin ve jetonun geçerli olduğuna kanaat getirirse istenen verileri döndürür.

Bazı akışlarda başka adımlar da yer alır. Örneğin, yeni erişim jetonları almak için yenileme jetonları kullanmak. Farklı uygulama türlerine yönelik akışlar hakkında ayrıntılı bilgi için Google'ın OAuth 2.0 dokümanlarına bakın.

AdSense Management API'si için OAuth 2.0 kapsam bilgileri aşağıda verilmiştir:

Kapsam Anlamı
https://www.googleapis.com/auth/adsense AdSense verilerine okuma/yazma erişimi.
https://www.googleapis.com/auth/adsense.readonly AdSense verilerine salt okuma erişimi.

Uygulamanızın OAuth 2.0 kullanarak erişim isteğinde bulunabilmesi için hem kapsam bilgilerine hem de uygulamanızı kaydederken Google tarafından sağlanan bilgilere (ör. istemci kimliği ve istemci gizli anahtarı) ihtiyacı vardır.

İpucu: Google API'leri istemci kitaplıkları, yetkilendirme işleminin bazı adımlarını sizin yerinize gerçekleştirebilir. Bu kitaplıklar çeşitli programlama dilleri için kullanıma sunulmuştur. Ayrıntılar için kitaplıkların ve örneklerin bulunduğu sayfayı inceleyin.

İstekte bulunma

Son adım API isteğinde bulunmaktır. Özel bilgiler için referans belgelerine göz atın.