חיפוש & SearchStream

סרטון: דיווח

ל-Google Ads API יש דיווח מאוחד על אחזור מאפיינים ומדדים מנגנון שמאפשר ליצור שאילתות באמצעות השאילתה של Google Ads שפה. כך ניתן להציג שאילתות מורכבות שיכולות להחזיר כמויות גדולות של נתונים בחשבונות Google Ads נפרדים.

אפשר ליצור שאילתות באמצעות אחת מהשיטות Search או SearchStream. שתי שיטות ההעברה תומכות באותן שאילתות ומחזירות תוצאות מקבילות. השיטה Search מחזירה נתונים בדפים בגודל קבוע שכוללים 10,000 שורות, וכך כדי לחזור על קבוצת תוצאות באמצעות חלוקה לדפים. זה יכול להיות שימושי רוחב פס או תנאי רשת בלתי אמינים, לדוגמה, כדי לפלח התוצאה מוגדרת לתשובות קטנות יותר שניתן לאחזר מחדש אם קיים חיבור אבד. לעומת זאת, השיטה SearchStream מעבירה את התוצאה כולה מוגדרת חזרה בתגובה אחת, שיכולה להיות יעילה יותר לנתונים בכמות גדולה באחזור.

Search ו-SearchStream משתמשים באותה כתובת URL בסיסית:

    https://googleads.googleapis.com/v17/customers/CUSTOMER_ID/googleAds
POST /v17/customers/CUSTOMER_ID/googleAds:search 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'"
}

אם יש יותר מ-10,000 שורות בתוצאות, הערך של nextPageToken שמוחזר בתשובה:

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

חזרה על אותה שאילתה עם pageToken שנוסף עם הערכים מהטבלה הבקשה הקודמת מאחזרת את דף התוצאות הבא:

POST /v17/customers/CUSTOMER_ID/googleAds:search 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'",
"pageToken": "CPii5aS87vfFTBAKGJvk36qpLiIWUW5SZk8xa1JPaXJVdXdIR05JUUpxZyoCVjMwADjUBkD___________8B"
}

כדי להשתמש בשיטה SearchStream, שמחזירה את כל התוצאות בשידור יחיד בסטרימינג תגובה, שינוי שיטת השירות בכתובת ה-URL ל-searchStream (pageSize ו-pageToken לא נדרשים על ידי SearchStream):

POST /v17/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'"
}