מגבלות ומכסות על בקשות API

במסמך הזה מתוארות המגבלות והמכסות של בקשות לממשקי API לניהול ול-Reporting API.

מיליוני אתרים משתמשים ב-Google Analytics. אנחנו מציבים מגבלות ומכסות על בקשות ה-API כדי להגן על המערכת מפני קבלה של יותר נתונים ממה שהיא יכולה לטפל בה, וכדי להבטיח חלוקה שווה של משאבי המערכת. המגבלות והמכסות עשויות להשתנות.

בסרטון הזה מפורטות השיטות המומלצות לניהול מכסות של בקשות API של Google Analytics.

מגבלות מכסה כלליות

המכסות הבאות חלות על Management API, Core Reporting API v3, MCF Reporting API, Metadata API ו-User Deletion API ו-Real Time Reporting API:

  • 50,000 בקשות לכל פרויקט ביום, אפשר להגדיל.
  • 10 שאילתות לשנייה (QPS) לכל כתובת IP.
    • במסוף API יש מכסה דומה שנקראת Requests per 100 seconds per user. כברירת מחדל, הוא מוגדר ל-100 בקשות ל-100 שניות לכל משתמש, ואפשר לשנות אותו לערך מקסימלי של 1,000. עם זאת, מספר הבקשות ל-API מוגבל ל-10 בקשות לשנייה לכל משתמש לכל היותר.
    • אם האפליקציה שלכם שולחת את כל בקשות ה-API מכתובת IP יחידה (כלומר בשם המשתמשים שלכם), השתמשו בפרמטר userIP או quotaUser בכל בקשה כדי לקבל את מכסת ה-QPS המלאה לכל משתמש. לפרטים נוספים, קראו את סיכום הפרמטרים הרגילים של שאילתות.

Reporting APIs

המכסות הבאות חלות על כל ממשקי Reporting API, כולל Core Reporting API גרסה 3, Analytics Reporting API v4, Real Time API v3 ו-Multi-channel Funnel API v3:

  • 10,000 בקשות לכל צפייה (פרופיל) ביום (אי אפשר להגדיל)
  • 10 בקשות בו-זמניות לכל צפייה (פרופיל) (אי אפשר להגדיל)

שגיאות בבקשות לממשקי API לדיווח

אם הבקשה ל-Reporting API נכשלת ומוצגת שגיאה בחיבור לשרת, תקבלו קוד תגובה 500 או 503. אתם יכולים לשלוח את הבקשה מחדש. עם זאת, אין לשלוח את הבקשה מחדש יותר מפעם אחת אם היא נכשלת שוב ושוב. Google Analytics מאפשר:

  • 10 בקשות של שגיאות שרת שנכשלו לכל פרויקט לכל צפייה (פרופיל) לשעה
  • 50 בקשות לשגיאות שרת שנכשלו לכל פרויקט לכל צפייה (פרופיל) ביום

אם מספר הבקשות שנכשלו חורג מהמכסות האלה, תופיע השגיאה הבאה:

Quota Error: The number of recent reporting API requests failing by server error is too high.
You are temporarily blocked from the reporting API for at least an hour.
Please send fewer server errors in the future to avoid being blocked.

כדי לצמצם את הסיכוי לשגיאות בשרת הבקשות, מומלץ לפשט את הבקשה על ידי: צמצום טווח התאריכים, הקטנת מספר המאפיינים בבקשה או הפחתת מספר המדדים בבקשה.

אין לשלוח מחדש באופן שוטף בקשה שנכשלה. במקום זאת, צריך להטמיע השהיה מעריכית לפני ניסיון חוזר (exponential backoff) כדי לשלוח אותו מחדש.

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

לדוגמה, אם לא נשלחה שגיאת שרת בצמד פרויקט ובתצוגה מפורטת ב-24 השעות האחרונות, הפרויקט והתצוגה המפורטת ינצלו 0 מתוך 50 המכסה. נניח שהפרויקט והתצוגה שולחים שגיאת שרת בשעה 6:12. אם הפרויקט והתצוגה שולחים 49 שגיאות שרת נוספות לפני 6:12 ביום שלמחרת, הפרויקט והתצוגה הזו ייחסמו עד 6:12 ביום שלמחרת. בשעה 6:12 למחרת, מכסת השיעור של השגיאות בשרת תתאפס לגמרי בפרויקט ובתצוגה.

חריגה מהמכסות

אם תחרגו ממכסת הבקשות ל-Google Analytics API, ה-API יחזיר קוד שגיאה 403 או 429 ותוצג הודעה על כך שהחשבון חרג מהמכסה. למידע נוסף, כדאי לעיין בתנאים ובהגבלות.

בקשה להגדלת מכסה

אפשר לבקש להגדיל רק את:

כדי לראות או לשנות את מגבלות השימוש בפרויקט, או כדי לבקש להגדיל את המכסה:

  1. אם עדיין אין לכם חשבון לחיוב בפרויקט, יוצרים חשבון.
  2. נכנסים לדף Enabled APIs של ספריית ה-API ב-API Console ובוחרים ממשק API מהרשימה.
  3. כדי להציג ולשנות הגדרות שקשורות למכסות, בוחרים באפשרות Quotas. כדי להציג סטטיסטיקות שימוש, בוחרים באפשרות Usage (שימוש).

כדי לבקש הגדלה של המכסה המקסימלית, צריך להשתמש בטופס הבקשה למכסה ב-Analytics API. חשוב לבדוק את הפרטים ולפעול לפי ההוראות בטופס הבקשה למכסה לפני שליחת הבקשה. בגרסה 4 של Reporting API, שם ה-API במסוף Google API הוא Google Analytics Reporting API. כל שאר ממשקי ה-API האחרים של v3 (למשל, Management API v3, Core Reporting API v3, Real Time Reporting API v3, User Deletion API v3) מופיעים בקטע Analytics API במסוף Google API.

במאמר ניהול מכסות ושימוש במכסות תוכלו לקרוא מידע נוסף על ניהול המכסות ועל צמצום המכסות באפליקציה.