توفّر Google Health API أنواع بيانات لتتبُّع كمية الطعام التي يتناولها المستخدم والمعلومات الغذائية. تتيح لك هذه الأنواع تسجيل الوجبات والرجوع إلى الأطعمة من قاعدة بيانات الأطعمة وتتبُّع كميات العناصر الغذائية.
أنواع البيانات المتوافقة
نوع البياناتdataType
filter المَعلمة |
نوع السجلّ |
العمليات المتاحة |
النطاق | إتاحة استخدام ويب هوك |
إتاحة استخدام أصفار حقيقية |
|---|---|---|---|---|---|
الطعام
foodfood
|
طعام | قائمة، الحصول على | .nutrition.readonly.nutrition.writeonly |
||
وحدة قياس الطعام
food-measurement-unitfood_measurement_unit
|
طعام | قائمة، الحصول على | .nutrition.readonly.nutrition.writeonly |
||
سجلّ التغذية
nutrition-lognutrition_log
|
عيّنة | list, get, reconcile, rollup, dailyRollup, create, update, batchDelete | .nutrition.readonly.nutrition.writeonly |
سجل التغذية
يمثّل "سجلّ التغذية" الطعام الذي سجّله المستخدم. تتوفّر طريقتان لإنشاء سجلّ تغذية، حسب نوع الطعام:
الطعام الذي تم تحديده: اضبط الحقل
foodللإشارة إلى مرجع مورد طعام حالي. يتم ملء الحقولnutrientsوenergyوenergyFromFatوtotalCarbohydrateوtotalFatوfoodDisplayNameتلقائيًا من الطعام المشار إليه. وهذه هي الطريقة المفضّلة.الطعام المجهول: اضبط الحقل
foodDisplayNameيدويًا وقدِّم قيمًا للحقولnutrientsوenergyوenergyFromFatوtotalCarbohydrateوtotalFat. لا يمكن تعديل سجلّات التغذية التي تم إنشاؤها من أطعمة مجهولة الهوية بعد إنشائها.
إنشاء سجلّ تغذية يتضمّن أطعمة مجهولة المصدر
لإنشاء إدخال في سجلّ التغذية، أرسِل طلب POST إلى نقطة نهاية 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. تعبئة حقول المعلومات الغذائية تلقائيًا من خلال واجهة برمجة التطبيقات
الطلب:
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
}
}
}حذف سجلّات التغذية
لحذف إدخال واحد أو أكثر من سجلّ التغذية، أرسِل طلب POST إلى نقطة النهاية 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
للاطّلاع على قائمة كاملة بالحقول والأوصاف، يُرجى الرجوع إلى المستندات المرجعية.
EnergyQuantity
تمثّل هذه السمة قياسًا للطاقة، ويتم قياسها بالكيلو كالوري (kcal). لمزيد من التفاصيل، يُرجى الاطّلاع على EnergyQuantity.
{
"kcal": 165
}
WeightQuantity
تمثّل هذه السمة قياسًا للوزن، ويتم قياسه بالغرام. لمزيد من التفاصيل، يُرجى الاطّلاع على WeightQuantity.
{
"grams": 27.3
}
NutrientQuantity
تمثّل هذه السمة عنصرًا غذائيًا محدّدًا وكميته المقاسة. لمزيد من التفاصيل، يُرجى الاطّلاع على NutrientQuantity.
{
"nutrient": "PROTEIN",
"quantity": {
"grams": 31
}
}
قيم العناصر الغذائية
للحصول على قائمة كاملة بأنواع العناصر الغذائية المتوافقة، راجِع العناصر الغذائية.
يتم العرض
تمثّل هذه السمة معلومات الحصة الغذائية لإدخال في سجلّ التغذية. لمزيد من التفاصيل، يُرجى الاطّلاع على العرض.
{
"amount": 1.5
}
قيم MealType
للاطّلاع على قائمة كاملة بأنواع الوجبات المتوافقة، راجِع MealType.
طعام
الطعام هو نوع بيانات للقراءة فقط يمثّل طبقًا في قاعدة بيانات الطعام.
استخدِم العمليتَين list وget لتصفُّح الأطعمة المتاحة واسترداد معلوماتها الغذائية.
قائمة الأطعمة
لعرض قائمة بالأطعمة، أرسِل طلب GET إلى نقطة نهاية food لنقاط البيانات:
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
الإرشادات
- استخدِم الأطعمة المحدّدة عندما يكون ذلك ممكنًا. تعبئ واجهة برمجة التطبيقات حقول المعلومات الغذائية تلقائيًا، ما يقلّل من الأخطاء ويضمن الاتساق مع قاعدة بيانات الأطعمة.
- لا يمكن تعديل سجلّات التغذية التي تم إنشاؤها من أطعمة مجهولة بعد إنشائها. إذا كنت بحاجة إلى تصحيح سجلّ طعام مجهول الهوية، احذفه وأنشئ سجلًّا جديدًا.
- تستخدم جميع كميات العناصر الغذائية في مصفوفة
nutrientsالغرامات كوحدة قياس. - يستخدم الحقلان
energyوenergyFromFatالكيلو سعر حراري (kcal) كوحدة قياس.