توفّر واجهة برمجة التطبيقات Google Health API أنواع بيانات لتتبُّع تغذية المستخدم ومستوى ترطيب جسمه. تتيح لك هذه الأنواع تسجيل الوجبات، والرجوع إلى الأطعمة من قاعدة بيانات الأطعمة، وتتبُّع كميات العناصر الغذائية، وتسجيل كمية السوائل التي يتم تناولها.
أنواع البيانات المتوافقة
| نوع البيانات | العمليات المتاحة |
النطاق |
|---|---|---|
|
الطعام
|
list, get | .nutrition.readonly.nutrition.writeonly |
|
وحدة قياس الطعام
dataType:
food-measurement-unitfilter parameter: food_measurement_unit
نوع السجلّ: طعام
الأجهزة المتوافقة
|
list, get | .nutrition.readonly.nutrition.writeonly |
|
سجلّ شُرب الماء
|
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للإشارة إلى مورد طعام حالي. يتم ملء الحقولnutrientsوenergyوenergyFromFatوtotalCarbohydrateوtotalFatوfoodDisplayNameتلقائيًا من الطعام المُشار إليه. هذه هي الطريقة المفضّلة.طعام مجهول الهوية: اضبط الحقل
foodDisplayNameيدويًا وقدِّم قيمًا لـnutrientsوenergyوenergyFromFatوtotalCarbohydrateوtotalFat. لا يمكن تعديل سجلّات التغذية التي تم إنشاؤها من طعام مجهول الهوية بعد إنشائها.
أنشِئ سجلّ تغذية يتضمّن طعامًا مجهولاً
لإنشاء إدخال في سجلّ التغذية، أرسِل طلب POST إلى نقطة النهاية nutrition-log
dataPoints.
طلب
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 للإشارة إلى
مورد الطعام. تُملأ واجهة برمجة التطبيقات حقول القيمة الغذائية تلقائيًا.
طلب
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 إلى طريقة 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 إلى نقطة النهاية 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
سجلّ شُرب الماء والسوائل
يمثّل سجلّ Hydration Log السوائل التي سجّلها المستخدم. على عكس الأطعمة التي تشير إلى قاعدة بيانات الأطعمة وتقيس كمية العناصر الغذائية أو الطاقة التي يتم تناولها، فإنّ إدخالات الترطيب تتتبّع الحجم المحدّد للسوائل المستهلكة خلال فترة زمنية معيّنة.
إنشاء سجلّ لترطيب الجسم
لإنشاء إدخال في سجلّ الترطيب، أرسِل طلب POST إلى نقطة النهاية hydration-log
dataPoints. يتم تحويل جميع كميات الحجم إلى ملليلتر في
تنسيق واجهة برمجة التطبيقات.
طلب
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 إلى نقطة النهاية 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 إلى طريقة 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.
الإرشادات
- استخدِم الطعام الذي تم التعرّف عليه إن أمكن. تعبئ واجهة برمجة التطبيقات الحقول الغذائية تلقائيًا، مما يقلل من الأخطاء ويضمن الاتساق مع قاعدة بيانات الأغذية.
- لا يمكن تعديل سجلّات التغذية التي تم إنشاؤها من طعام مجهول بعد إنشائها. إذا كنت بحاجة إلى تصحيح سجلّ طعام مجهول الهوية، احذِفه وأنشئ سجلّاً جديدًا.
- على عكس سجلّات التغذية الغذائية المجهولة المصدر، فإنّ إدخالات سجلّ الترطيب قابلة للتغيير بالكامل ويمكن تعديلها بعد إنشائها باستخدام طلب
PATCH. - تستخدم جميع كميات العناصر الغذائية في مصفوفة
nutrientsالغرام كوحدة قياس. - يستخدم الحقلان
energyوenergyFromFatالكيلو كالوري (kcal) كوحدة قياس. - تحوّل واجهة برمجة التطبيقات جميع كميات السوائل وتخزّنها بالملليلتر. يُستخدم حقل
userProvidedUnitالاختياري فيVolumeQuantityفقط للعرض الموجّه للمستخدمين من جهة العميل. - تؤدي طلبات HTTP
DELETEالمباشرة إلى نقاط بياناتhydration-logالفردية إلى عرض404 Not Found. استخدِم طريقةbatchDeleteلإزالة إدخالات الموارد هذه. - تستخدم سجلّات شرب الماء فاصلاً زمنيًا قصيرًا حيث يمثّل
startTimeوendTimeالفترة الزمنية التي تم فيها استهلاك السائل.