การให้สิทธิ์และส่วนหัว HTTP

คุณต้องมีข้อมูลเข้าสู่ระบบ OAuth 2.0 เมื่อเรียกใช้ Google Ads API หากคุณทำการเรียก API ด้วยบัญชีดูแลจัดการ Google Ads คุณจะต้องระบุส่วนหัว login-customer-id ด้วยคำขอแต่ละรายการด้วย หน้านี้อธิบายวิธีตั้งค่าเหล่านี้และบันทึกส่วนหัว HTTP เพิ่มเติมที่เฉพาะเจาะจง API หลายรายการซึ่งส่งและรับเมื่อใช้ REST API

ข้อมูลเข้าสู่ระบบ OAuth 2.0

Google Ads API ใช้ OAuth 2.0 ในการให้สิทธิ์คำขอ API ทั้ง OAuth 2.0 ขั้นตอนการตรวจสอบสิทธิ์ ผู้ใช้และขั้นตอนบัญชี บริการได้รับการรองรับ ดูรายละเอียดเพิ่มเติมได้ที่OAuth 2.0 ใน Google Ads API

หากเพิ่งเริ่มใช้ Google APIs คุณสามารถใช้ gcloud CLI หรือ OAuth 2.0 Playground เพื่อทดลองใช้ข้อมูลเข้าสู่ระบบ OAuth 2.0 และ Google Ads API ก่อนที่จะเขียนโค้ดสำหรับแอป

เราขอแนะนำให้คุณใช้ไลบรารี OAuth 2.0 รายการใดรายการหนึ่งที่มีอยู่ที่ https://oauth.net/code/ เพื่อใช้เวิร์กโฟลว์การให้สิทธิ์ OAuth 2.0 อย่างไรก็ตาม เราได้แสดงวิธีการ curl ไว้ในกรณีที่คุณต้องติดตั้งใช้งานด้วยตนเอง

บัญชีบริการ

ทำตามขั้นตอนเพื่อกำหนดค่าโปรเจ็กต์ Google Cloud สำหรับ Google Ads API บันทึกอีเมลบัญชี บริการและคีย์บัญชีบริการ จากนั้นทําตามวิธีการทั่วไปในคู่มือบัญชีบริการเพื่อตั้งค่าบัญชีบริการให้เข้าถึงบัญชี Google Ads

การตรวจสอบสิทธิ์ผู้ใช้

ทำตามขั้นตอนเพื่อกำหนดค่าโปรเจ็กต์คอนโซล Google Cloud สำหรับ Google Ads API บันทึกรหัสไคลเอ็นต์และรหัสลับไคลเอ็นต์ จากนั้นทำตามวิธีการของขั้นตอนแอปบนเดสก์ท็อป หรือวิธีการของขั้นตอนเว็บแอป เพื่อสร้างโทเค็นการรีเฟรชและโทเค็นเพื่อการเข้าถึง scope to use for Google Ads API access is https://www.googleapis.com/auth/adwords.

สร้างโทเค็นเพื่อการเข้าถึงใหม่

บัญชีบริการ

เมื่อมีอีเมลของบัญชีบริการและคีย์บัญชีบริการ ให้ทำตามคำแนะนำการใช้ OAuth 2.0 สำหรับแอปพลิเคชันแบบเซิร์ฟเวอร์ต่อเซิร์ฟเวอร์ เพื่อสร้างชุดการอ้างสิทธิ์ JWT ซึ่งสามารถแลกเปลี่ยนเพื่อรับ โทเค็นเพื่อการเข้าถึง OAuth 2.0 ได้ โปรดเลือกแท็บ HTTP/REST ขณะทำตามคำแนะนำ scope OAuth 2.0 ที่ใช้สำหรับการเข้าถึง Google Ads API คือ https://www.googleapis.com/auth/adwords นอกจากนี้ คุณยังข้ามพารามิเตอร์ sub เมื่อสร้างชุดการอ้างสิทธิ์ JWT ได้ เนื่องจากขั้นตอนการตั้งค่า ให้สิทธิ์เข้าถึงบัญชี Google Ads โดยตรงแก่บัญชีบริการ จึงไม่จำเป็นต้อง แอบอ้างเป็นผู้ใช้ Google Ads

จากนั้นคุณจะใช้โทเค็นเพื่อการเข้าถึงในส่วนหัว HTTP ของAuthorization การเรียก API ทุกครั้งไปยัง Google Ads API ได้

GET /v25/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN

การตรวจสอบสิทธิ์ผู้ใช้

เมื่อมี รหัสไคลเอ็นต์ รหัสลับไคลเอ็นต์ และโทเค็นการรีเฟรช OAuth 2.0 แล้ว คุณจะสร้างโทเค็นเพื่อการเข้าถึงใหม่เพื่อใช้ในการเรียก API ด้วยเครื่องมือบรรทัดคำสั่ง 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

จากนั้นคุณจะใช้โทเค็นเพื่อการเข้าถึงที่คำขอ curl ส่งกลับมาในส่วน Authorization HTTP ของการเรียก API ทุกครั้งไปยัง Google Ads API ได้

GET /v25/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN

ส่วนหัวของคำขอ

ส่วนต่อไปนี้จะอธิบายส่วนหัว HTTP ที่จำเป็นหรือใช้เมื่อส่งคำขอไปยัง Google Ads API

รหัสลูกค้าสำหรับการเข้าสู่ระบบ

สำหรับการเรียก Google Ads API ที่บัญชีดูแลจัดการทำกับบัญชีลูกค้า (กล่าวคือ เมื่อเข้าสู่ระบบในฐานะบัญชีดูแลจัดการเพื่อทำการเรียก API ไปยังบัญชีลูกค้าบัญชีใดบัญชีหนึ่ง) คุณจะต้องระบุlogin-customer-idส่วนหัว HTTP ด้วย ค่านี้แสดงรหัสลูกค้า Google Ads ของผู้จัดการที่ทำการเรียก API

การใส่ส่วนหัวนี้เทียบเท่ากับการเลือกบัญชีใน UI ของ Google Ads หลังจากลงชื่อเข้าใช้หรือคลิกรูปโปรไฟล์ที่มุมขวาบนของ หน้าเว็บ เมื่อระบุรหัสลูกค้า โปรดนำขีดกลาง (—) ออก เช่น 1234567890 ไม่ใช่ 123-456-7890 ดูข้อมูลเพิ่มเติมเกี่ยวกับรหัสลูกค้าที่ใช้เข้าสู่ระบบได้ในคู่มือรูปแบบการเข้าถึง Google Ads

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

รหัสลูกค้าที่ลิงก์

พาร์ทเนอร์ (เช่น ผู้ให้บริการวิเคราะห์แอปของบุคคลที่สามหรือพาร์ทเนอร์ด้านข้อมูล) จะใช้ส่วนหัวรหัสลูกค้าที่ลิงก์เมื่อดำเนินการกับบัญชี Google Ads ที่ลิงก์ ดูรายละเอียดเพิ่มเติมได้ที่คู่มือโครงสร้างการเรียก API

Authorization: Bearer ACCESS_TOKEN
login-customer-id: PARTNER_CUSTOMER_ID
linked-customer-id: ADVERTISER_CUSTOMER_ID

ส่วนหัวการตอบกลับ

ระบบจะแสดงส่วนหัวต่อไปนี้ในการตอบกลับ HTTP จาก API

รหัสคำขอ

request-id คือสตริงที่ระบุคำขอ API ที่ไม่ซ้ำกัน เมื่อ แก้ไขข้อบกพร่องหรือแก้ปัญหาเกี่ยวกับการเรียก API ที่เฉพาะเจาะจง request-id เป็นตัวระบุที่สำคัญซึ่งควรมีไว้พร้อมใช้งานเมื่อติดต่อทีมสนับสนุนนักพัฒนาซอฟต์แวร์ของ Google

request-id: 2a5Cj89VV7CNhya1DZjjrC