ส่วนนี้มีไว้สำหรับผู้ใช้ขั้นสูงที่คุ้นเคยกับข้อกำหนด OAuth 2.0 อยู่แล้วและทราบวิธีใช้ OAuth 2.0 กับ Google APIs
ขอบเขต
โทเค็นเพื่อการเข้าถึงรายการเดียวสามารถให้สิทธิ์การเข้าถึง API หลายรายการในระดับต่างๆ พารามิเตอร์ตัวแปรที่ชื่อ scope ควบคุมชุดทรัพยากรและการดำเนินการ ที่โทเค็นเพื่อการเข้าถึงอนุญาต ในระหว่างคำขอโทเค็นเพื่อการเข้าถึง แอปของคุณจะส่งค่าอย่างน้อย 1 ค่าในพารามิเตอร์ scope
ขอบเขตสำหรับ Google Ads API คือ
https://www.googleapis.com/auth/adwords
การเข้าถึงแบบออฟไลน์และอายุการใช้งานของโทเค็น
แอปไคลเอ็นต์ Google Ads API มักจะขอสิทธิ์เข้าถึงแบบออฟไลน์ เช่น แอปอาจต้องการเรียกใช้ชื่องานแบบกลุ่มเมื่อผู้ใช้ไม่ได้ออนไลน์ เรียกดูเว็บไซต์ของคุณ โทเค็นเพื่อการเข้าถึงมีอายุ 3,600 วินาที (1 ชั่วโมง) หลังจากนั้นแอปของคุณต้องแลกเปลี่ยนโทเค็นการรีเฟรชเป็นโทเค็นเพื่อการเข้าถึงใหม่
หากต้องการขอสิทธิ์เข้าถึงแบบออฟไลน์สำหรับประเภทเว็บแอป ให้ตรวจสอบว่าคุณได้ตั้งค่าพารามิเตอร์
access_type เป็น offline ดูข้อมูลเพิ่มเติมได้ในคู่มือ OAuth 2.0 ของ Google
สำหรับแอปประเภทเดสก์ท็อป ระบบจะเปิดใช้การเข้าถึงแบบออฟไลน์โดยค่าเริ่มต้น คุณจึงไม่ จำเป็นต้องขอสิทธิ์อย่างชัดเจน
ส่วนหัวของคำขอ
คำขอทั้งหมดที่ส่งไปยัง Google Ads API ต้องมีโทเค็นเพื่อการเข้าถึง OAuth 2.0 ใน ส่วนหัวของคำขอ ส่วนต่อไปนี้จะอธิบายวิธีส่งต่อข้อมูลเข้าสู่ระบบเหล่านี้ โดยใช้ gRPC และ REST
ส่วนหัว gRPC
เมื่อใช้ gRPC API ให้ใส่โทเค็นเพื่อการเข้าถึงในแต่ละคำขอ คุณสามารถเชื่อมโยง
Credential กับ Channel เพื่อใช้ในคำขอทั้งหมดในแชแนลนั้น นอกจากนี้ คุณยังส่งข้อมูลเข้าสู่ระบบที่กำหนดเองสำหรับการเรียกแต่ละครั้งได้ด้วย คำแนะนำในการให้สิทธิ์ gRPC มีรายละเอียดเพิ่มเติมเกี่ยวกับการจัดการการให้สิทธิ์
ส่วนหัว REST
เมื่อใช้ REST API ให้ส่งโทเค็นเพื่อการเข้าถึงผ่านส่วนหัว HTTP
Authorization: Bearer <ACCESS_TOKEN> ตัวอย่างคำขอ 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}" \