צבירת נתונים מסוג מסוים או זרם מסוים לקטגוריות מסוימות, חלקי ערך נתון את סוג הגבולות. מערכי נתונים מרובים ממגוון סוגים אפשר לצבור מקורות לסוג קטגוריה אחד בלבד לכל בקשה. רוצים לנסות עכשיו?
בקשה
בקשת HTTP
POST https://www.googleapis.com/fitness/v1/users/userId/dataset:aggregate
פרמטרים
שם הפרמטר | ערך | תיאור |
---|---|---|
פרמטרים של נתיב | ||
userId |
string |
נתונים נצברים של האדם שזוהה. צריך להשתמש ב-me כדי לציין
המשתמש המאומת. כרגע יש תמיכה רק ב-me .
|
אישור
הבקשה הזו מחייבת הרשאה עם לפחות אחד מההיקפים הבאים:
היקף |
---|
https://www.googleapis.com/auth/fitness.activity.read |
https://www.googleapis.com/auth/fitness.activity.write |
https://www.googleapis.com/auth/fitness.location.read |
https://www.googleapis.com/auth/fitness.location.write |
https://www.googleapis.com/auth/fitness.body.read |
https://www.googleapis.com/auth/fitness.body.write |
https://www.googleapis.com/auth/fitness.nutrition.read |
https://www.googleapis.com/auth/fitness.nutrition.write |
https://www.googleapis.com/auth/fitness.blood_pressure.read |
https://www.googleapis.com/auth/fitness.blood_pressure.write |
https://www.googleapis.com/auth/fitness.blood_glucose.read |
https://www.googleapis.com/auth/fitness.blood_glucose.write |
https://www.googleapis.com/auth/fitness.oxygen_saturation.read |
https://www.googleapis.com/auth/fitness.oxygen_saturation.write |
https://www.googleapis.com/auth/fitness.body_temperature.read |
https://www.googleapis.com/auth/fitness.body_temperature.write |
https://www.googleapis.com/auth/fitness.reproductive_health.read |
https://www.googleapis.com/auth/fitness.reproductive_health.write |
מידע נוסף זמין בדף אימות והרשאה.
גוף הבקשה
בגוף הבקשה, מספקים את הנתונים במבנה הבא:
{ "startTimeMillis": long, "endTimeMillis": long, "aggregateBy": [ { "dataTypeName": string, "dataSourceId": string } ], "filteredDataQualityStandard": [ string ], "bucketByTime": { "durationMillis": long, "period": { "type": string, "value": integer, "timeZoneId": string } }, "bucketBySession": { "minDurationMillis": long }, "bucketByActivityType": { "minDurationMillis": long, "activityDataSourceId": string }, "bucketByActivitySegment": { "minDurationMillis": long, "activityDataSourceId": string } }
שם הנכס | ערך | תיאור | הערות |
---|---|---|---|
startTimeMillis |
long |
תחילת חלון זמן. נתונים שחוצים את חלון הזמן הזה יצטברו. הזמן הוא באלפיות שנייה מאז תחילת התקופה, כולל. | |
endTimeMillis |
long |
סוף חלון הזמן. נתונים שחוצים את חלון הזמן הזה יצטברו. הזמן הוא באלפיות שנייה מאז תחילת התקופה, כולל. | |
aggregateBy[] |
list |
מפרט הנתונים לצבירה. יש לספק מפרט צבירה אחד לפחות. כל הנתונים שיצוינו יצברו לפי אותם קריטריונים לקטגוריה. התשובה תכלול מערך נתונים אחד בכל מפרט AggregateBy. | |
aggregateBy[].dataTypeName |
string |
סוג הנתונים לצבירה. כל מקורות הנתונים שמספקים את סוג הנתונים הזה יתרמו נתונים לצבירת. התשובה תכיל מערך נתונים יחיד עבור השם של סוג הנתונים הזה. למערך הנתונים יהיה מזהה מקור הנתונים הבא: | |
aggregateBy[].dataSourceId |
string |
מזהה של מקור נתונים לצבירה. צבירת הנתונים תכלול רק נתונים ממזהה מקור הנתונים שצוין. אם יש מקור נתונים, הוא צריך להיות קיים. היקפי ההרשאות של OAuth בפרטי הכניסה שסופקו חייבים להעניק גישת קריאה לסוג הנתונים הזה. למערך הנתונים שבתשובה יהיה אותו מזהה של מקור נתונים. הערה: אפשר לצבור את הנתונים לפי dataTypeName או לפי dataSourceId, ולא לפי שניהם. | |
filteredDataQualityStandard[] |
list |
אין לאכלס את השדה הזה. המערכת מתעלמת ממנו. | |
bucketByTime |
nested object |
מציינת שהנתונים יצטברו לפי מרווח זמן אחד. לא כולל באופן הדדי מפרטים אחרים לקטגוריות. | |
bucketByTime.durationMillis |
long |
מציינת שקטגוריות התוצאות צוברות נתונים לפי משך הזמן המדויק שלMillis. מסגרות זמן שלא מכילות נתונים ייכללו בתשובה עם מערך נתונים ריק. | |
bucketByTime.period |
nested object |
||
bucketByTime.period.type |
string |
הערכים הקבילים הם:
|
|
bucketByTime.period.value |
integer |
||
bucketByTime.period.timeZoneId |
string |
org.joda.timezone.DateTimeZone | |
bucketBySession |
nested object |
מציינת שהנתונים יצטברו לפי סשנים של משתמשים. נתונים שלא מתאימים לטווח הזמן של הסשן לא ייכללו בתשובה. לא כולל באופן הדדי מפרטים אחרים לקטגוריות. | |
bucketBySession.minDurationMillis |
long |
מציינת שרק סשנים שנמשכים יותר מ-minDurationMillis נחשבים למאגר נתונים נצברים, והם משמשים כמאגר נתונים. | |
bucketByActivityType |
nested object |
מציינת שהנתונים יצטברו לפי סוג הפעילות שהתבצעה בזמן שהנתונים תועדו. כל הנתונים שנרשמו במהלך סוג פעילות מסוים (בטווח התאריכים הנתון) יצטברו באותה קטגוריה. נתונים שנרשמו בזמן שהמשתמש לא היה פעיל לא ייכללו בתשובה. לא כולל באופן הדדי מפרטים אחרים לקטגוריות. | |
bucketByActivityType.minDurationMillis |
long |
מציינת שרק פלחי פעילות שנמשכים יותר מ-minDurationMillis נחשבים למאגר נתונים נצברים, והם משמשים כמאגר נתונים. | |
bucketByActivityType.activityDataSourceId |
string |
אם לא צוין activityDataSourceId ספציפי, המערכת תשתמש במקור הפעילות שמוגדר כברירת מחדל. | |
bucketByActivitySegment |
nested object |
מציינת שהנתונים יצטברו לכל פלח פעילות שתועד עבור משתמש. דומה ל-BucketByActivitySegment, אבל החלוקה לקטגוריות מתבצעת לכל פלח פעילות ולא לכל הפלחים מאותו הסוג. לא כולל באופן הדדי מפרטים אחרים לקטגוריות. | |
bucketByActivitySegment.minDurationMillis |
long |
מציינת שרק פלחי פעילות שנמשכים יותר מ-minDurationMillis נחשבים למאגר נתונים נצברים, והם משמשים כמאגר נתונים. | |
bucketByActivitySegment.activityDataSourceId |
string |
אם לא צוין activityDataSourceId ספציפי, המערכת תשתמש במקור הפעילות שמוגדר כברירת מחדל. |
תשובה
אם הפעולה בוצעה ללא שגיאות, השיטה הזו מחזירה גוף תגובה עם המבנה הבא:
{ "bucket": [ { "type": string, "startTimeMillis": long, "endTimeMillis": long, "dataset": [ users.dataSources.datasets Resource ], "session": { "id": string, "name": string, "description": string, "startTimeMillis": long, "endTimeMillis": long, "modifiedTimeMillis": long, "application": { "packageName": string, "version": string, "detailsUrl": string, "name": string }, "activityType": integer, "activeTimeMillis": long }, "activity": integer } ] }
שם הנכס | ערך | תיאור | הערות |
---|---|---|---|
bucket[] |
list |
רשימת קטגוריות שמכילות את הנתונים הנצברים. | |
bucket[].type |
string |
סוג הקטגוריה מציין את אופן ביצוע צבירת הנתונים בקטגוריה.
הערכים הקבילים הם:
|
|
bucket[].startTimeMillis |
long |
שעת ההתחלה של הנתונים הנצברים, באלפיות השנייה מאז תחילת התקופה, כולל. | |
bucket[].endTimeMillis |
long |
שעת הסיום של הנתונים הנצברים, באלפיות השנייה מאז תחילת התקופה, כולל. | |
bucket[].dataset[] |
list |
בבקשה יהיה מערך נתונים אחד לכל AggregateBy. | |
bucket[].session |
nested object |
זמין ל-Bucket.Type.SESSION | |
bucket[].session.id |
string |
מזהה שנוצר על ידי הלקוח וייחודי בכל הסשנים שבבעלות המשתמש המסוים הזה. | |
bucket[].session.name |
string |
שם קריא (לבני אדם) של הסשן. | |
bucket[].session.description |
string |
תיאור של הסשן הזה. | |
bucket[].session.startTimeMillis |
long |
שעת התחלה, באלפיות שנייה מאז נקודת ההתחלה, כולל. | |
bucket[].session.endTimeMillis |
long |
שעת סיום, באלפיות שנייה מתחילת התקופה, כולל. | |
bucket[].session.modifiedTimeMillis |
long |
חותמת זמן שמציינת מתי הסשן השתנה לאחרונה. | |
bucket[].session.application |
nested object |
האפליקציה שיצרה את הסשן. | |
bucket[].session.application.packageName |
string |
שם החבילה של האפליקציה הזו. המזהה הזה משמש כמזהה ייחודי באפליקציות ל-Android, אבל לקוחות REST לא יכולים לציין אותו. בלקוחות REST מספר פרויקט המפתח שלהם ישתקף במזהים של מקורות הנתונים של מקור הנתונים, במקום ב-packageName. | |
bucket[].session.application.version |
string |
גרסת האפליקציה. צריך לעדכן את השדה הזה בכל פעם שהאפליקציה משתנה באופן שמשפיע על חישוב הנתונים. | |
bucket[].session.application.detailsUrl |
string |
URI אופציונלי שניתן להשתמש בו כדי לקשר חזרה לאפליקציה. | |
bucket[].session.application.name |
string |
השם של האפליקציה הזו. זה שדה חובה בלקוחות REST, אבל אנחנו לא אוכפים את הייחודיות של השם הזה. מטעמי נוחות, מפתחים אחרים שרוצים לזהות איזה REST יצר אפליקציה או מקור נתונים. | |
bucket[].session.activityType |
integer |
סוג הפעילות שהסשן הזה מייצג. | |
bucket[].session.activeTimeMillis |
long |
משך הפעילות של הסשן. הפרמטרים start_time_millis וה-end_time_millis מגדירים את משך הסשן המלא, אבל משך הפעילות יכול להיות קצר יותר ולציין אותו ב-Active_time_millis. אם משך הזמן הלא פעיל במהלך הסשן ידוע, צריך להוסיף אותו גם דרך נקודה על הגרף com.google.activity.segment עם ערך פעילות STILL |
|
bucket[].activity |
integer |
זמין ל-Bucket.Type.ACTIVITY_TYPE, Bucket.Type.ACTIVITY_SEGMENT |
נסה בעצמך!
אפשר להשתמש ב-APIs Explorer שבהמשך כדי להפעיל את השיטה הזו בנתונים בזמן אמת ולראות את התגובה.