SearchStream

الفيديو: إعداد التقارير

تتضمّن Google Ads API آلية موحّدة لاسترداد السمات وإعداد تقارير المقاييس تتيح لك إنشاء طلبات بحث باستخدام لغة طلبات البحث في "إعلانات Google". يتيح ذلك إجراء طلبات بحث معقّدة يمكنها عرض كميات كبيرة من البيانات حول حسابات فردية على "إعلانات Google".

يمكنك إنشاء طلبات بحث باستخدام إحدى الطريقتين Search أو SearchStream. تتيح كلتا الطريقتين طلبات البحث نفسها وتعرضان نتائج مكافئة. تعرض طريقة Search البيانات في صفحات ثابتة الحجم تضم 10,000 صف، ما يتيح لك تكرار مجموعة النتائج باستخدام تقسيم الصفحات. قد يكون ذلك مفيدًا في حال توفّر نطاق ترددي منخفض أو في حال عدم استقرار الشبكة، مثلاً لتقسيم مجموعة نتائج كبيرة إلى ردود أصغر يمكن إعادة جلبها في حال انقطع الاتصال. من ناحية أخرى، تنقل طريقة SearchStream مجموعة النتائج بأكملها في رد واحد، ما قد يكون أكثر فعالية لاسترداد البيانات المجمّعة.

يستخدم كل من Search وSearchStream عنوان URL الأساسي نفسه:

    https://googleads.googleapis.com/v20/customers/CUSTOMER_ID/googleAds
POST /v20/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 /v20/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 (لا تتطلّب SearchStream استخدام pageToken):

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