Uygulamanızda istemci kitaplıklarını ve örneklerini kullanmanızı öneririz. Ancak API ile entegrasyonunuzda desteklenmeyen bir dil kullanmak gibi özel ihtiyaçlarınız varsa aşağıda açıklandığı şekilde doğrudan istekte bulunabilirsiniz.
Arama 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, HTTP fiili kullanarak (ör. POST, GET, PUT veya DELETE) bir işlem belirtir. Aşağıdaki biçimde yer alan küresel olarak benzersiz bir URI ile kaynak 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ı yararlı bulabilirsiniz. Bu tanımlar, GET, POST, PUT ve DELETE özelliklerini içerir.
AdSense Management API'de REST
Desteklenen işlemler doğrudan REST HTTP fiilleriyle eşlenir.
AdSense Management API URI'lerinin biçimi şu şekildedir:
https://adsense.googleapis.com/v2/resourceID?parameters
Burada resourceID, bir reklam istemcisinin, reklam biriminin, URL kanalının, özel kanalın veya rapor koleksiyonunun tanımlayıcısıdır ve parameters, sorguya uygulanacak parametrelerdir.
resourceIDYol uzantılarının
biçimi, şu anda üzerinde çalıştığınız kaynağı belirlemenize olanak tanır:
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'deki desteklenen her işlem için kullanılan URI'lerin tümü AdSense Management API Referansı belgesinde özetlenmiştir.
AdSense Management API'de bu işlemin nasıl çalıştığına dair birkaç örnek aşağıda verilmiştir.
List ad clients:
GET https://adsense.googleapis.com/v2/accounts/account_id/adclients/ca-pub-1234567890123456 reklam istemcisindeki reklam birimlerini listeleyin:
GET https://adsense.googleapis.com/v2/accounts/account_id/adclients/ca-pub-1234567890123456/adunits
Veri biçimi
JSON (JavaScript Object Notation), rastgele veri yapılarını basit metin biçiminde sunan, yaygın şekilde kullanılan ve 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 tarafından AdSense Management API'ye gönderilen her isteğin bir yetkilendirme jetonu içermesi gerekir. 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 Yönetim API'sine gönderilen tüm isteklerin, kimliği doğrulanmış bir kullanıcı tarafından yetkilendirilmesi gerekir.
Bu işlem, OAuth istemci kimliğiyle kolaylaştırılır.
OAuth istemci kimliği almaveya 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:
- Uygulamanız kullanıcı verilerine erişmesi gerektiğinde Google'dan belirli bir erişim kapsamı ister.
- Google, kullanıcıya uygulamanızı kullanıcının verilerinden bazılarını istemeye yetkilendirmesi için bir onay ekranı gösterir.
- Kullanıcı onaylarsa Google, uygulamanıza kısa süreli bir erişim jetonu verir.
- Uygulamanız, erişim jetonunu isteğe ekleyerek kullanıcı verileri için istekte bulunur.
- 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 için OAuth 2.0 kapsam bilgileri şöyledir:
| 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ğini göndermektir. Belirli bilgiler için referans belgelerini inceleyin.