Otorisasi dan Header HTTP

Video: Autentikasi

Anda memerlukan kredensial aplikasi OAuth 2.0 dan token developer saat memanggil Google Ads API. Jika Anda melakukan panggilan API dengan akun pengelola Google Ads, Anda juga harus menentukan header dengan setiap permintaan.login-customer-id Halaman ini menjelaskan cara menetapkan nilai ini dan mendokumentasikan beberapa header HTTP khusus API tambahan yang dikirim dan diterima saat menggunakan antarmuka REST.

Kredensial OAuth 2.0

Google Ads API menggunakan kredensial aplikasi untuk mengidentifikasi dan mengizinkan permintaan API. Klien OAuth 2.0 dan akun layanan dapat dikonfigurasi. Untuk mengetahui detail selengkapnya tentang cara mengonfigurasi otorisasi sisi klien, lihat OAuth2 di Google Ads API.

Jika Anda baru menggunakan Google API, Anda dapat menggunakan oauth2l atau OAuth 2.0 Playground untuk bereksperimen dengan kredensial aplikasi dan Google Ads API sebelum menulis kode untuk aplikasi Anda.

Menggunakan alur aplikasi desktop atau web

Ikuti langkah-langkah untuk mengonfigurasi project Konsol API Google untuk Google Ads API. Catat client ID dan rahasia klien, lalu kembali ke halaman ini.

Setelah membuat klien OAuth, ikuti petunjuk alur aplikasi desktop atau petunjuk alur aplikasi web untuk membuat token refresh dan token akses.

Menggunakan akun layanan

Ikuti petunjuk umum dalam panduan Akun Layanan untuk menyiapkan akses akun layanan bagi Google Ads API.

Setelah menyiapkan akun layanan untuk mengakses akun Google Ads, ikuti panduan Menggunakan OAuth 2.0 untuk Aplikasi Server ke Server, dan pastikan untuk memilih tab HTTP/REST. scope yang digunakan untuk akses Google Ads API adalah https://www.googleapis.com/auth/adwords.

Membuat token akses baru

Setelah memiliki client ID, client secret, dan refresh token, Anda dapat membuat token akses baru untuk digunakan dalam panggilan API dengan alat command line curl:

curl \
  --data "grant_type=refresh_token" \
  --data "client_id=CLIENT_ID" \
  --data "client_secret=CLIENT_SECRET" \
  --data "refresh_token=REFRESH_TOKEN" \
  https://www.googleapis.com/oauth2/v3/token

Kemudian, Anda menggunakan token akses yang ditampilkan oleh permintaan curl di header HTTP Authorization dari setiap panggilan API ke Google Ads API:

GET /v21/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

Header permintaan

Token Developer

Google Ads API juga memerlukan token developer untuk melakukan panggilan ke API. Anda dapat mengajukan permohonan token untuk akun pengelola Anda langsung dari UI Google Ads. Untuk mengetahui detail selengkapnya tentang cara menyiapkan token developer, lihat Mendapatkan Token Developer Anda.

Anda harus menyertakan nilai token developer di header HTTP developer-token setiap panggilan API ke Google Ads API:

GET /v21/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

ID pelanggan login

Untuk panggilan Google Ads API yang dilakukan oleh pengelola ke akun klien (yaitu, saat login sebagai pengelola untuk melakukan panggilan API ke salah satu akun kliennya), Anda juga perlu memberikan header HTTP login-customer-id. Nilai ini merepresentasikan ID pelanggan Google Ads pengelola yang melakukan panggilan API.

Menyertakan header ini sama dengan memilih akun di UI Google Ads setelah login atau mengklik foto profil Anda di sudut kanan atas halaman. Saat menentukan ID pelanggan, pastikan untuk menghapus tanda hubung (—), misalnya: 1234567890, bukan 123-456-7890.

GET /v21/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN
login-customer-id: MANAGER_CUSTOMER_ID

ID pelanggan tertaut

Header ini hanya digunakan oleh penyedia analisis aplikasi pihak ketiga saat mengupload konversi ke akun Google Ads yang tertaut. Lihat panduan Struktur Panggilan API untuk mengetahui detail selengkapnya.

...
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN
login-customer-id: MANAGER_CUSTOMER_ID
linked-customer-id: LINKED_CUSTOMER_ID

Header respons

Header berikut ditampilkan dalam respons HTTP dari API.

ID Permintaan

request-id adalah string yang secara unik mengidentifikasi permintaan API. Saat men-debug atau memecahkan masalah pada panggilan API tertentu, request-id adalah ID penting yang harus tersedia saat menghubungi dukungan developer Google.

request-id: 2a5Cj89VV7CNhya1DZjjrC