تنطبق الحدود والحصص التالية على Data API.
كيفية تطبيق الحصص
تتطلّب جميع الطلبات المرسَلة إلى الإصدار 1 من Google Analytics Data API مشروعًا على Google Cloud، وتخضع للحصص الموضّحة في هذه الصفحة. يتم استهلاك الحصص بغض النظر عن الطريقة المستخدَمة لتحديد المشروع الذي يرسل الطلب، بما في ذلك:
- الطلبات التي تمت مصادقتها باستخدام بيانات اعتماد OAuth 2.0
- الطلبات التي تمت مصادقتها باستخدام مفتاح واجهة برمجة التطبيقات فقط
تُستخدَم مفاتيح واجهة برمجة التطبيقات لربط طلب بمشروع معيّن على Google Cloud لأغراض تتعلّق بالحصة والفوترة. سيتم احتساب جميع طلبات البيانات من واجهة برمجة التطبيقات التي يتم إجراؤها باستخدام بيانات الاعتماد أو مفتاح واجهة برمجة التطبيقات من مشروعك ضمن الحصص السارية لمشروعك وموقعك على "إحصاءات Google".
فئات الحصص
تتضمّن واجهة Data API أربع فئات لحصص الطلبات: الأساسية، والوقت الفعلي، ومسار الإحالة الناجحة، والمحادثة.
يتم احتساب طلبات البيانات من واجهة برمجة التطبيقات إلى طرق Core من حصص Core. يتم احتساب طلبات البيانات من واجهة برمجة التطبيقات إلى طرق Realtime ضمن حصص Realtime. يتم احتساب طلبات البيانات من واجهة برمجة التطبيقات إلى طرق مسار الإحالة الناجحة ضمن حصص مسار الإحالة الناجحة. يتم احتساب طلبات البيانات من واجهة برمجة التطبيقات إلى طرق Chat ضمن حصص Chat. يستهلك كل طلب نوعًا واحدًا فقط من الحصص.
| فئة الحصة | طُرق واجهة برمجة التطبيقات |
|---|---|
| التعريف | runReport وrunPivotReport وbatchRunReports وbatchRunPivotReports وrunAccessReport وgetMetadata وcheckCompatibility وcreateAudienceExports |
| الوقت الفعلي | runRealtimeReport |
| مسار الإحالة الناجحة | runFunnelReport |
| محادثة | properties.chat |
الحصص في مواقع "إحصاءات Google"
تستهلك جميع الطلبات حصص المواقع.
| اسم الحصة | الحدّ الأقصى للمواقع العادية | الحدّ الأقصى لمواقع "إحصاءات 360" |
|---|---|---|
| الرموز المميّزة الأساسية لكل موقع في اليوم | 200000 | 2,000,000 |
| الرموز المميّزة الأساسية لكل موقع في الساعة | 40,000 | 400,000 |
| الرموز المميّزة الأساسية لكل مشروع لكل موقع لكل ساعة | 14,000 | 140,000 |
| الطلبات المتزامنة الأساسية لكل موقع | 10 | 50 |
| أخطاء الخادم الأساسية لكل مشروع لكل موقع في الساعة | 10 | 50 |
| الرموز المميّزة في الوقت الفعلي لكل موقع في اليوم | 200000 | 2,000,000 |
| الرموز المميّزة في الوقت الفعلي لكل موقع في الساعة | 40,000 | 400,000 |
| الرموز المميّزة في الوقت الفعلي لكل مشروع لكل موقع في الساعة | 14,000 | 140,000 |
| الطلبات المتزامنة في الوقت الفعلي لكل موقع | 10 | 50 |
| عدد أخطاء الخادم في الوقت الفعلي لكل مشروع ولكل موقع في الساعة | 10 | 50 |
| الرموز المميّزة لمسار الإحالة الناجحة لكل موقع في اليوم | 200000 | 2,000,000 |
| الرموز المميّزة لمسارات الإحالة الناجحة لكل موقع في الساعة | 40,000 | 400,000 |
| رموز مسار الإحالة الناجحة المميّزة لكل مشروع لكل موقع في الساعة | 14,000 | 140,000 |
| الطلبات المتزامنة لمسار الإحالة الناجحة لكل موقع | 10 | 50 |
| أخطاء خادم مسار الإحالة الناجحة لكل مشروع لكل موقع في الساعة | 10 | 50 |
| عدد الرموز المميّزة للمحادثة لكل موقع في اليوم | 3,750,000 | 3,750,000 |
| رموز المحادثة المميّزة لكل موقع في الساعة | 500,000 | 500,000 |
- يتم قياس الطلبات المتزامنة من خلال عدد الطلبات التي يتم تنفيذها في الوقت نفسه. لتقليل عدد الطلبات المتزامنة، يُرجى الانتظار حتى تكتمل الطلبات السابقة قبل إرسال طلبات إضافية.
- أخطاء الخادم هي الرموز 500 و503. لا يتم احتساب حصص أخطاء الخادم إلا عندما يؤدي الطلب إلى حدوث خطأ في الخادم. عند استنفاد حصص "أخطاء الخادم" لزوج من المشاريع والمواقع الإلكترونية، يتم حظر جميع الطلبات الواردة إلى الموقع الإلكتروني من المشروع. للحصول على قائمة كاملة بردود الخطأ، يُرجى الاطّلاع على ردود الخطأ.
- يستهلك كل طلب حصة من الرموز المميّزة لكل موقع في الساعة والرموز المميّزة لكل مشروع لكل موقع في الساعة. وهذا يعني أنّه يجب الوصول إلى موقع واحد من خلال أكثر من 3 مشاريع قبل استنفاد حصة "الرموز المميّزة لكل موقع في الساعة" قبل حصة "الرموز المميّزة لكل مشروع لكل موقع في الساعة".
يُسمح للمواقع الإلكترونية بإرسال 120 طلبًا في الساعة قد يتم تطبيق حدّ أقصى عليها. من المحتمل أن يتم تطبيق الحدّ الأدنى على السمات userAgeBracket وuserGender وbrandingInterest وaudienceId وaudienceName. يتم تطبيق الحدود الدنيا لمنع أي شخص يطّلع على تقرير من استنتاج الخصائص الديمغرافية أو الاهتمامات الخاصة بمستخدمين فرديين.
حصة الرموز المميّزة للموقع
يتم استخدام الرموز المميّزة مع كل طلب إلى الإصدار 1 من Google Analytics Data API.
يعتمد عدد الرموز المميّزة التي يتم تحصيل رسوم مقابلها على مدى تعقيد الطلب. ومع أنّ معظم الطلبات تستهلك 10 رموز مميّزة أو أقل، تستهلك الطلبات الأكثر تعقيدًا (مثل طلبات البحث في ميزة "اسأل المستشار" chat) عددًا أكبر من الرموز المميّزة.
العوامل التي تؤثر في استهلاك الرموز المميّزة
يتم تحديد تكلفة الرموز المميّزة الدقيقة للطلب في وقت التنفيذ، ما يجعل الحساب المسبق الدقيق أمرًا صعبًا. تتأثر التكلفة بمجموعة من العوامل المرتبطة بالطلب نفسه والبيانات الأساسية في موقع على "إحصاءات Google". يمكن أن تؤدي هذه العوامل إلى ارتفاع التكاليف:
- عدد الصفوف: طلب عدد أكبر من الصفوف.
- عدد السمات والمقاييس: يتضمّن عددًا أكبر من السمات والمقاييس.
- تعقيد الفلتر: استخدام تعبيرات فلترة معقّدة
- طول النطاق الزمني: الاستعلام عن فترات زمنية أطول
- عدد القيم الفريدة للسمة: يمكن أن تؤدي السمات التي تتضمّن عددًا كبيرًا من القيم الفريدة (مثل
pagePathوالسمات المخصّصة) إلى زيادة تكلفة الرموز المميّزة بشكل كبير. - عدد أحداث الموقع: قد تستهلك طلبات البحث في المواقع التي تتضمّن عددًا أكبر من الأحداث رموزًا مميّزة أكثر من طلب البحث نفسه في موقع يتضمّن بيانات أقل.
مراقبة استخدام الرموز المميّزة
الطريقة الأكثر فعالية لتحديد تكلفة الرموز المميّزة لطلبات البيانات من واجهة برمجة التطبيقات
هي تضمين المَعلمة
"returnPropertyQuota": true
في نص الطلب (متوفّرة في
runReport وbatchRunReports وrunPivotReport وbatchRunPivotReports وrunRealtimeReport وrunFunnelReport). سيتضمّن الردّ من واجهة برمجة التطبيقات بعد ذلك العنصر PropertyQuota الذي يوضّح بالتفصيل الرموز المميّزة المستخدَمة في هذا الطلب المحدّد وأرصدة الحصة المتبقية.
مثال على طلب باستخدام returnPropertyQuota
POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
"dateRanges": [
{ "startDate": "7daysAgo", "endDate": "yesterday" }
],
"dimensions": [
{ "name": "country" }
],
"metrics": [
{ "name": "activeUsers" }
],
"returnPropertyQuota": true
}
مثال على حمولة استجابة propertyQuota
عند ضبط "returnPropertyQuota": true، تتضمّن الاستجابة كائن propertyQuota حيث يحتوي كل حقل على QuotaStatus مع عددَين صحيحَين consumed وremaining:
{
"dimensionHeaders": [
{ "name": "country" }
],
"metricHeaders": [
{ "name": "activeUsers", "type": "TYPE_INTEGER" }
],
"rows": [
{
"dimensionValues": [{ "value": "United States" }],
"metricValues": [{ "value": "4820" }]
}
],
"propertyQuota": {
"tokensPerDay": {
"consumed": 1,
"remaining": 199999
},
"tokensPerHour": {
"consumed": 1,
"remaining": 39999
},
"concurrentRequests": {
"consumed": 0,
"remaining": 10
},
"serverErrorsPerProjectPerHour": {
"consumed": 0,
"remaining": 10
},
"potentiallyThresholdedRequestsPerHour": {
"consumed": 0,
"remaining": 120
},
"tokensPerProjectPerHour": {
"consumed": 1,
"remaining": 13999
}
}
}
يتوافق كل حقل في propertyQuota مع حصة في
حصص مواقع "إحصاءات Google". يتم خصم رسوم الرموز المميّزة لطلب واحد من واجهة برمجة التطبيقات في الوقت نفسه من tokensPerDay وtokensPerHour وtokensPerProjectPerHour. إذا وصل أيّ من مستودعات الحصص إلى 0،
ستعرض الطلبات اللاحقة إلى ذلك الموقع خطأ 429 RESOURCE_EXHAUSTED.
أفضل الممارسات لتجنُّب أخطاء 429 RESOURCE_EXHAUSTED
- مراقبة أرصدة
remainingبشكل ديناميكي: يمكنك فحصpropertyQuota.tokensPerProjectPerHour.remainingوpropertyQuota.tokensPerHour.remainingفي الردود وإيقاف أو إبطاء المهام غير العاجلة في الخلفية عندما تنخفض الرموز المتبقية عن حد الأمان. - تجميع طلبات البحث ذات الصلة: استخدِم
batchRunReportsأوbatchRunPivotReportsلتجميع ما يصل إلى 5 تقارير في طلب HTTP واحد وتقليل وقت الاستجابة لطلبات HTTP (يُرجى العِلم أنّ كل تقرير في مجموعة لا يزال يُحتسب بشكل فردي ضمن الرموز المميّزة وحصصconcurrentRequests). - تقليل تعقيد طلبات البحث وعدد القيم الفريدة للسمة: ننصحك بحصر الطلبات على السمات والمقاييس التي تحتاج إليها فقط، وتقصير
dateRangesحيثما أمكن، وتجنُّب الجمع بين سمات متعددة تتضمّن عددًا كبيرًا من القيم (مثلpagePathأوfullPageUrl) في طلبات البحث المتكررة. - التحكّم في تزامن الطلبات: يمكنك وضع الطلبات في قائمة انتظار أو الحدّ من حجم مجموعة العاملين لكي تبقى الطلبات قيد المعالجة أقل من الحدّ الأقصى المسموح به في
concurrentRequests(10 للإصدار العادي و50 لإصدار إحصاءات 360). - تنفيذ التراجع الأسي مع حدود إعادة المحاولة: إذا تعذّر تنفيذ طلب بسبب الخطأ
429 RESOURCE_EXHAUSTEDأو500 INTERNALأو503 UNAVAILABLE، أعِد المحاولة باستخدام التراجع الأسي المقتطع كما هو موضّح في الاستجابات التي تتضمّن أخطاء.
استخدام الرموز المميّزة في Chat ومراقبتها
بالنسبة إلى طلبات Ask Advisor chat، تمثّل الرموز المميّزة تكاليف الحوسبة والاستدلال واسترداد البيانات الأساسية في النموذج. يتأثر استهلاك الرموز المميّزة في Chat بما يلي:
- نطاق طلب البحث والتحليل: مدى تعقيد التحليل المطلوب ونطاقه
- الرموز المميّزة لإدخال النموذج وإخراجه: حجم البيانات السياقية التي تمت معالجتها والردود النصية التي تم إنشاؤها.
- الرموز المميّزة للتفكير: خطوات الاستدلال التي يتّبعها النموذج لتجميع النتائج.
- وقت استجابة التنفيذ: هو وقت المعالجة المطلوب لاستكشاف البيانات المتعددة الخطوات.
لمراقبة استخدام الرموز المميّزة للمحادثة، اضبط "returnPropertyQuota": true
في
ChatRequest. سيتضمّن الردّ عنصر PropertyChatQuota الذي يحتوي على الحقلَين tokensPerDay وtokensPerHour مع الأرصدة المستهلكة والمتبقية.