Nội dung bên trong của OAuth 2.0 cho API Google Ads

Phần này dành cho những người dùng nâng cao đã quen thuộc với thông số kỹ thuật OAuth 2.0 và biết cách sử dụng OAuth 2.0 với các API của Google.

Phạm vi

Một mã truy cập có thể cấp nhiều mức độ truy cập cho nhiều API. Một tham số biến có tên là scope sẽ 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 quá trình 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 cho Google Ads API là:

https://www.googleapis.com/auth/adwords

Xem không cần mạng và thời gian tồn tại của mã

Ứng dụng khách API Google Ads 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 hàng loạt khi người dùng không trực tuyến duyệt trang web của bạn. Mã truy cập có thời gian tồn tại là 3.600 giây (1 giờ), sau đó ứng dụng của bạn phải trao đổ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 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, tính năng xem không cần mạng được bật theo mặc định – bạn không phải yêu cầu một cách 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 API gRPC, 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 trên tất cả cá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 về Uỷ quyền gRPC có thêm thông tin chi tiết về cách xử lý quá trình uỷ quyền.

Tiêu đề REST

Khi sử dụng API REST, hãy truyền mã truy cập thông qua tiêu đề HTTP Authorization: Bearer <ACCESS_TOKEN>. Sau đâ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}" \