האפליקציה יכולה לתעד נתוני סוכר בדם על ידי כתיבה אל
com.google.blood_glucose
סוג הנתונים. בסוג הנתונים הזה, כל נקודה על הגרף מייצגת נתונים זמניים
קריאת סוכר בדם. נקודת הנתונים מכילה שדות של סוכר בדם
על הריכוז, קשרי זמן לארוחות ולשינה, ומקור
של דגימה שנמדדה. כל השדות מלבד ריכוז הסוכר בדם
הם אופציונליים.
- ריכוז הסוכר בדם נמדד ב-mmol/L (1 מילימול לליטר) שווה ערך ל-18 מ"ג/dL).
- אם צוין, יחס הזמן לארוחה חייב לכלול אחד מהערכים הרשומים
ב-
FIELD_TEMPORAL_RELATION_TO_MEAL
. - סוג הארוחה חייב לכלול אחד מהערכים שצוינו ב-
FIELD_MEAL_TYPE
. אם סוג הארוחה לא ידוע, אפשר להשתמש בפורמטMEAL_TYPE_UNKNOWN
. - אם צוין, יחס הזמן לשינה חייב לכלול אחד מהערכים הרשומים
ב-
FIELD_TEMPORAL_RELATION_TO_SLEEP
. - אם צוין, מקור דגימת הסוכר בדם חייב להיות בעל אחד מהערכים
מפורטים ב-
FIELD_BLOOD_GLUCOSE_SPECIMEN_SOURCE
.
יצירת מקור נתונים
Android
כדי לכתוב נקודת נתונים של רמת הסוכר בדם, צריך ליצור ערך חדש של DataSource
מתוך TYPE_BLOOD_GLUCOSE
,
כפי שאפשר לראות בדוגמה הבאה:
val bloodGlucoseSource = DataSource.Builder()
.setDataType(TYPE_BLOOD_GLUCOSE)
// ...
.build()
REST
כדי לכתוב נקודת נתונים של רמת הסוכר בדם, צריך ליצור מקור נתונים חדש.
שיטת HTTP
POST
כתובת ה-URL של הבקשה
https://www.googleapis.com/fitness/v1/users/me/dataSources
גוף הבקשה
{
"dataStreamName": "BloodGlucose",
"type": "raw",
"application": {
"detailsUrl": "http://example.com",
"name": "My Example App",
"version": "1"
},
"dataType": {
"name": "com.google.blood_glucose"
}
}
תגובה
אם מקור הנתונים נוצר בהצלחה, התגובה תהיה בסטטוס 200 OK
גוף התשובה מכיל ייצוג JSON של מקור הנתונים,
כולל נכס datasource.dataStreamId
שאפשר להשתמש בו בתור הנתונים
מזהה המקור של הבקשות הבאות.
פקודת CURL
$ curl --header "Authorization: Bearer ya29.yourtokenvalue --request POST \ --header "Content-Type: application/json;encoding=utf-8" --data @blood-glucose-ds.json \ https://www.googleapis.com/fitness/v1/users/me/dataSources
הוספת נתונים
Android
כדי להוסיף נתונים למקור שנוצר למעלה, צריך ליצור נקודה על הנתונים האלה את המקור, שאותו אפשר להוסיף באמצעות History API:
val bloodGlucose = DataPoint.builder(bloodGlucoseSource)
.setTimestamp(timestamp, TimeUnit.MILLISECONDS)
.setField(FIELD_BLOOD_GLUCOSE_LEVEL, 5.0f) // 90 mg/dL
.setField(FIELD_TEMPORAL_RELATION_TO_MEAL, FIELD_TEMPORAL_RELATION_TO_MEAL_BEFORE_MEAL)
.setField(FIELD_MEAL_TYPE, MEAL_TYPE_BREAKFAST)
.setField(FIELD_TEMPORAL_RELATION_TO_SLEEP, TEMPORAL_RELATION_TO_SLEEP_ON_WAKING)
.setField(FIELD_BLOOD_GLUCOSE_SPECIMEN_SOURCE, BLOOD_GLUCOSE_SPECIMEN_SOURCE_CAPILLARY_BLOOD)
.build()
REST
הדוגמה הזו ממחישה הוספה של נתוני סוכר בדם באמצעות מקור הנתונים שנוצר למעלה.
שיטת HTTP
PATCH
כתובת ה-URL של הבקשה
https://www.googleapis.com/fitness/v1/users/me/dataSources/datasource.dataStreamId/datasets/1574159699023000000-1574159699023000000
גוף הבקשה
לשם הבהרה, גוף ה-JSON שמוצג למטה כולל הערות עם הערות, כדי להציג לשימוש בקבועי שדה בריאותי. נכון לעכשיו, Fit API מסיר תגובות, מומלץ מאוד להסיר אותן מהקוד, מכיוון ש-JSON לא תומכים באופן רשמי בתגובות.
{ "minStartTimeNs": 1574159699023000000, "maxEndTimeNs": 1574159699023000000, "dataSourceId": "datasource.dataStreamId", "point": [ { "startTimeNanos": 1574159699023000000, "endTimeNanos": 1574159699023000000, "dataTypeName": "com.google.blood_glucose", "value": [ { // Blood glucose level, 90 mg/dL "fpVal": 5.0 }, { // FIELD_TEMPORAL_RELATION_TO_MEAL_BEFORE_MEAL "intVal": 3 }, { // MEAL_TYPE_BREAKFAST "intVal": 1 }, { // TEMPORAL_RELATION_TO_SLEEP_ON_WAKING "intVal": 3 }, { // BLOOD_GLUCOSE_SPECIMEN_SOURCE_CAPILLARY_BLOOD "intVal": 2 } ] } ] }
תגובה
אם נתוני הסוכר בדם נוספו בהצלחה, התגובה תהיה 200 OK
קוד הסטטוס. גוף התגובה מכיל ייצוג JSON של הדם
שנוספו.
פקודת CURL
$ curl --header "Authorization: Bearer ya29.yourtokenvalue --request PATCH \ --header "Content-Type: application/json;encoding=utf-8" --data @blood-glucose-data.json \ https://www.googleapis.com/fitness/v1/users/me/dataSources/datasource.dataStreamId/datasets/1574159699023000000-1574159699023000000