คุณต้องมีข้อมูลเข้าสู่ระบบ OAuth 2.0 เมื่อเรียกใช้ Google Ads API หากคุณทำการเรียก API ด้วยบัญชีดูแลจัดการ Google Ads คุณต้องระบุส่วนหัว login-customer-id ในคำขอแต่ละรายการด้วย หน้านี้อธิบายวิธีตั้งค่าเหล่านี้และแสดงเอกสารประกอบส่วนหัว HTTP เพิ่มเติมที่เฉพาะเจาะจงกับ API ซึ่งจะมีการส่งและรับเมื่อใช้อินเทอร์เฟซ REST
ข้อมูลเข้าสู่ระบบ OAuth 2.0
Google Ads API ใช้ OAuth 2.0 ในการให้สิทธิ์คำขอ API ระบบรองรับทั้งขั้นตอนการตรวจสอบสิทธิ์ผู้ใช้ OAuth 2.0 user authentication flow และ service account flow ดูรายละเอียดเพิ่มเติมได้ที่ ดู 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 ที่ใช้
สำหรับการเข้าถึง Google Ads API คือ https://www.googleapis.com/auth/adwords
สร้างโทเค็นเพื่อการเข้าถึงใหม่
บัญชีบริการ
เมื่อคุณมีอีเมลบัญชีบริการ และคีย์บัญชีบริการ
ให้ทำตามคู่มือการใช้ OAuth 2.0 สำหรับแอปพลิเคชัน
แบบเซิร์ฟเวอร์ต่อเซิร์ฟเวอร์
เพื่อสร้างชุดการอ้างสิทธิ์ JWT ซึ่งสามารถแลกเปลี่ยนเพื่อรับ
โทเค็นเพื่อการเข้าถึง OAuth 2.0 ได้ ตรวจสอบว่าได้เลือกแท็บ HTTP/REST ขณะทำตามคู่มือ OAuth 2.0 scope ที่ใช้สำหรับการเข้าถึง Google Ads API คือ
https://www.googleapis.com/auth/adwords นอกจากนี้ คุณยังข้ามพารามิเตอร์ sub เมื่อสร้างชุดการอ้างสิทธิ์ JWT ได้ เนื่องจากขั้นตอนการตั้งค่าจะให้สิทธิ์เข้าถึงบัญชี Google Ads โดยตรงแก่บัญชีบริการ จึงไม่จำเป็นต้องปลอมตัวเป็นผู้ใช้ Google Ads
จากนั้นใช้โทเค็นเพื่อการเข้าถึง ในส่วนหัว HTTP Authorization ของการเรียก API ทุกครั้งไปยัง Google Ads API ดังนี้
GET /v26/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 ในส่วนหัว HTTP Authorization ของการเรียก API ทุกครั้งไปยัง Google Ads API ดังนี้
GET /v26/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
ส่วนหัวของคำขอ
ส่วนต่อไปนี้จะอธิบายส่วนหัว HTTP ที่จำเป็นหรือใช้เมื่อทำการส่งคำขอไปยัง Google Ads API
รหัสลูกค้าสำหรับเข้าสู่ระบบ
สำหรับการเรียก Google Ads API ที่ผู้ดูแลระบบส่งไปยังบัญชีลูกค้า (นั่นคือ เมื่อเข้าสู่ระบบในฐานะผู้ดูแลระบบเพื่อทำการเรียก API ไปยังบัญชีลูกค้าบัญชีใดบัญชีหนึ่ง) คุณต้องระบุส่วนหัว HTTP login-customer-id ด้วย ค่านี้แสดงถึงรหัสลูกค้า Google Ads ของผู้ดูแลระบบที่ทำการเรียก API
การใส่ส่วนหัวนี้เทียบเท่ากับการเลือกบัญชีใน UI ของ Google Ads หลังจากลงชื่อเข้าใช้หรือคลิกรูปโปรไฟล์ที่มุมขวาบนของหน้า เมื่อระบุรหัสลูกค้า โปรดนำเครื่องหมายยัติภังค์ (—) ออก เช่น 1234567890 ไม่ใช่ 123-456-7890 ดูข้อมูลเพิ่มเติมเกี่ยวกับรหัสลูกค้าสำหรับเข้าสู่ระบบได้ที่คู่มือโมเดลการเข้าถึง Google Ads
GET /v26/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 Developers
request-id: 2a5Cj89VV7CNhya1DZjjrC