שאילתות של קבוצות מדדים

אחרי שהגדרתם הכול, אתם יכולים לשלוח בקשות אל Google Play Developer Reporting API כדי לאחזר מטא-נתונים על קבוצות של מדדים ולשלוח שאילתות לגבי המדדים שלהן.

בדוגמאות הקוד הבאות אפשר לראות איך לשלוח כמה בקשות פשוטות. לדוגמה, השיטות הבאות מראות איך לאחזר מדדים שונים של האפליקציה. יש כמה פרמטרים שונים של שאילתות שאפשר להשתמש בהם כדי לצמצם את השאילתה.

מאחזר את המטא-נתונים של קבוצת המדדים

בדוגמה הבאה מאחזרים את המטא-נתונים של קבוצת המדדים של שיעור הקריסות באפליקציה פיקטיבית, com.example.app.

בקשה פשוטה:

בקשת ה-HTTP GET הזו מציינת את הפרמטר של שם האפליקציה ומחזירה את משאב המדד המלא שמשויך לאפליקציה.

GET https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet

תגובה עם מידע על המדד:

התגובה כוללת את השדות הבאים שקשורים לקבוצת המדדים:

{
  "freshness_info": {
    "freshness": [
      "aggregation_period": "DAILY"
      "latest_end_time": { year: "2021" month: "7" day: "22" time_zone: "America/Los_Angeles" }
    ]
  }
}

שימוש בתכונת השאילתות

POSTבקשת ה-HTTP הבאה לאותו משאב משתמשת בנקודת הקצה (endpoint) query כדי לאחזר נתונים ספציפיים מתוך קבוצת המדדים.

POST https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet:query

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

{
  "timeline_spec": {
    "aggregation_period": "DAILY"
    "start_time": { year: "2021" month: "7" day: "1" time_zone: "America/Los_Angeles" }
    "end_time": { year: "2021" month: "7" day: "3" time_zone: "America/Los_Angeles" }
   }
  "dimensions": ["apiLevel"]
  "metrics": ["errorReportCount", "distinctUsers"]
  "page_size": "10"
}

הנה כמה דוגמאות ברמת האוסף:

שדות
timelineSpec

object (TimelineSpec)

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

dimensions[]

string

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

metrics[]

string

המדדים לצבירה.

pageSize

integer

הגודל המקסימלי של הנתונים שמוחזרים.

אם לא מציינים ערך, יוחזרו עד 1,000 שורות. הערך המקסימלי הוא 10,000. ערכים גבוהים יותר יומרו ל-10,000.

טיפול בתשובות

אחרי שהשרת מעבד בקשה תקינה שכוללת שדות תקינים, הוא שולח בחזרה קוד סטטוס של HTTP‏ 200 OK, יחד עם הנתונים המבוקשים. אם הפרמטר של השאילתה fields מכיל שגיאה או לא תקין, השרת מחזיר קוד סטטוס HTTP ‏400 Bad Request, יחד עם הודעת שגיאה שמסבירה למשתמש מה הבעיה בבחירת השדות (לדוגמה, "Invalid field timeline_spec").

זוהי דוגמה לתשובה שמוצגת בקטע המבוא שלמעלה.

POST https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet:query

התגובה נראית כך:

200 OK
{
  rows: [
    {
      aggregation_period: "DAILY"
      start_time: { year: "2021" month: "7" day: "1" time_zone: "America/Los_Angeles" }
      dimensions: [{dimension: "apiLevel" int64_value: "20"}]
      metrics: [
        {metric: "errorReportCount" decimal_value: "100"},
        {metric: "distinctUsers" decimal_value: "57"},
      ]
    }, {
      aggregation_period: "DAILY"
      start_time: { year: "2021" month: "7" day: "1" time_zone: "America/Los_Angeles" }
      dimensions: [{dimension: "apiLevel" int64_value: "21"}]
      metrics: [
        {metric: "errorReportCount" decimal_value: "123"},
        {metric: "distinctUsers" decimal_value: "65"},
      ]
    },
    ...
  ]
  next_page_token: "eW91IGhhdmUgdG9vIG11Y2ggZnJlZSB0aW1l"
}

הערה: בממשקי API שתומכים בפרמטרים של שאילתות לעימוד נתונים (לדוגמה, maxResults ו-nextPageToken), השתמשו בפרמטרים האלה כדי לצמצם את התוצאות של כל שאילתה לגודל שניתן לניהול.