การค้นหา & amp; SearchStream

วิดีโอ: การรายงาน

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

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

ทั้ง Search และ SearchStream ใช้ URL พื้นฐานเดียวกัน ดังนี้

    https://googleads.googleapis.com/v16/customers/CUSTOMER_ID/googleAds

วิธีการค้นหาตามหน้าเว็บจะใช้พารามิเตอร์ pageSize ที่ไม่บังคับ ซึ่งจะจำกัดจำนวนผลลัพธ์ที่จะแสดงในการตอบกลับ API เดียว

POST /v16/customers/CUSTOMER_ID/googleAds:search HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

{
"pageSize": 10000,
"query": "SELECT ad_group_criterion.keyword.text, ad_group_criterion.status FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'"
}

หากมีแถวในผลลัพธ์มากกว่า pageSize ระบบจะแสดงผล nextPageToken ในคำตอบ

{
  "results": [
    // ...
    // ...
    // ...
  ],
  "nextPageToken": "CPii5aS87vfFTBAKGJvk36qpLiIWUW5SZk8xa1JPaXJVdXdIR05JUUpxZyoCVjMwADjUBkD___________8B",
  "fieldMask": "adGroupCriterion.keyword.text,adGroupCriterion.status"
}

การทำซ้ำคำค้นหาเดียวกันที่มี pageToken เพิ่มเข้ามาด้วยค่าข้างต้นจะดึงผลลัพธ์หน้าถัดไป

POST /v16/customers/CUSTOMER_ID/googleAds:search HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

{
"pageSize": 10000,
"query": "SELECT ad_group_criterion.keyword.text, ad_group_criterion.status FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'",
"pageToken": "CPii5aS87vfFTBAKGJvk36qpLiIWUW5SZk8xa1JPaXJVdXdIR05JUUpxZyoCVjMwADjUBkD___________8B"
}

หากต้องการใช้เมธอด SearchStream ซึ่งจะแสดงผลลัพธ์ทั้งหมดในการตอบสนองแบบสตรีมครั้งเดียว เพียงเปลี่ยนวิธีบริการใน URL เป็น searchStream (SearchStream ไม่จำเป็นต้องใช้ pageSize และ pageToken) ดังนี้

POST /v16/customers/CUSTOMER_ID/googleAds:searchStream HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

{
    "query": "SELECT ad_group_criterion.keyword.text, ad_group_criterion.status FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'"
}