Ủy quyền và tiêu đề HTTP

Video: Xác thực

Bạn cần có cả thông tin xác thực ứng dụng OAuth 2.0 và mã thông báo dành cho nhà phát triển khi gọi API Google Ads. Nếu đang thực hiện lệnh gọi API bằng tài khoản người quản lý Google Ads, bạn cũng cần chỉ định tiêu đề login-customer-id cho mỗi yêu cầu. Trang này mô tả cách thiết lập các giá trị này và ghi lại một số tiêu đề HTTP dành riêng cho API khác được gửi và nhận khi sử dụng giao diện REST.

Thông tin xác thực OAuth 2.0

API Google Ads sử dụng thông tin xác thực ứng dụng để xác định và uỷ quyền các yêu cầu API. Bạn có thể định cấu hình cả ứng dụng OAuth 2.0 và tài khoản dịch vụ. Để biết thêm thông tin chi tiết về cách định cấu hình quyền uỷ quyền phía máy khách, hãy xem bài viết OAuth2 trong API Google Ads.

Nếu mới sử dụng API của Google, bạn có thể sử dụng oauth2l hoặc OAuth 2.0 Playground để thử nghiệm với thông tin xác thực ứng dụng và API Google Ads trước khi viết mã cho ứng dụng.

Sử dụng quy trình ứng dụng web hoặc máy tính

Làm theo các bước để định cấu hình dự án Google API Console cho API Google Ads. Ghi lại mã ứng dụng kháchkhoá bí mật của ứng dụng khách, sau đó quay lại trang này.

Sau khi bạn tạo một ứng dụng khách OAuth, hãy làm theo hướng dẫn quy trình ứng dụng dành cho máy tính hoặc hướng dẫn quy trình ứng dụng dành cho web để tạo mã thông báo làm mớimã truy cập.

Sử dụng tài khoản dịch vụ

Làm theo hướng dẫn chung trong hướng dẫn về Tài khoản dịch vụ để thiết lập quyền truy cập vào tài khoản dịch vụ cho API Google Ads.

Sau khi bạn thiết lập tài khoản dịch vụ để truy cập vào tài khoản Google Ads, hãy làm theo hướng dẫn Sử dụng OAuth 2.0 cho ứng dụng máy chủ với máy chủ, nhớ chọn thẻ HTTP/REST. scope cần sử dụng để truy cập API Google Ads là https://www.googleapis.com/auth/adwords.

Tạo mã thông báo truy cập mới

Sau khi có mã ứng dụng, mật khẩu ứng dụngmã làm mới, bạn có thể tạo mã truy cập mới để sử dụng trong các lệnh gọi API bằng công cụ dòng lệnh 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

Sau đó, bạn sử dụng mã thông báo truy cập do yêu cầu curl trả về trong tiêu đề HTTP Authorization của mọi lệnh gọi API đến API Google Ads:

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

Tiêu đề yêu cầu

Mã của nhà phát triển

API Google Ads cũng yêu cầu mã của nhà phát triển để thực hiện lệnh gọi đến API. Bạn có thể đăng ký mã thông báo cho tài khoản người quản lý ngay trong giao diện người dùng của Google Ads. Để biết thêm thông tin chi tiết về cách thiết lập mã thông báo nhà phát triển, hãy xem phần Lấy mã thông báo nhà phát triển.

Bạn cần thêm giá trị mã của nhà phát triển vào tiêu đề HTTP developer-token của mọi lệnh gọi API đến API Google Ads:

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

Mã khách hàng đăng nhập

Đối với các lệnh gọi API Google Ads do người quản lý thực hiện đến tài khoản khách hàng (tức là khi đăng nhập dưới vai trò người quản lý để thực hiện lệnh gọi API đến một trong các tài khoản khách hàng của người quản lý đó), bạn cũng cần cung cấp tiêu đề HTTP login-customer-id. Giá trị này thể hiện mã khách hàng Google Ads của người quản lý thực hiện lệnh gọi API.

Việc thêm tiêu đề này tương đương với việc chọn một tài khoản trong giao diện người dùng Google Ads sau khi đăng nhập hoặc nhấp vào ảnh hồ sơ của bạn ở góc trên cùng bên phải của trang. Khi chỉ định mã khách hàng, hãy nhớ xoá mọi dấu gạch nối (–), ví dụ: 1234567890, chứ không phải 123-456-7890.

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

Mã khách hàng được liên kết

Tiêu đề này chỉ được nhà cung cấp dịch vụ phân tích ứng dụng bên thứ ba sử dụng khi tải lượt chuyển đổi lên tài khoản Google Ads đã liên kết. Hãy xem Hướng dẫn về cấu trúc lệnh gọi API để biết thêm thông tin chi tiết.

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

Tiêu đề phản hồi

Các tiêu đề sau đây được trả về trong phản hồi HTTP từ API.

Mã yêu cầu

request-id là một chuỗi xác định duy nhất yêu cầu API. Khi gỡ lỗi hoặc khắc phục sự cố với các lệnh gọi API cụ thể, request-id là một giá trị nhận dạng quan trọng cần có khi liên hệ với nhóm hỗ trợ nhà phát triển của Google.

request-id: 2a5Cj89VV7CNhya1DZjjrC