Google Health API מספק סוגי נתונים למעקב אחרי התזונה וצריכת הנוזלים של המשתמש. הסוגים האלה מאפשרים לתעד ארוחות, לעיין במאכלים ממסד הנתונים של המזון, לעקוב אחרי כמויות של חומרים מזינים ולתעד צריכת נוזלים.
סוגי נתונים נתמכים
| סוג הנתונים | פעולות זמינות |
היקף |
|---|---|---|
|
אוכל
|
list, get | .nutrition.readonly.nutrition.writeonly |
|
יחידת מידה של מזון
dataType:
food-measurement-unitfilter parameter: food_measurement_unit
סוג הרשומה: אוכל
מכשירים תואמים
|
list, get | .nutrition.readonly.nutrition.writeonly |
|
יומן מאזן הנוזלים
dataType:
hydration-logfilter parameter: hydration_log
סוג הרשומה: סשן
|
list, get, reconcile, rollup, dailyRollup, create, update, batchDelete | .nutrition.readonly.nutrition.writeonly |
|
יומן תזונה
dataType:
nutrition-logfilter parameter: nutrition_log
סוג הרשומה: סשן
מכשירים תואמים
|
list, get, reconcile, rollup, dailyRollup, create, update, batchDelete | .nutrition.readonly.nutrition.writeonly |
יומן תזונה
יומן תזונה מייצג מזון שהמשתמש תיעד. יש שתי דרכים ליצור יומן תזונה, בהתאם לסוג המזון:
מאכל מזוהה: מגדירים את השדה
foodכך שיפנה למשאב Food קיים. השדותnutrients,energy,energyFromFat,totalCarbohydrate,totalFatו-foodDisplayNameמאוכלסים באופן אוטומטי מהמזון שאליו מפנים. זו השיטה המועדפת.מזון אנונימי: מגדירים את השדה
foodDisplayNameבאופן ידני ומספקים ערכים ל-nutrients,energy,energyFromFat,totalCarbohydrateו-totalFat. אי אפשר לערוך יומני תזונה שנוצרו ממאכלים אנונימיים אחרי שהם נוצרו.
יצירת יומן תזונה עם אוכל אנונימי
כדי ליצור רשומה ביומן התזונה, שולחים בקשת POST לנקודת הקצה dataPoints של nutrition-log.
בקשה
POST https://health.googleapis.com/v4/users/me/dataTypes/nutrition-log/dataPoints
Authorization: Bearer access-token
Content-Type: application/json
{
"nutritionLog": {
"interval": {
"startTime": "2026-06-16T18:00:00Z",
"endTime": "2026-06-16T18:30:00Z"
},
"foodDisplayName": "Grilled Chicken Breast",
"mealType": "DINNER",
"energy": {
"kcal": 165
},
"totalCarbohydrate": {
"grams": 0
},
"totalFat": {
"grams": 3.6
},
"nutrients": [
{
"nutrient": "PROTEIN",
"quantity": {
"grams": 31
}
},
{
"nutrient": "SODIUM",
"quantity": {
"grams": 0.074
}
}
],
"serving": {
"amount": 1.0
}
}
}תשובה
{
"done": true,
"response": {
"@type": "type.googleapis.com/google.devicesandservices.health.v4.DataPoint",
"name": "users/user-id/dataTypes/nutrition-log/dataPoints/data-point-id",
"dataSource": {
"recordingMethod": "UNKNOWN",
"application": {
"googleWebClientId": "google-web-client-id"
},
"platform": "GOOGLE_WEB_API"
},
"nutritionLog": {
"interval": {
"startTime": "2026-06-16T18:00:00Z",
"startUtcOffset": "0s",
"endTime": "2026-06-16T18:30:00Z",
"endUtcOffset": "0s",
"civilStartTime": {
"date": {
"year": 2026,
"month": 6,
"day": 16
},
"time": {
"hours": 18
}
},
"civilEndTime": {
"date": {
"year": 2026,
"month": 6,
"day": 16
},
"time": {
"hours": 18,
"minutes": 30
}
}
},
"energy": {
"kcal": 165
},
"totalCarbohydrate": {
"grams": 0
},
"totalFat": {
"grams": 3.6
},
"nutrients": [
{
"quantity": {
"grams": 31
},
"nutrient": "PROTEIN"
},
{
"quantity": {
"grams": 0.074
},
"nutrient": "SODIUM"
}
],
"mealType": "DINNER",
"serving": {
"amount": 1
},
"foodDisplayName": "Grilled Chicken Breast"
}
}
}יצירת יומן תזונה עם אוכל מזוהה
כדי לתעד פריט מזון ממסד הנתונים של המזון, מגדירים את השדה food כך שיפנה למשאב Food. ה-API מאכלס את השדות של הערכים התזונתיים באופן אוטומטי.
בקשה
POST https://health.googleapis.com/v4/users/me/dataTypes/nutrition-log/dataPoints
Authorization: Bearer access-token
Content-Type: application/json
{
"nutritionLog": {
"interval": {
"startTime": "2026-06-16T12:00:00Z",
"endTime": "2026-06-16T12:30:00Z"
},
"food": "users/me/dataTypes/food/dataPoints/food-id",
"mealType": "LUNCH",
"serving": {
"amount": 1.0,
"foodMeasurementUnit": "users/me/dataTypes/food-measurement-unit/dataPoints/food-measurement-unit-id"
}
}
}תשובה
{
"done": true,
"response": {
"@type": "type.googleapis.com/google.devicesandservices.health.v4.DataPoint",
"name": "users/user-id/dataTypes/nutrition-log/dataPoints/data-point-id",
"dataSource": {
"recordingMethod": "UNKNOWN",
"application": {
"googleWebClientId": "google-web-client-id"
},
"platform": "GOOGLE_WEB_API"
},
"nutritionLog": {
"interval": {
"startTime": "2026-06-16T12:00:00Z",
"startUtcOffset": "0s",
"endTime": "2026-06-16T12:30:00Z",
"endUtcOffset": "0s",
"civilStartTime": {
"date": {
"year": 2026,
"month": 6,
"day": 16
},
"time": {
"hours": 12
}
},
"civilEndTime": {
"date": {
"year": 2026,
"month": 6,
"day": 16
},
"time": {
"hours": 12,
"minutes": 30
}
}
},
"energy": {
"kcal": 95
},
"energyFromFat": {
"kcal": 3
},
"totalCarbohydrate": {
"grams": 25
},
"totalFat": {
"grams": 0.3
},
"nutrients": [
{
"quantity": {
"grams": 4.4,
"userProvidedUnit": "GRAM"
},
"nutrient": "DIETARY_FIBER"
},
{
"quantity": {
"grams": 19,
"userProvidedUnit": "GRAM"
},
"nutrient": "SUGAR"
},
{
"quantity": {
"grams": 0.5,
"userProvidedUnit": "GRAM"
},
"nutrient": "PROTEIN"
}
],
"mealType": "LUNCH",
"serving": {
"amount": 1,
"foodMeasurementUnit": "users/me/dataTypes/food-measurement-unit/dataPoints/food-measurement-unit-id"
},
"food": "users/user-id/dataTypes/food/dataPoints/food-id",
"foodDisplayName": "Apple"
}
}
}מחיקת יומני תזונה
כדי למחוק רשומה אחת או יותר ביומן התזונה, שולחים בקשת POST ל-method batchDelete עם שמות המשאבים של הרשומות שרוצים להסיר.
בקשה:
POST https://health.googleapis.com/v4/users/me/dataTypes/nutrition-log/dataPoints:batchDelete
Authorization: Bearer access-token
Content-Type: application/json
{
"names": [
"users/me/dataTypes/nutrition-log/dataPoints/data-point-id"
]
}שדות ביומן התזונה
לרשימה מלאה של השדות והתיאורים, ראו NutritionLog.
כמות האנרגיה
מייצג מדידת אנרגיה, בקילו-קלוריות (kcal). פרטים נוספים זמינים במאמר EnergyQuantity.
{
"kcal": 165
}
כמות המשקל
מייצג מדידת משקל בגרמים. מידע נוסף מופיע במאמר WeightQuantity.
{
"grams": 27.3
}
כמות הרכיב התזונתי
מייצג חומר מזין ספציפי ואת הכמות הנמדדת שלו. מידע נוסף מופיע במאמר NutrientQuantity.
{
"nutrient": "PROTEIN",
"quantity": {
"grams": 31
}
}
ערכים תזונתיים
רשימה מלאה של סוגי הערכים התזונתיים הנתמכים זמינה במאמר Nutrient.
מוצגת
מייצג את פרטי המנה של רשומה ביומן התזונה. מידע נוסף מופיע במאמר Serving.
{
"amount": 1.5
}
ערכים של סוג הארוחה
כאןMealType מופיעה רשימה מלאה של סוגי הארוחות הנתמכים.
אוכל
"אוכל" הוא סוג נתונים לקריאה בלבד שמייצג פריט אוכל במסד הנתונים של האוכל.
משתמשים בפעולות list ו-get כדי לעיין במאכלים הזמינים ולאחזר את הערכים התזונתיים שלהם.
רשימת מאכלים
כדי להציג רשימה של מאכלים, שולחים בקשת GET לנקודת הקצה (endpoint) של food dataPoints:
GET https://health.googleapis.com/v4/users/me/dataTypes/food/dataPoints Authorization: Bearer access-token Accept: application/json
יחידת מידה של מזון
יחידת מידה של מזון היא סוג נתונים לקריאה בלבד שמייצג יחידות מידה שמשמשות למנות מזון (לדוגמה, "", "כף" או "חתיכה").
רשימה של יחידות המידה הזמינות
כדי להציג רשימה של יחידות המידה הזמינות:
GET https://health.googleapis.com/v4/users/me/dataTypes/food-measurement-unit/dataPoints Authorization: Bearer access-token Accept: application/json
יומן מאזן הנוזלים
יומן שתייה מייצג נוזלים שהמשתמש תיעד. בניגוד למזונות, שמתייחסים למסד נתונים של מזון ומודדים את צריכת החומרים המזינים או האנרגיה, רשומות של מאזן נוזלים עוקבות אחר הנפח הספציפי של הנוזלים שנצרכו במהלך פרק זמן נתון.
יצירת יומן שתייה
כדי ליצור רשומה ביומן של צריכת הנוזלים, שולחים בקשת POST לנקודת הקצה (endpoint) hydration-log
dataPoints. כל כמויות הנפח מומרות למיליליטרים בפורמט של ה-API.
בקשה
POST https://health.googleapis.com/v4/users/me/dataTypes/hydration-log/dataPoints
Authorization: Bearer access-token
Content-Type: application/json
{
"hydrationLog": {
"interval": {
"startTime": "2026-06-16T14:00:00Z",
"endTime": "2026-06-16T14:00:01Z"
},
"amountConsumed": {
"milliliters": 500,
"userProvidedUnit": "FLUID_OUNCE_US"
}
}
}תשובה
{
"done": true,
"response": {
"@type": "type.googleapis.com/google.devicesandservices.health.v4.DataPoint",
"name": "users/user-id/dataTypes/hydration-log/dataPoints/data-point-id",
"dataSource": {
"recordingMethod": "UNKNOWN",
"application": {
"googleWebClientId": "google-web-client-id"
},
"platform": "GOOGLE_WEB_API"
},
"hydrationLog": {
"interval": {
"startTime": "2026-06-16T14:00:00Z",
"startUtcOffset": "0s",
"endTime": "2026-06-16T14:00:01Z",
"endUtcOffset": "0s",
"civilStartTime": {
"date": {
"year": 2026,
"month": 6,
"day": 16
},
"time": {
"hours": 14
}
},
"civilEndTime": {
"date": {
"year": 2026,
"month": 6,
"day": 16
},
"time": {
"hours": 14,
"seconds": 1
}
}
},
"amountConsumed": {
"milliliters": 500,
"userProvidedUnit": "FLUID_OUNCE_US"
}
}
}
}עדכון של יומן מאזן הנוזלים
כדי לעדכן רשומה ביומן ההידרציה, שולחים בקשת PATCH לנקודת הקצה (endpoint) hydration-log
dataPoints עם המזהה של הנקודה על הגרף.
בקשה
PATCH https://health.googleapis.com/v4/users/me/dataTypes/hydration-log/dataPoints/data-point-id
Authorization: Bearer access-token
Content-Type: application/json
{
"hydrationLog": {
"interval": {
"startTime": "2026-06-16T10:00:00Z",
"endTime": "2026-06-16T10:00:01Z"
},
"amountConsumed": {
"milliliters": 500
}
}
}תשובה
{
"done": true,
"response": {
"@type": "type.googleapis.com/google.devicesandservices.health.v4.DataPoint",
"name": "users/user-id/dataTypes/hydration-log/dataPoints/data-point-id",
"dataSource": {
"recordingMethod": "UNKNOWN",
"application": {
"googleWebClientId": "google-web-client-id"
},
"platform": "GOOGLE_WEB_API"
},
"hydrationLog": {
"interval": {
"startTime": "2026-06-16T10:00:00Z",
"startUtcOffset": "0s",
"endTime": "2026-06-16T10:00:01Z",
"endUtcOffset": "0s",
"civilStartTime": {
"date": {
"year": 2026,
"month": 6,
"day": 16
},
"time": {
"hours": 10
}
},
"civilEndTime": {
"date": {
"year": 2026,
"month": 6,
"day": 16
},
"time": {
"hours": 10,
"seconds": 1
}
}
},
"amountConsumed": {
"milliliters": 500
}
}
}
}מחיקת יומני שתייה
כדי למחוק רשומה אחת או יותר ביומן ההידרציה, שולחים בקשת POST ל-method batchDelete.
בקשה
POST https://health.googleapis.com/v4/users/me/dataTypes/hydration-log/dataPoints:batchDelete
Authorization: Bearer access-token
Content-Type: application/json
{
"names": [
"users/me/dataTypes/hydration-log/dataPoints/data-point-id"
]
}תשובה
{
"done": true,
"response": {
"@type": "type.googleapis.com/google.devicesandservices.health.v4.BatchDeleteDataPointsResponse",
"dataPoints": [
{
"name": "users/user-id/dataTypes/hydration-log/dataPoints/data-point-id",
"dataSource": {
"recordingMethod": "UNKNOWN",
"application": {
"googleWebClientId": "google-web-client-id"
},
"platform": "GOOGLE_WEB_API"
},
"hydrationLog": {
"interval": {
"startTime": "2026-06-16T14:00:00Z",
"startUtcOffset": "0s",
"endTime": "2026-06-16T14:00:01Z",
"endUtcOffset": "0s",
"civilStartTime": {
"date": {
"year": 2026,
"month": 6,
"day": 16
},
"time": {
"hours": 14
}
},
"civilEndTime": {
"date": {
"year": 2026,
"month": 6,
"day": 16
},
"time": {
"hours": 14,
"seconds": 1
}
}
},
"amountConsumed": {
"milliliters": 500,
"userProvidedUnit": "FLUID_OUNCE_US"
}
}
}
]
}
}שדות ביומן מאזן הנוזלים
לרשימה מלאה של השדות והתיאורים, ראו HydrationLog.
כמות הנפח
מייצג מדידת נפח, במיליליטרים. מידע נוסף מופיע במאמר VolumeQuantity.
{
"milliliters": 250,
"userProvidedUnit": "MILLILITER"
}
ערכים של יחידות נפח
כאןVolumeUnit מופיעה רשימה מלאה של יחידות הנפח הנתמכות. הערכים הנפוצים כוללים את MILLILITER, LITER, CUP_US ו-FLUID_OUNCE_US.
הנחיות
- כדאי להשתמש במאכלים מזוהים כשאפשר. ה-API מאכלס את שדות הערכים התזונתיים באופן אוטומטי, וכך מצמצם את השגיאות ומבטיח עקביות עם מסד הנתונים של המזון.
- אי אפשר לעדכן יומני תזונה שנוצרו ממאכלים אנונימיים אחרי שהם נוצרו. אם אתם צריכים לתקן יומן אנונימי של ארוחות, מחקו אותו וצרו יומן חדש.
- בניגוד ליומני תזונה אנונימיים, רשומות ביומן צריכת הנוזלים ניתנות לשינוי באופן מלא, ואפשר לעדכן אותן אחרי היצירה באמצעות בקשת
PATCH. - כל הכמויות של רכיבי התזונה במערך
nutrientsנמדדות בגרמים. - השדות
energyו-energyFromFatמשתמשים בקילו-קלוריות (kcal) כיחידת המידה. - ה-API ממיר את כל כמויות הנוזלים למיליליטרים ושומר אותן. השדה האופציונלי
userProvidedUnitב-VolumeQuantityמשמש רק לתצוגה בצד הלקוח שגלויה למשתמשים. - בקשות HTTP
DELETEישירות לנקודות נתונים ספציפיות שלhydration-logמחזירות את הערך404 Not Found. כדי להסיר את רשומות המשאבים האלה, משתמשים ב-methodbatchDelete. - ביומני שתייה משתמשים במרווח זמן קצר, שבו
startTimeו-endTimeמייצגים את פרק הזמן שבו הנוזל נצרך.