Tipos de dados de saúde da mulher

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

Tabela: tipos de dados de saúde da mulher da API Google Health
Tipo de dado Operações
disponíveis
Escopo
Período menstrual
dataType: menstrual-period
filter parameter: menstrual_period
Tipo de registro: intervalo
criar, atualizar, batchDelete .reproductive_health.writeonly
Estados de espírito
dataType: moods
filter parameter: moods
Tipo de registro: amostra
criar, atualizar, batchDelete .mindfulness.writeonly
Teste de ovulação
dataType: ovulation-test
filter parameter: ovulation_test
Tipo de registro: amostra
criar, atualizar, batchDelete .reproductive_health.writeonly
Sintomas
dataType: symptoms
filter parameter: symptoms
Tipo de registro: amostra
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"
  ]
}