Phần này dành cho người dùng nâng cao đã quen thuộc với quy cách OAuth 2.0 và biết cách sử dụng OAuth 2.0 với API của Google.
Phạm vi
Một mã truy cập có thể cấp nhiều cấp độ truy cập khác nhau cho nhiều API. Tham số biến có tên là scope kiểm soát tập hợp tài nguyên và thao tác mà mã truy cập cho phép. Trong yêu cầu mã truy cập, ứng dụng của bạn sẽ gửi một hoặc nhiều giá trị trong tham số scope.
Phạm vi của Google Ads API là:
https://www.googleapis.com/auth/adwords
Xem không cần mạng và thời gian hoạt động của mã thông báo
Ứng dụng khách Google Ads API thường yêu cầu quyền truy cập khi không có mạng. Ví dụ: ứng dụng của bạn có thể muốn chạy các công việc theo lô khi người dùng không trực tuyến để duyệt xem trang web của bạn. Mã truy cập có thời gian hoạt động là 3.600 giây (1 giờ), sau đó ứng dụng của bạn phải đổi mã làm mới lấy mã truy cập mới.
Để yêu cầu quyền truy cập khi không có mạng cho một loại ứng dụng web, hãy nhớ đặt tham số access_type thành offline. Bạn có thể tìm thêm thông tin trong
hướng dẫn về OAuth 2.0 của Google.
Đối với loại ứng dụng dành cho máy tính, quyền truy cập khi không có mạng được bật theo mặc định, nên bạn không cần phải yêu cầu rõ ràng.
Tiêu đề của yêu cầu
Tất cả yêu cầu gửi đến Google Ads API đều phải có mã truy cập OAuth 2.0 trong tiêu đề của yêu cầu. Các phần sau đây mô tả cách truyền các thông tin xác thực này bằng gRPC và REST.
tiêu đề gRPC
Khi sử dụng gRPC API, hãy thêm mã truy cập vào mỗi yêu cầu. Bạn có thể liên kết Credential với Channel để sử dụng cho tất cả yêu cầu trên kênh đó. Bạn cũng có thể gửi thông tin xác thực tuỳ chỉnh cho mỗi lệnh gọi. Hướng dẫn uỷ quyền gRPC có thêm thông tin chi tiết về cách xử lý việc uỷ quyền.
Tiêu đề REST
Khi sử dụng API REST, hãy truyền mã truy cập qua tiêu đề HTTP Authorization: Bearer <ACCESS_TOKEN>. Dưới đây là ví dụ về yêu cầu HTTP:
# Returns the resource names of customers directly accessible by the user
# authenticating the call.
#
# Variables:
# API_VERSION,
# OAUTH2_ACCESS_TOKEN:
# See https://developers.google.com/google-ads/api/rest/auth#request_headers
# for details.
#
curl -f --request GET \
"https://googleads.googleapis.com/v${API_VERSION}/customers:listAccessibleCustomers" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${OAUTH2_ACCESS_TOKEN}" \