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

בקטע הזה מוצג תהליך קריאת נתוני התזונה היומיים המצטברים ממקור נתונים ספציפי. התשובה מכילה רשימה של דליים (אחד לכל תקופה של 24 שעות), כל אחד עם מערך נתונים יחיד ונקודת נתונים שמכילה שדה לכל סוגי הנתונים התזונתיים שתועדו. אם לא קיימים ערכים תזונתיים לגבי תקופת זמן מסוימת, לא קיים מערך נתונים. אם מוקלט יותר מ-meal_type, הערך יהיה UNKNOWN.

Android

האפליקציה יכולה לקרוא את נתוני התזונה המצטברים היומיים של המשתמש על ידי יצירת בקשה לקריאת נתונים וציון המצטבר עבור סוגי הנתונים DataType.TYPE_NUTRITION ו-DataType.AGGREGATE_NUTRITION_SUMMARY, כמו בדוגמה הבאה:

val readRequest = DataReadRequest.Builder()
    .aggregate(DataType.AGGREGATE_NUTRITION_SUMMARY)
    .bucketByTime(1, TimeUnit.DAYS)
    .setTimeRange(startTime, endTime, TimeUnit.MILLISECONDS)
    .build()

REST

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

שיטת HTTP

POST

כתובת ה-URL של הבקשה

https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate

גוף הבקשה

{
  "aggregateBy": [{
    "dataSourceId":
      "raw:com.google.nutrition:407408718192:MyDataSource"
  }],
  "bucketByTime": { "durationMillis": 86400000 },
  "startTimeMillis": 1471244400000,
  "endTimeMillis": 1471259040000
}

תשובה

אם מקור הנתונים נוצר בהצלחה, התשובה היא קוד סטטוס 200 OK. גוף התגובה מכיל ייצוג JSON של מקור הנתונים, כולל מאפיין datasource.dataStreamId שאפשר להשתמש בו כמזהה של מקור הנתונים בבקשות הבאות.

פקודת CURL

$ curl --header "Authorization: Bearer ya29.yourtokenvalue --request POST \
--header "Content-Type: application/json;encoding=utf-8" --data @aggregate.json \
https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate