Google Health API 提供多種資料類型,可追蹤生殖健康、症狀和情緒。你可以記錄經期、排卵檢測結果,以及相關的身體和情緒狀態。
支援的資料類型
| 資料類型 | 可用的 作業 |
範圍 |
|---|---|---|
|
經期
|
create、update、batchDelete | .reproductive_health.writeonly |
|
情緒
|
create、update、batchDelete | .mindfulness.writeonly |
|
排卵檢測
|
create、update、batchDelete | .reproductive_health.writeonly |
|
症狀
|
create、update、batchDelete | .logged_symptoms.writeonly |
經期
月經週期是指使用者記錄的週期間隔。如需欄位和說明完整清單,請參閱 MenstrualPeriod。
記錄期間指南
- 必須提供結束日期:所有週期記錄都必須包含結束日期或時間。結束日期不得為空值。
- 處理進行中的週期:如果在建立記錄時無法提供結束日期 (例如週期仍在進行中),請將結束日期設為與開始日期相同。每天更新記錄,將結束日期設為當天日期,直到該期間結束並確認最終結束日期為止。
- 已確認的經期:所有經期記錄都會視為已確認的經期。
建立經期
如要建立月經週期項目,請將 POST 要求傳送至menstrual-period資料點端點。回應中包含 name 欄位,內含 data-point-id,可用於批次刪除或更新 (Patch) 要求。
要求
POST https://health.googleapis.com/v4/users/me/dataTypes/menstrual-period/dataPoints
Authorization: Bearer access-token
Content-Type: application/json
{
"menstrualPeriod": {
"interval": {
"startTime": "2026-07-01T08:00:00Z",
"endTime": "2026-07-05T20:00:00Z"
},
"notes": "Regular flow reported."
}
}回應
{
"done": true,
"response": {
"@type": "type.googleapis.com/google.devicesandservices.health.v4.DataPoint",
"name": "users/user-id/dataTypes/menstrual-period/dataPoints/data-point-id",
"menstrualPeriod": {
"interval": {
"startTime": "2026-07-01T08:00:00Z",
"startUtcOffset": "0s",
"endTime": "2026-07-05T20:00:00Z",
"endUtcOffset": "0s",
"civilStartTime": {
"date": { "year": 2026, "month": 7, "day": 1 },
"time": { "hours": 8 }
},
"civilEndTime": {
"date": { "year": 2026, "month": 7, "day": 5 },
"time": { "hours": 20 }
}
},
"notes": "Regular flow reported."
}
}
}排卵檢測
記錄排卵檢測觀察結果。如需欄位和說明完整清單,請參閱 OvulationTest。
建立排卵檢測資料
如要記錄排卵測試結果,請將 POST 要求傳送至 ovulation-test 資料點端點。回應中包含 name 欄位,內含 data-point-id,可用於批次刪除或更新 (PATCH) 要求。
要求
POST https://health.googleapis.com/v4/users/me/dataTypes/ovulation-test/dataPoints
Authorization: Bearer access-token
Content-Type: application/json
{
"ovulationTest": {
"sampleTime": {
"physicalTime": "2026-07-14T07:30:00Z"
},
"result": "LUTEINIZING_HORMONE_SURGE"
}
}回應
{
"done": true,
"response": {
"@type": "type.googleapis.com/google.devicesandservices.health.v4.DataPoint",
"name": "users/user-id/dataTypes/ovulation-test/dataPoints/data-point-id",
"ovulationTest": {
"sampleTime": {
"physicalTime": "2026-07-14T07:30:00Z",
"utcOffset": "0s",
"civilTime": {
"date": { "year": 2026, "month": 7, "day": 14 },
"time": { "hours": 7, "minutes": 30 }
}
},
"result": "LUTEINIZING_HORMONE_SURGE"
}
}
}症狀
記錄特定時間戳記的身體症狀。如需欄位和說明完整清單,請參閱 Symptoms。
建立症狀記錄
如要記錄身體症狀,請將 POST 要求傳送至 symptoms 資料點端點。回應中包含 name 欄位,內含 data-point-id,可用於批次刪除或更新 (Patch) 要求。
要求
POST https://health.googleapis.com/v4/users/me/dataTypes/symptoms/dataPoints
Authorization: Bearer access-token
Content-Type: application/json
{
"symptoms": {
"sampleTime": {
"physicalTime": "2026-07-02T19:00:00Z"
},
"symptoms": [ "CRAMPS", "BLOATED", "FATIGUE" ]
}
}回應
{
"done": true,
"response": {
"@type": "type.googleapis.com/google.devicesandservices.health.v4.DataPoint",
"name": "users/user-id/dataTypes/symptoms/dataPoints/data-point-id",
"symptoms": {
"sampleTime": {
"physicalTime": "2026-07-02T19:00:00Z",
"utcOffset": "0s",
"civilTime": {
"date": { "year": 2026, "month": 7, "day": 2 },
"time": { "hours": 19 }
}
},
"symptoms": [ "CRAMPS", "BLOATED", "FATIGUE" ]
}
}
}心情
記錄特定時間戳記的情緒狀態和效價。如需欄位和說明完整清單,請參閱 Moods。
建立心情記錄
如要記錄情緒狀態,請將 POST 要求傳送至 moods 資料點端點。回應中包含 name 欄位,內含 data-point-id,可用於批次刪除或更新 (Patch) 要求。
要求
POST https://health.googleapis.com/v4/users/me/dataTypes/moods/dataPoints
Authorization: Bearer access-token
Content-Type: application/json
{
"moods": {
"sampleTime": {
"physicalTime": "2026-07-02T21:00:00Z"
},
"moods": [ "CALM", "CONTENT" ],
"valences": [ "PLEASANT" ]
}
}回應
{
"done": true,
"response": {
"@type": "type.googleapis.com/google.devicesandservices.health.v4.DataPoint",
"name": "users/user-id/dataTypes/moods/dataPoints/data-point-id",
"moods": {
"sampleTime": {
"physicalTime": "2026-07-02T21:00:00Z",
"utcOffset": "0s",
"civilTime": {
"date": { "year": 2026, "month": 7, "day": 2 },
"time": { "hours": 21 }
}
},
"moods": [ "CALM", "CONTENT" ],
"valences": [ "PLEASANT" ]
}
}
}批次刪除
如要刪除一或多個資料點,請將 POST 要求傳送至 batchDelete 端點,並提供要移除項目的資源名稱。
POST https://health.googleapis.com/v4/users/me/dataTypes/data-type-name/dataPoints:batchDelete
Authorization: Bearer access-token
Content-Type: application/json
{
"names": [
"users/me/dataTypes/data-type/dataPoints/data-point-id"
]
}範例:刪除多個資料點
如要在單一要求中刪除多個資料點,請在 names 陣列中加入這些資料點的資源名稱。
POST https://health.googleapis.com/v4/users/me/dataTypes/symptoms/dataPoints:batchDelete
Authorization: Bearer access-token
Content-Type: application/json
{
"names": [
"users/user-id/dataTypes/symptoms/dataPoints/symptom-id-1",
"users/user-id/dataTypes/symptoms/dataPoints/symptom-id-2"
]
}