Authentication

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

ทำความเข้าใจโมเดลการเข้าถึง Google Ads

คุณควรทำความเข้าใจวิธีการทำงานของโมเดลการเข้าถึง Google Ads เพื่อให้ใช้งาน Google Ads API ได้อย่างมีประสิทธิภาพ เราขอแนะนำให้อ่าน คู่มือโมเดลการเข้าถึง Google Ads

เวิร์กโฟลว์ OAuth

มีเวิร์กโฟลว์ทั่วไป 3 รายการที่ใช้เมื่อทำงานกับ Google Ads API

ขั้นตอนบัญชีบริการ

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

$oAuth2Credential = (new OAuth2TokenBuilder())
    ->withJsonKeyFilePath('PATH_TO_CREDENTIALS_JSON')
    ->withScopes('https://www.googleapis.com/auth/adwords')
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->withOAuth2Credential($oAuth2Credential)
    ->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
    ->build();

ดูข้อมูลเพิ่มเติมได้ที่คู่มือเวิร์กโฟลว์บัญชีบริการเพื่อ เรียนรู้เพิ่มเติม

ขั้นตอนการตรวจสอบสิทธิ์ผู้ใช้รายเดียว

คุณอาจใช้เวิร์กโฟลว์นี้หากใช้บัญชีบริการไม่ได้ เวิร์กโฟลว์นี้ต้องมีขั้นตอนการกำหนดค่า 2 ขั้นตอนดังนี้

  1. ให้สิทธิ์ผู้ใช้รายเดียวเข้าถึงบัญชีทั้งหมดที่จะจัดการโดยใช้ Google Ads API วิธีที่นิยมใช้คือให้สิทธิ์ผู้ใช้เข้าถึงบัญชีดูแลจัดการ Google Ads API แล้วลิงก์บัญชี Google Ads ทั้งหมดภายใต้บัญชีดูแลจัดการนั้น
  2. จากนั้นผู้ใช้จะเรียกใช้เครื่องมือบรรทัดคำสั่ง เช่น GenerateUserCredentials

    เพื่อให้สิทธิ์แอปของคุณในการจัดการบัญชี Google Ads ทั้งหมดในนามของผู้ใช้

คุณเริ่มต้นใช้งานไลบรารีได้โดยใช้ข้อมูลเข้าสู่ระบบ OAuth 2.0 ของผู้ใช้ดังนี้

$oAuth2Credential = (new OAuth2TokenBuilder())
    ->withClientId('INSERT_CLIENT_ID')
    ->withClientSecret('INSERT_CLIENT_SECRET')
    ->withRefreshToken('INSERT_REFRESH_TOKEN')
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->withOAuth2Credential($oAuth2Credential)
    ->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
    ->withLoginCustomerId('INSERT_LOGIN_CUSTOMER_ID_HERE')
    ->build();

ดูข้อมูลเพิ่มเติมได้ที่คู่มือเวิร์กโฟลว์การตรวจสอบสิทธิ์ผู้ใช้รายเดียว

to learn more.

ขั้นตอนการตรวจสอบสิทธิ์ผู้ใช้หลายคนหนึ่งเครื่อง

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

$oAuth2Credential = (new OAuth2TokenBuilder())
    ->withClientId('INSERT_CLIENT_ID')
    ->withClientSecret('INSERT_CLIENT_SECRET')
    ->withRefreshToken('INSERT_REFRESH_TOKEN')
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->withOAuth2Credential($oAuth2Credential)
    ->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
    ->withLoginCustomerId('INSERT_LOGIN_CUSTOMER_ID_HERE')
    ->build();

ดูข้อมูลเพิ่มเติมได้ที่คู่มือเวิร์กโฟลว์การตรวจสอบสิทธิ์ผู้ใช้หลายคนหนึ่งเครื่อง

to learn more.

จะเกิดอะไรขึ้นหากผู้ใช้ของฉันจัดการหลายบัญชี

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

  1. GetAccountHierarchy

    ตัวอย่างโค้ดแสดงวิธีดึงข้อมูลรายการบัญชีทั้งหมดภายใต้บัญชีดูแลจัดการ Google Ads

  2. ListAccessibleCustomers

    ตัวอย่างโค้ดแสดงวิธีดึงข้อมูลรายการบัญชีทั้งหมดที่ผู้ใช้มีสิทธิ์เข้าถึงโดยตรง จากนั้นคุณจะใช้บัญชีเหล่านี้เป็นค่าที่ถูกต้องสำหรับการตั้งค่า loginCustomerId ได้