A API Google Health fornece tipos de dados para rastrear a saúde reprodutiva, os sintomas e os estados de espírito. Esses tipos permitem registrar períodos menstruais, resultados de testes de ovulação e estados físicos e emocionais associados.
Tipos de dados compatíveis
| Tipo de dado | Operações disponíveis |
Escopo |
|---|---|---|
|
Período menstrual
dataType:
menstrual-periodfilter parameter: menstrual_period
Tipo de registro: intervalo
|
criar, atualizar, batchDelete | .reproductive_health.writeonly |
|
Estados de espírito
|
criar, atualizar, batchDelete | .mindfulness.writeonly |
|
Teste de ovulação
dataType:
ovulation-testfilter parameter: ovulation_test
Tipo de registro: amostra
|
criar, atualizar, batchDelete | .reproductive_health.writeonly |
|
Sintomas
|
criar, atualizar, batchDelete | .logged_symptoms.writeonly |
Período menstrual
Um período menstrual representa um intervalo de tempo registrado por um usuário. Para uma lista completa
de campos e descrições, consulte
MenstrualPeriod.
Diretrizes para registrar períodos
- As datas de término são obrigatórias: todos os registros de período precisam incluir uma data ou hora de término. As datas de término nunca podem ser nulas.
- Como lidar com períodos em andamento: se você não puder fornecer uma data de término quando o registro for criado (por exemplo, se o período estiver em andamento), defina a data de término para corresponder à data de início. Atualize o registro diariamente, definindo a data de término como a data atual, até que o período termine e a data de término final seja confirmada.
- Períodos confirmados: todos os registros de período são tratados como períodos confirmados.
Criar um período menstrual
Para criar uma entrada de período menstrual, envie uma solicitação POST para o endpoint de pontos de dados menstrual-period. A resposta inclui o campo name
contendo o data-point-id, que pode ser usado em uma
solicitação de exclusão em lote ou
atualização (patch).
Solicitação
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."
}
}Resposta
{
"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."
}
}
}Teste de ovulação
Registra uma observação de teste de ovulação. Para uma lista completa de campos e
descrições, consulte
OvulationTest.
Criar um teste de ovulação
Para registrar um resultado de teste de ovulação, envie uma solicitação POST para o endpoint de pontos de dados ovulation-test. A resposta inclui o name campo que contém o
data-point-id, que pode ser usado em uma exclusão em lote ou
atualização (patch) solicitação.
Solicitação
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"
}
}Resposta
{
"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"
}
}
}Sintomas
Registra sintomas físicos sentidos em um determinado carimbo de data/hora. Para uma lista completa
de campos e descrições, consulte
Symptoms.
Criar um registro de sintomas
Para registrar sintomas físicos, envie uma solicitação POST para o endpoint de pontos de dados symptoms. A resposta inclui o campo name que contém o data-point-id,
que pode ser usado em uma solicitação de exclusão em lote ou
atualização (patch).
Solicitação
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" ]
}
}Resposta
{
"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" ]
}
}
}Estados de espírito
Registra estados emocionais e valências em um determinado carimbo de data/hora. Para uma lista completa
de campos e descrições, consulte
Moods.
Criar um registro de estado de espírito
Para registrar estados emocionais, envie uma solicitação POST para o endpoint de pontos de dados moods. A resposta inclui o campo name que contém o data-point-id,
que pode ser usado em uma solicitação de exclusão em lote ou
atualização (patch).
Solicitação
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" ]
}
}Resposta
{
"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" ]
}
}
}Exclusão em lote
Para excluir um ou mais pontos de dados, envie uma solicitação POST para o endpoint batchDelete com os nomes de recursos das entradas a serem removidas.
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"
]
}Exemplo: excluir vários pontos de dados
Para excluir vários pontos de dados em uma única solicitação, inclua os nomes de recursos deles na matriz 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"
]
}