Mengautentikasi panggilan API

Dalam contoh ini, kami menunjukkan bagaimana akun layanan dapat digunakan untuk memanggil AdSense Platforms API untuk membuat dan mengelola sub-akun.

Langkah 1: Buat project Google Cloud baru (atau gunakan yang sudah ada)

Jika Anda sudah memiliki project Google Cloud, silakan gunakan project tersebut. Jika tidak, ikuti panduan di bawah tentang cara menyiapkan project baru:

https://cloud.google.com/resource-manager/docs/creating-managing-projects

Langkah 2: Buat akun layanan

Menggunakan akun layanan adalah cara terbaik untuk membuat sub-akun. Ikuti langkah-langkah berikut untuk membuat akun layanan:

  • Buka halaman service accounts di Google Cloud
  • Anda dapat menggunakan akun layanan yang sudah ada atau membuat yang baru:
    • Klik "+ Create service account"
    • Mengisi formulir "Detail akun layanan"
    • Langkah 2 dan 3 di halaman (memberikan akses ke project dan pengguna) bersifat opsional

Pelajari lebih lanjut cara membuat dan mengelola akun layanan.

Setelah akun layanan dibuat, Anda harus mengirimkannya ke Google agar ditambahkan ke akun AdSense. Hal ini penting karena akun layanan harus diizinkan untuk mengakses akun AdSense Anda. Harap komunikasikan hal ini melalui Account Manager Anda.

Langkah 3: Aktifkan AdSense Platform API untuk project Google Cloud Anda

AdSense Platform API tidak dapat ditemukan, yang berarti Anda harus membuka link berikut untuk mengaktifkannya untuk project Anda:

https://console.developers.google.com/apis/api/adsenseplatform.googleapis.com/overview

Langkah 4: Buat kunci layanan

Agar dapat menghasilkan token akses untuk digunakan dalam panggilan API, Anda perlu membuat kunci layanan. Ikuti langkah-langkah berikut:

  • Buka halaman service accounts di Google Cloud
  • Di kolom tindakan, untuk akun layanan yang ingin Anda gunakan untuk membuat sub-akun, klik lalu klik "Kelola kunci"
  • Klik "Tambahkan kunci", lalu pilih "Buat kunci baru"
  • Biarkan JSON tetap dipilih sebagai jenis kunci, lalu klik "Buat"
  • File JSON akan dibuat dan didownload ke komputer Anda. Jaga keamanan ini karena akan diperlukan untuk mengautentikasi panggilan API

Pelajari lebih lanjut cara membuat dan mengelola kunci akun layanan.

Langkah 5: Gunakan library OAuth Google untuk membuat token akses

Google menyediakan library untuk membantu menghasilkan token akses, yang dapat digunakan untuk melakukan panggilan API. Pelajari cara membuat kredensial untuk akun layanan di sini:

https://developers.google.com/identity/protocols/oauth2/service-account#authorizingrequests

Cakupan untuk AdSense Platforms API adalah sebagai berikut: https://www.googleapis.com/auth/adsense

Contoh Python

from google.auth.transport import requests
from google.oauth2 import service_account

CREDENTIAL_SCOPES = ["https://www.googleapis.com/auth/adsense"]
CREDENTIALS_KEY_PATH = 'service.json'

def get_service_account_token():
  credentials = service_account.Credentials.from_service_account_file(
          CREDENTIALS_KEY_PATH, scopes=CREDENTIAL_SCOPES)
  credentials.refresh(requests.Request())
  return credentials.token

Pada tahap ini, Anda siap untuk mulai memanggil API. Karena library klien belum didukung untuk AdSense Platform API, permintaan HTTP langsung harus dibuat. Token akses harus disertakan sebagai header dalam permintaan HTTP. {i>Header<i} akan terlihat seperti ini:

Authorization: OAuth <credentials>

Contoh disertakan dalam halaman API.