يتطلب تفويضًا
يمكنك إجراء طلب بحث عن بيانات زيارات البحث باستخدام الفلاتر والمعلمات التي تحددها. لا تعرض الطريقة أي صفوف أو أكثر مجمّعة حسب مفاتيح الصفوف (الأبعاد) التي تحدّدها. يجب تحديد نطاق زمني من يوم واحد أو أكثر.
عندما يكون التاريخ أحد الأبعاد، يتم حذف أي أيام بدون بيانات من قائمة النتائج. لمعرفة الأيام التي تشتمل على بيانات، يمكنك إصدار طلب بحث بدون فلاتر مجمّعة بحسب التاريخ للنطاق الزمني المطلوب.
يتم ترتيب النتائج حسب عدد النقرات تنازليًا. إذا كان هناك صفان لهما نفس عدد النقرات، يتم ترتيبهما بطريقة عشوائية.
يمكنك الاطّلاع على نموذج python لاستدعاء هذه الطريقة.
واجهة برمجة التطبيقات مُقيّدة بقيود داخلية في Search Console ولا تضمن عرض جميع صفوف البيانات بل أهم الصفوف.
راجع حدود كمية البيانات المتاحة.
POST https://www.googleapis.com/webmasters/v3/sites/https%3A%2F%2Fwww.example.com%2F/searchAnalytics/query?key={MY_API_KEY} { "startDate": "2015-04-01", "endDate": "2015-05-01", "dimensions": ["country","device"] }
طلب
طلب HTTP
POST https://www.googleapis.com/webmasters/v3/sites/siteUrl/searchAnalytics/query
المعلَمات
اسم المعلَمة | القيمة | الوصف |
---|---|---|
معلمات المسار | ||
siteUrl |
string |
عنوان URL للموقع كما هو محدد في Search Console. أمثلة:
http://www.example.com/ (لموقع إلكتروني يحمل بادئة عنوان URL) أو
sc-domain:example.com (لموقع إلكتروني على النطاق)
|
التفويض
ويتطلب هذا الطلب تفويضًا باستخدام نطاق واحد على الأقل من النطاقات التالية (اقرأ المزيد عن المصادقة والتفويض).
النطاق |
---|
https://www.googleapis.com/auth/webmasters.readonly |
https://www.googleapis.com/auth/webmasters |
نص الطلب
في نص الطلب، قدِّم البيانات بالبنية التالية:
{ "startDate": string, "endDate": string, "dimensions": [ string ], "type": string, "dimensionFilterGroups": [ { "groupType": string, "filters": [ { "dimension": string, "operator": string, "expression": string } ] } ], "aggregationType": string, "rowLimit": integer, "startRow": integer }
اسم الموقع | القيمة | الوصف | ملاحظات |
---|---|---|---|
startDate |
string |
[مطلوب] تاريخ بدء النطاق الزمني المطلوب، بالتنسيق يوم-شهر-سنة، بتوقيت المحيط الهادئ (توقيت المحيط الهادئ - 7:00/8:00). يجب أن يكون أقل من تاريخ الانتهاء أو مساويًا له. ويتم تضمين هذه القيمة في النطاق. | |
endDate |
string |
[مطلوب] تاريخ الانتهاء للنطاق الزمني المطلوب، بالتنسيق يوم-شهر-سنة، بتوقيت المحيط الهادئ (التوقيت العالمي المنسق - 7:00/8:00). يجب أن يكون أكبر من أو يساوي تاريخ البدء. ويتم تضمين هذه القيمة في النطاق. | |
dimensions[] |
list |
[اختياري] صفر أو أكثر من الأبعاد لتجميع النتائج حسبها.يتم تجميع النتائج حسب ترتيب تقديم هذه الأبعاد.يمكنك استخدام أي اسم مكوّن في dimensionFilterGroups[].filters[].dimension و"التاريخ".يتم دمج قيم سمات التجميع لإنشاء مفتاح فريد لكل صف نتيجة. إذا لم يتم تحديد أي أبعاد، فسيتم دمج جميع القيم في صف واحد. ولا يوجد حدّ أقصى لعدد الأبعاد التي يمكنك التجميع حسبها، ولكن لا يمكنك التجميع حسب السمة نفسها مرّتين. مثال: [البلد، الجهاز] | |
searchType |
string |
متوقف، استخدم type بدلاً منه
|
|
type |
string |
[اختياري] يمكنك فلترة النتائج حسب النوع التالي:
|
|
dimensionFilterGroups[] |
list |
[اختياري] لا يتم تطبيق أي مجموعات أو أكثر من الفلاتر على قيم تجميع السمات. يجب أن تتطابق جميع مجموعات الفلاتر حتى يتم عرض صف في الاستجابة. ضمن مجموعة فلاتر واحدة، يمكنك تحديد ما إذا كان يجب أن تتطابق جميع الفلاتر أم يجب أن تتطابق فلتر واحد على الأقل. | |
dimensionFilterGroups[].groupType |
string |
سواء كانت جميع الفلاتر في هذه المجموعة تعرض قيمة true ("and")، أو يجب أن يعرض فلتر واحد أو أكثر قيمة true (غير متاحة حتى الآن).
القيم المقبولة هي:
|
|
dimensionFilterGroups[].filters[] |
list |
[اختياري] عدم إضافة فلاتر أو أكثر لاختبارها في الصف. يتألف كل فلتر من
اسم مكوّن وعامل تشغيل وقيمة. الحد الأقصى للطول: 4096 حرفًا أمثلة:
country equals FRA query contains mobile use device notContains tablet |
|
dimensionFilterGroups[].filters[].dimension |
string |
البُعد الذي ينطبق عليه هذا الفلتر. يمكنك الفلترة حسب أي سمة مُدرَجة هنا، حتى في حال عدم التجميع حسب ذلك المكوّن.
القيم المقبولة هي:
|
|
dimensionFilterGroups[].filters[].operator |
string |
[اختياري] كيفية مطابقة القيمة المحدّدة (أو عدم المطابقة) لقيمة السمة للصف.
القيم المقبولة هي:
|
|
dimensionFilterGroups[].filters[].expression |
string |
قيمة الفلتر المطلوب مطابقتها أو استبعادها، وفقًا لعامل التشغيل. | |
aggregationType |
string |
[اختياري] كيفية تجميع البيانات. في حال التجميع حسب الموقع الإلكتروني، يتم تجميع كل بيانات الموقع الإلكتروني نفسه، وإذا تم تجميعها حسب الصفحة، يتم تجميع كل البيانات حسب معرّف الموارد المنتظم (URI) الأساسي. في حال الفلترة أو التجميع حسب الصفحة، اختَر "تلقائي"، وبخلاف ذلك، يمكنك التجميع إما حسب الموقع أو حسب الصفحة، بناءً على الطريقة التي تريد احتساب البيانات بها. يُرجى الاطّلاع على مستندات المساعدة لمعرفة كيفية حساب البيانات بشكل مختلف حسب الموقع الإلكتروني أو حسب الصفحة. ملاحظة: في حال التجميع أو الفلترة حسب الصفحة، لا يمكنك التجميع حسب الموقع الإلكتروني. وإذا حدّدت أي قيمة أخرى غير السمة التلقائية، سيطابق نوع التجميع في النتيجة النوع المطلوب، أو إذا طلبت نوعًا غير صالح، ستظهر لك رسالة خطأ. ولن تغيّر واجهة برمجة التطبيقات نوع التجميع مطلقًا إذا كان النوع المطلوب غير صالح. القيم المقبولة هي:
|
|
rowLimit |
integer |
[اختياري، النطاق الصالح هو من 1 إلى 25,000، القيمة التلقائية هي 1,000] الحد الأقصى لعدد الصفوف المطلوب عرضها. لتصفّح النتائج، استخدِم قيمة الإزاحة startRow . |
|
startRow |
integer |
[اختياري، القيمة التلقائية هي 0] فهرس يستند إلى الصفر للصف الأول في الاستجابة. يجب أن يكون الرقم غير سالب. إذا تجاوز startRow عدد نتائج طلب البحث، فستكون الاستجابة ناجحة ولا تتضمن أي صفوف. |
|
dataState |
string |
[اختياري] إذا كانت "الكل" (غير حساسة لحالة الأحرف)، ستتضمن البيانات بيانات حديثة. إذا كانت القيمة "نهائي" (غير حساسة لحالة الأحرف) أو تم حذف هذه المعلّمة، لن تتضمّن البيانات المعروضة سوى البيانات النهائية فقط. |
الإجابة
ويتم تجميع النتائج وفقًا للسمات المحدّدة في الطلب. سيتم تجميع كل القيم التي تحتوي على مجموعة قيم السمات نفسها في صف واحد. على سبيل المثال، إذا تم التجميع حسب بُعد البلد، فسيتم تجميع كل نتائج "دبي" معًا، وسيتم تجميع كل نتائج "دبي" معًا، وهكذا. إذا كنت تجمِّع البيانات حسب البلد والجهاز، سيتم تجميع كل النتائج لـ "الولايات المتحدة، الجهاز اللوحي"، وسيتم تجميع كل النتائج لـ "الولايات المتحدة، الجوّال"، وهكذا. اطّلع على مستندات تقرير إحصاءات البحث للتعرّف على تفاصيل كيفية حساب النقرات ومرات الظهور وما إلى ذلك، وما تعنيه هذه القيم.
يتم ترتيب النتائج حسب عدد النقرات تنازليًا، ما لم يتم تصنيفها حسب التاريخ، وفي هذه الحالة يتم ترتيب النتائج تصاعديًا حسب التاريخ (ترتيب الأقدم أولاً ثم الأحدث). إذا كان هناك ربط بين صفين، سيكون ترتيب التصنيف عشوائيًا.
يمكنك الاطّلاع على السمة rowLimit في الطلب لمعرفة الحد الأقصى لعدد القيم التي يمكن عرضها.
{ "rows": [ { "keys": [ string ], "clicks": double, "impressions": double, "ctr": double, "position": double } ], "responseAggregationType": string }
اسم الموقع | القيمة | الوصف | ملاحظات |
---|---|---|---|
rows[] |
list |
قائمة صفوف مجمّعة حسب القيم الأساسية بالترتيب المحدّد في طلب البحث. | |
rows[].keys[] |
list |
قائمة بقيم السمات لهذا الصف، مجمّعة وفقًا للأبعاد في الطلب، بالترتيب المحدّد في الطلب. | |
rows[].clicks |
double |
عدد النقرات للصف. | |
rows[].impressions |
double |
عدد مرات الظهور للصف. | |
rows[].ctr |
double |
نسبة النقر إلى الظهور (CTR) للصف. تتراوح القيم من 0 إلى 1.0، بما في ذلك القيم الواقعة بينهما. | |
rows[].position |
double |
متوسط موضع الإعلان في نتائج البحث. | |
responseAggregationType |
string |
كيفية تجميع النتائج.اطّلِع على مستندات المساعدة للتعرُّف على كيفية حساب البيانات بشكلٍ مختلف حسب الموقع الإلكتروني مقارنةً بالصفحة.
القيم المقبولة هي:
|
جرِّب هذه الميزة الآن.
استخدم مستكشف واجهات برمجة التطبيقات أدناه لاستدعاء هذه الطريقة في البيانات المباشرة والاطلاع على الاستجابة.