اطّلِع على الأقسام التالية للتعرّف على كيفية إنشاء تقارير البحث في "الإعلانات على شبكة البحث". 360 Reporting API.
البحث في الخدمة
توفّر Search Ads 360 Reporting API خدمة خاصة للبحث الإعلام.
SearchAds360Service
هي خدمة موحّدة لاسترداد العناصر وإعداد التقارير.
توفّر طريقتَي البحث: SearchStream
وSearch
. عمليات البحث هي
يتم تمريره في سلسلة طلب بحث مكتوبة لغة طلب بحث "إعلانات شبكة البحث 360". يمكنك تحديد طلبات البحث من أجل:
- استرداد سمات معيّنة للكائنات
- استرداد مقاييس الأداء للعناصر استنادًا إلى نطاق زمني
- ترتيب العناصر حسب سماتها
- فلترة النتائج باستخدام شروط تحدّد العناصر المطلوب عرضها
- الحدّ من عدد العناصر التي يتم عرضها
تعرض كلتا طريقتي البحث جميع الصفوف التي تطابق طلب بحثك. على سبيل المثال، عند
استرداد campaign.id
وcampaign.name
وmetrics.clicks
، ستعرض واجهة برمجة التطبيقات
SearchAds360Row
يحتوي على عنصر حملة مع حقلَي id
وname
.
وكائن metrics
مع مجموعة الحقول clicks
.
طرق البحث
SearchStream
إرسال طلب واحد وبدء اتصال دائم باستخدام Search Ads 360 Reporting API بغض النظر عن حجم التقرير.
- يبدأ تنزيل حزم البيانات فورًا مع عرض النتيجة الكاملة تخزينه مؤقتًا في مخزن بيانات مؤقت.
- يمكن أن يبدأ الرمز الخاص بك في قراءة البيانات المخزّنة مؤقتًا بدون الحاجة إلى الانتظار البث بأكمله لإنهاء العملية.
Search
إرسال طلبات متعدّدة مقسَّمة إلى صفحات لتنزيل التقرير بالكامل
تقدم SearchStream
عادةً أداءً أفضل لأنها تقلل من
مدة الاتصال ذهابًا وإيابًا في الشبكة لطلب صفحات فردية. ننصح باستخدام
SearchStream
لجميع التقارير التي تزيد عن 10,000 صف. لا توجد بيانات مهمة
اختلاف الأداء بين طرق التقارير الأصغر (<10000 صف).
لا تؤثر الطريقة التي تستخدمها في عروض الأسعار والحدود في واجهة برمجة التطبيقات، حيث يتم تنفيذ طلب بحث واحد أو تقرير واحد تُحتسب كعملية واحدة بصرف النظر عما إذا كانت النتائج مقسّمة إلى صفحات أو صفحات متدفقة.
مثال على طلب البحث
يعرض نموذج طلب البحث هذا بيانات الأداء لحساب آخر 30 يومًا. حسب الحملة، مقسّمًا حسب الجهاز:
SELECT
campaign.name,
campaign.status,
segments.device,
metrics.impressions,
metrics.clicks,
metrics.ctr,
metrics.average_cpc,
metrics.cost_micros
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
تقديم طلب
لإصدار طلب، يجب تمرير سلسلة customer_id
وquery
.
إلى SearchAds360Service.SearchStream
أو SearchAds360Service.Search
من واجهة pyplot.
يتألف الطلب من بروتوكول HTTP من نوع POST
يؤدي إلى واجهة برمجة التطبيقات لإعداد التقارير في "إعلانات شبكة البحث 360".
على أي من عنوانَي URL التاليَين:
https://searchads360.googleapis.com/VERSION_NUMBER/customers/CUSTOMER_ID/searchads360:searchStream
https://searchads360.googleapis.com/VERSION_NUMBER/customers/CUSTOMER_ID/searchads360:search
إليك مثال كامل على تعريف التقرير الخاص بـ searchStream
مضمَّن في
طلب HTTP يتضمّن POST
:
POST /VERSION_NUMBER/customers/CUSTOMER_ID/searchads360:searchStream HTTP/1.1 Host: searchads360.googleapis.com User-Agent: curl Content-Type: application/json Accept: application/json Authorization: Bearer [OAUTH_2.0_ACCESS_TOKEN] Parameters: { "query" : "SELECT campaign.name, campaign.status, segments.device, metrics.impressions, metrics.clicks, metrics.ctr, metrics.average_cpc, metrics.cost_micros FROM campaign WHERE segments.date DURING LAST_30_DAYS" }
معالجة ردّ
تعرض SearchAds360Service
قائمة بكائنات SearchAds360Row
.
تمثِّل كل سمة SearchAds360Row
عنصرًا يعرضه طلب البحث. كل كائن
مجموعة من السمات التي تتم تعبئتها استنادًا إلى الحقول المطلوبة
في عبارة SELECT
من الاستعلام. سمات غير مضمَّنة في SELECT
جملة جديدة في الكائنات في الاستجابة.
على سبيل المثال، يملأ طلب البحث أدناه كل كائن SearchAds360Row
بـ
campaign.id
وcampaign.name
وcampaign.status
يمكن أن تكون السمات الأخرى، مثل
تم حذف campaign.engine_id
أو campaign.bidding_strategy_type
.
SELECT
campaign.id,
campaign.name,
campaign.status
FROM campaign
المستندات المرجعية
قسم المراجع
يتضمن جميع المعلومات التي تحتاجها لاستخدام كل عنصر بشكل صحيح. تتوفر
صفحة واحدة لكل مورد، على سبيل المثال ad_group
campaign
صفحتا segments
وmetrics
إدراج جميع حقول المقاييس والشرائح المتاحة.
بعض الموارد والشرائح والمقاييس غير متوافقة ولا يمكن استخدامها. معًا، في حين أن البعض الآخر متوافق تمامًا ويكملون بعضهم البعض. على كل المعلومات التالية (إذا كانت متاحة) والمناسبة) وغير ذلك:
- الموارد المُحالة
بالنسبة إلى بعض المراجع، قد يتوفّر لك خيار ضم محتوى ذي صلة ضمنيًا. الموارد عن طريق تحديد حقولها مع حقول المورد في عبارة
FROM
. على سبيل المثال، مرجعcampaign
هو المصدر المرجعي للمصدرad_group
هذا يعني أنه يمكنك تضمين حقول مثلcampaign.id
وcampaign.bidding_strategy_type
في عند استخدامad_group
في عبارةFROM
.يسرد قسم الموارد المُحالة الموارد المُحالة المتاحة. لا جميع الموارد لها موارد مرجعية.
- عمود حقول الموارد
يتم تضمين جميع حقول المورد في عمود حقول الموارد. يرتبط كل حقل موارد بمزيد من التفاصيل حول هذا الحقل، بما في ذلك وصف وفئة ونوع البيانات ونوع عنوان URL وقابل للتصفية والتحديد وقابل للفرز والمتكرر.
- عمود الشرائح
لا يمكن اختيار جميع حقول الأقسام باستخدام مورد معيَّن.
يسرد عمود الشرائح حقول
segments
التي يمكنك استخدامها في عبارةSELECT
نفسها لحقول المورد. يرتبط كل حقل بالجزء الكامل تفاصيل حول الحقل، بما في ذلك الوصف والفئة ونوع البيانات والنوع عنوان URL وإعداد قابل للفلترة والاختيار والترتيب والتكرار. إذا كنت باستخدام المرجع الوارد في عبارةFROM
، يمكنك استخدام القائمة المنسدلة نعم/لا. لفلترة الشرائح غير المتوفّرة.- عمود المقاييس
لا يمكن اختيار بعض حقول المقاييس باستخدام مورد معيّن.
يسرد عمود المقاييس حقول
metrics
التي يمكنك استخدامها في عبارةSELECT
نفسها لحقول المورد. يرتبط كل حقل بالجزء الكامل تفاصيل حول الحقل، بما في ذلك الوصف والفئة ونوع البيانات والنوع عنوان URL وإعداد قابل للفلترة والاختيار والترتيب والتكرار. إذا كنت استخدام المرجع في عبارةFROM
، استخدِم القائمة المنسدلة نعم/لا فلترة المقاييس غير المتاحة
- تقسيم الموارد
تحتوي بعض الموارد على حقول موارد قابلة للتقسيم يمكنك تحديدها عند يكون المرجع في عبارة
FROM
. على سبيل المثال، إذا اخترت حقل مواردcampaign
، مثلcampaign.name
، متى استخدامcampaign_budget
في عبارةFROM
campaign.resource_name
تلقائيًا وتقسيمها على، لأنcampaign
هي تقسيم المرجعcampaign_budget
.يسرد قسم تقسيم الموارد موارد تقسيم الموارد المتاحة. لا تحتوي جميع الموارد على موارد تقسيم.
- يمكن الاختيار باستخدام
بعض حقول
segments
غير متوافقة مع الموارد والشرائح الأخرى والمقاييس.صفحة
segments
على حقل قابل للاختيار مع قابل للتوسيع لكل حقلsegments
تسرد جميع حقول الموارد المتوافقة وmetrics
حقولsegments
الأخرى الحقول التي يمكنك تضمينها في عبارةSELECT
.
التقسيم
يمكنك تقسيم نتائج البحث من خلال إضافة
segments.FIELD_NAME
إلى عبارة SELECT
في طلب البحث.
على سبيل المثال، segments.device
في السمة
أدناه، ينتج عنها تقرير يحتوي على صف لـ impressions
من كل
للمورد المحدد في الفقرة FROM
.
SELECT
campaign.name,
campaign.status,
segments.device,
metrics.impressions
FROM campaign
تبدو النتائج التي تم عرضها من خلال SearchAds360Service.SearchStream
شيئًا مختلفًا.
مثل سلسلة JSON هذه:
{
"results":[
{
"campaign":{
"resourceName":"customers/1234567890/campaigns/111111111",
"name":"Test campaign",
"status":"ENABLED"
},
"metrics":{
"impressions":"10922"
},
"segments":{
"device":"MOBILE"
}
},
{
"campaign":{
"resourceName":"customers/1234567890/campaigns/111111111",
"name":"Test campaign",
"status":"ENABLED"
},
"metrics":{
"impressions":"28297"
},
"segments":{
"device":"DESKTOP"
}
},
...
]
}
يمكنك الانتقال إلى segments
للاطّلاع على
قائمة بحقول الأقسام المتاحة التي يمكنك استخدامها.
شرائح متعددة
يمكنك تحديد شرائح متعددة في عبارة SELECT
من طلب البحث. تشير رسالة الأشكال البيانية
تحتوي الاستجابة على كائن SearchAds360Row
واحد لكل مجموعة من
مثيل للمورد الرئيسي المحدد في الجملة FROM
value لكل حقل segment
محدد.
على سبيل المثال، سيعرض الاستعلام التالي صفًا واحدًا لكل مجموعة من
"campaign
" وsegments.ad_network_type
" و"segments.date
"
SELECT
segments.ad_network_type
segments.date
FROM campaign
تجدر الإشارة إلى أنه يتم تقسيم النتائج ضمنيًا حسب كل مثيل من ولكن ليس وفقًا لقيم الحقول الفردية المحددة.
يعرض المثال التالي طلب البحث صفًا واحدًا لكل حملة، وليس صفًا واحدًا في كل حملة
قيمة مميزة للحقل campaign.status
.
SELECT
campaign.status,
metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_14_DAYS
التقسيم الضمني
يتم تقسيم كل تقرير في البداية حسب المورد المحدد في FROM
بند واحد. يتم تقسيم المقاييس حسب الحقل resource_name
لهذا المورد
يعرض نموذج الطلب هذا تلقائيًا القيمة ad_group.resource_name
وبشكل ضمني.
لتقسيم المقاييس على مستوى ad_group
.
SELECT metrics.impressions
FROM ad_group
تبدو سلسلة JSON المعروضة مشابهة لما يلي:
{
"results":[
{
"adGroup":{
"resourceName":"customers/1234567890/adGroups/2222222222"
},
"metrics":{
"impressions":"237"
}
},
{
"adGroup":{
"resourceName":"customers/1234567890/adGroups/33333333333"
},
"metrics":{
"impressions":"15"
}
},
{
"adGroup":{
"resourceName":"customers/1234567890/adGroups/44444444444"
},
"metrics":{
"impressions":"0"
}
}
]
}
شرائح التاريخ الأساسية
يمكنك استخدام شرائح التاريخ الأساسية في الفقرة WHERE
لتحديد تاريخ.
أو فترة زمنية محددة.
تُعرف حقول الشرائح التالية باسم شرائح التاريخ الأساسي:
segments.date
وsegments.week
وsegments.month
وsegments.quarter
و
segments.year
يعرض نموذج طلب البحث هذا مقاييس clicks
للحملة آخر 30 يومًا.
SELECT
campaign.id,
campaign.name,
segments.date,
metrics.clicks
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
تُعد حقول شرائح التاريخ الأساسية استثناءًا للقاعدة العامة التي
لا يمكنك استخدام حقل شرائح في عبارة WHERE
، ما لم تقم أيضًا بتضمين الحقل
في عبارة SELECT
. اطّلِع على مقالة الفلترة المحظورة لمزيد من المعلومات.
المعلومات.
قواعد شريحة التاريخ الأساسية:
يمكنك استخدام حقل تاريخ أساسي في بند
WHERE
بدون تضمينه فيSELECT
. ويمكنك أيضًا تضمين الحقل في كلتا العبارتَين إذا أردت ذلك.يعرض نموذج طلب البحث هذا مقاييس
clicks
حسب اسم الحملة خلال التاريخ. النطاق. يُرجى العِلم أنّ السمةsegments.date
غير مضمَّنة في البندSELECT
.SELECT campaign.name, metrics.clicks FROM campaign WHERE segments.date > '2022-02-01' AND segments.date < '2022-03-01'
في حال تضمين حقل تاريخ أساسي في عبارة
SELECT
، عليك تحديد تاريخ أو نطاق زمني محدود في عبارةWHERE
. تخضع الحقول المحددة في ليس من الضروري أن تتطابق العبارتانSELECT
وWHERE
.يعرض مثال طلب البحث هذا مقاييس
clicks
حسب اسم الحملة مقسّمًا حسب شهر لجميع الأيام في النطاق الزمني.SELECT campaign.name, metrics.clicks, segments.month FROM campaign WHERE segments.date > '2022-02-01' AND segments.date < '2022-03-01'
تواريخ ISO 8601
يمكنك استخدام تنسيق YYYY-MM-DD
(ISO 8601) لتحديد التواريخ والنطاقات الزمنية،
على سبيل المثال:
WHERE segments.date BETWEEN '2022-06-01' AND '2022-06-30'
WHERE segments.date >= '2022-06-01' AND segments.date <= '2022-06-30'
بالنسبة إلى شرائح التاريخ الأساسية التي تتطلب فترة زمنية (segments.week
،
segments.month
، segments.quarter
) يمكنك استخدام عامل التشغيل =
مع
اليوم الأول من الفترة الزمنية، على سبيل المثال:
WHERE segments.month = '2022-06-01'
تواريخ محدّدة مسبقًا
يمكنك أيضًا استخدام التواريخ والنطاقات الزمنية المحدّدة مسبقًا التالية:
تواريخ محدّدة مسبقًا | |
---|---|
TODAY |
اليوم فقط. |
YESTERDAY |
أمس فقط. |
LAST_7_DAYS |
الأيام السبعة السابقة لا تشمل اليوم. |
LAST_BUSINESS_WEEK |
أسبوع العمل السابق على مدار 5 أيام (من الاثنين إلى الجمعة). |
THIS_MONTH |
جميع الأيام في الشهر الحالي. |
LAST_MONTH |
جميع الأيام في الشهر السابق. |
LAST_14_DAYS |
آخر 14 يومًا باستثناء اليوم. |
LAST_30_DAYS |
آخر 30 يومًا باستثناء اليوم. |
THIS_WEEK_SUN_TODAY |
فترة بين يوم الأحد السابق واليوم الحالي |
THIS_WEEK_MON_TODAY |
فترة بين يوم الاثنين السابق واليوم الحالي. |
LAST_WEEK_SUN_SAT |
فترة 7 أيام تبدأ من يوم الأحد السابق |
LAST_WEEK_MON_SUN |
فترة 7 أيام بدءًا من يوم الاثنين السابق |
مثال:
WHERE segments.date DURING LAST_30_DAYS
بدون مقاييس
عند تنفيذ استعلام، قد تواجه مقاييس بقيمة صفرية والكيانات. مزيد من المعلومات عن كيفية التعامل مع المقاييس الصفرية في طلبات البحث
أنواع تعداد غير معروفة
في حال عرض مورد بنوع بيانات التعداد UNKNOWN
، يعني ذلك أنّه
فإن النوع غير مدعوم بشكل كامل في إصدار واجهة برمجة التطبيقات. قد يكون لهذه الموارد
التي تم إنشاؤها من خلال واجهات أخرى. على سبيل المثال، حملة جديدة أو إعلان جديد
تمّ طرحه في واجهة مستخدم "إعلانات شبكة البحث 360"، لكنّه غير متاح بعد في إصدار واجهة برمجة التطبيقات.
تقوم بالاستعلام عنه.
لا يزال بإمكانك اختيار المقاييس عندما يكون المصدر من النوع UNKNOWN
، ولكن يمكنك
وضع ما يلي في الاعتبار:
- قد يتوفّر مورد من النوع
UNKNOWN
في وقت لاحق، ولكنه قد يظل متاحًا.UNKNOWN
إلى أجل غير مسمى. - وقد تظهر عناصر جديدة من النوع
UNKNOWN
في أي وقت. وهذه الكائنات متوافق مع الإصدارات القديمة لأن قيمة التعداد متاحة بالفعل. نقدم مع هذا التغيير لأنها متاحة حتى يكون لديك فكرة لعرض حسابك. قد يظهر موردUNKNOWN
بسبب تحديثات النشاط في حسابك عبر واجهات أخرى أو لأن موردًا لم يعد مدعومًا رسميًا. - قد يتضمّن
UNKNOWN
مورد مقاييس مفصّلة مرتبطة بها يمكنك الاطّلاع عليها. طلب البحث. - يظهر
UNKNOWN
مورد بالكامل عادةً في واجهة مستخدم "إعلانات شبكة البحث 360".