Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

197
Vistas
How to fetch Sleep data from Google's REST api?

I'm trying to fetch my sleep data from Google-Fit.

When I make the following request -

const { data: sleepData } = await axios({
        method: 'POST',
        url: 'https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate',
        headers: {
          Authorization: `Bearer ${accessToken}`,
        },
        data: {
          aggregateBy: [{ dataTypeName: 'com.google.sleep.segment' }],
          bucketByTime: { durationMillis: 86400000 },
          startTimeMillis: startTimeQuery, // day start time in UNIX
          endTimeMillis: endTimeQuery, // day end time in UNIX
        },
      });

I'm getting the following data with empty points -

      {
        "bucket": [
          {
            "startTimeMillis": "1651115600000",
            "endTimeMillis": "1651202000000",
            "dataset": [
              {
                "dataSourceId": "derived:com.google.sleep.segment:com.google.android.gms:merged",
                "point": []
              }
            ]
          },
          {
            "startTimeMillis": "1651202000000",
            "endTimeMillis": "1651288400000",
            "dataset": [
              {
                "dataSourceId": "derived:com.google.sleep.segment:com.google.android.gms:merged",
                "point": []
              }
            ]
          },
       ]}

Has anyone run into similar problems?

I'm using Google-Fit on an Android Device.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Hey here is a working example from Google Fitness REST API with my account which is connected to my sleep tracking device.

var axios = require('axios');
var data = JSON.stringify({
  "aggregateBy": [
    {
      "dataTypeName": "com.google.sleep.segment"
    }
  ],
  "endTimeMillis": {endTimeMillis},
  "startTimeMillis": {startTimeMillis}
});

var config = {
  method: 'post',
  url: 'https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate',
  headers: { 
    'Authorization': 'Bearer {AccessToken}', 
    'Content-Type': 'application/json'
  },
  data : data
};

axios(config)
.then(function (response) {
  console.log(JSON.stringify(response.data));
})
.catch(function (error) {
  console.log(error);
});

The Only difference is to remove the bucketByTime so that Fitness API will send the segment points as small as possible.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda