Integracao Garmin
vitalera e o unico parceiro Garmin Health focado exclusivamente em dados de saude e de grau desportivo. Combinamos a API oficial Garmin Health e o Garmin Connect Mobile SDK para fornecer dados brutos, completos e em tempo real -- sem as lacunas dos agregadores genericos.
Porque Garmin com vitalera
As equipas que dependem do Health Connect ou de agregadores genericos de wearables para extrair dados Garmin costumam encontrar as mesmas limitacoes:
- As metricas de distancia e GPS sao arredondadas ou subamostradas, por isso a atividade que ve na sua plataforma nao corresponde ao que o atleta efetivamente registou no relogio.
- Os treinos chegam incompletos -- voltas em falta, lacunas no traco de frequencia cardiaca ou estrutura de intervalos removida.
- As metricas avancadas simplesmente nao sao expostas: cadencia, zonas de frequencia cardiaca, SpO2, potencia de corrida, carga de treino, stress, Body Battery e outras fontes de dados nativas da Garmin ficam fora de alcance.
- Sem streaming em direto durante uma atividade -- so recebe a sessao depois de terminada e sincronizada.
- Latencia de sincronizacao de varios minutos a horas, o que torna impossiveis os alertas clinicos em tempo real ou a monitorizacao em corrida.
vitalera conecta-se diretamente a Garmin Health API (servidor a servidor) e ao Garmin Connect Mobile SDK (no dispositivo), proporcionando-lhe a mesma fidelidade de dados que a Garmin utiliza internamente.
API vs SDK vs Health Connect
Recomendado: Garmin Health API via vitalera -- a forma mais rapida e escalavel de conectar dispositivos Garmin para 99% dos casos de uso (plataformas desportivas, RPM, coaching, investigacao). O SDK so e necessario para streaming ao vivo com latencia inferior a um segundo.
| Capacidade | Health Connect | Garmin Health API (via vitalera) | Garmin SDK (via vitalera) |
|---|---|---|---|
| Recomendado para | — | Escolha predefinida | Apenas broadcast / TV em direto |
| Completude do treino | Parcial, lacunas comuns | Sessao completa + voltas | Sessao completa + voltas |
| Precisao da distancia | Arredondada / aproximada | Bruta, precisao de 2 decimais | Bruta, precisao de 2 decimais |
| Zonas de frequencia cardiaca | Nao | Sim | Sim |
| Cadencia e potencia de corrida | Nao | Sim | Sim |
| SpO2 | Nao | Diario + sob pedido | Stream continuo |
| Fases do sono | Limitado | Completo (leve / profundo / REM) | Completo |
| Preenchimento historico | Dias | Ate 90 dias | Apenas em direto |
| UX de emparelhamento | Manual por dispositivo | OAuth unico | Requer instalacao da app |
| Tempo de integracao | Semanas | ~15 minutos | 1-2 semanas |
| Escala para grandes bases de utilizadores | Nao | Sim, testado em producao | Baseado em eventos |
| Servidor a servidor (sem app) | Nao | Sim | Nao (requer SDK movel) |
| Streaming em tempo real (sub-segundo) | Nao | Nao | Sim |
Quando escolher o que
- Garmin Health API (via vitalera) -- 99% dos casos. Plataformas desportivas, RPM, apps de coaching, investigacao, seguros, bem-estar corporativo. Servidor a servidor, sem SDK movel necessario, dados historicos completos, OAuth unico, escala para grandes bases de utilizadores.
- Garmin SDK (via vitalera) -- Apenas quando necessita de streaming ao vivo com latencia inferior a um segundo para sobreposicoes de broadcast ou alertas de emergencia durante um evento ao vivo. Requer uma app movel.
- Health Connect -- Nao recomendado para qualquer caso de uso clinico ou de grau desportivo.
Como funciona a vinculacao de utilizadores
- O utilizador toca em Connect Garmin na sua app.
- vitalera gere o fluxo OAuth e armazena a vinculacao associada ao seu
user_id. - A partir desse momento, cada treino, sessao de sono e resumo diario e enviado para o seu webhook e disponibilizado via API.
Sem emparelhamento por dispositivo. Sem sincronizacao manual. Sem "por favor abra a app Garmin Connect primeiro."
Exemplo: resposta de um treino de corrida
{
"user_id": "athlete_8421",
"source": "garmin",
"activity_id": "gar_2026_04_10_0731",
"type": "running",
"start_time": "2026-04-10T07:31:04Z",
"duration_seconds": 3284,
"distance_meters": 10043.22,
"calories_kcal": 612,
"avg_heart_rate_bpm": 154,
"max_heart_rate_bpm": 181,
"hr_zones": {
"z1": 124,
"z2": 612,
"z3": 1890,
"z4": 540,
"z5": 118
},
"avg_cadence_spm": 172,
"avg_pace_sec_per_km": 327,
"elevation_gain_m": 84,
"laps": [
{ "lap": 1, "distance_m": 1000, "duration_s": 318, "avg_hr": 148 },
{ "lap": 2, "distance_m": 1000, "duration_s": 322, "avg_hr": 152 }
],
"device": { "model": "Garmin Forerunner 965", "firmware": "22.19" }
}
distance_meterse 10 043.22 -- bruto do relogio, nao um valor arredondado ou subamostrado.
Streaming em tempo real para eventos ao vivo
vitalera alimenta a telemetria ao vivo por detras das plataformas de eventos desportivos, transmitindo a frequencia cardiaca e SpO2 dos corredores dos relogios Garmin para os feeds de broadcast em menos de um segundo.
vitalera.stream.subscribe({
user_id: 'athlete_8421',
metrics: ['heart_rate', 'spo2', 'cadence', 'pace'],
onData: (sample) => {
// sample = { ts, hr: 162, spo2: 96, cadence: 174, pace: 315 }
broadcastOverlay.update(sample);
},
});
Testado em producao a grande escala em implementacoes de evento unico com grandes pelotes de atletas simultaneos.
Sono e bem-estar diario
Alem dos treinos, a mesma integracao fornece:
- Sessoes de sono com fases (leve, profundo, REM, acordado)
- Frequencia cardiaca em repouso e HRV (RMSSD)
- Resumos diarios -- passos, calorias, indice de stress, Body Battery
- Pulse Ox medias noturnas
Tudo normalizado para recursos FHIR R5 Observation -- consulte Recursos FHIR.
Casos de uso
| Segmento | Exemplo |
|---|---|
| Plataformas de eventos desportivos | Sincronize atletas, corredores, triatletas ou ciclistas a grande escala. Classificacoes ao vivo, analises pos-corrida, sobreposicoes de broadcast. |
| Treino conectado e coaching | Dados brutos de treinos alimentam planos de treino personalizados sem perda de fidelidade. |
| Cardiologia clinica e reabilitacao | O mesmo pipeline, ja certificado para RPM (marcacao CE MDR, RGPD, ISO 27001). |
| Bem-estar corporativo | Agregue metricas de saude Garmin para programas de bem-estar de funcionarios com partilha de dados baseada em consentimento. |
| Seguros e risco | Dados continuos de frequencia cardiaca, sono e atividade para modelos de subscricao e programas de incentivos. |
| Investigacao e ensaios clinicos | Recolha longitudinal de dados de wearables com exportacao em formato FHIR para coortes de investigacao. |
Comece em 15 minutos
- Solicite credenciais sandbox em info@vitalera.io.
- Receba a sua API key e utilizadores de teste ja vinculados a contas sandbox Garmin.
- Chame
GET /v2/activities?user_id=demo_runner_01e inspecione o JSON acima com dados reais. - Subscreva ao webhook
activity.created. - Passe a producao.
Nao e necessario NDA para explorar o sandbox. O NDA so se aplica quando acede a dados Garmin de producao (requisito do programa Garmin Health Partner).
Conformidade e propriedade dos dados
| Certificacoes | CE Mark MDR, ISO 27001, ISO 13485 |
| Privacidade | Conforme com RGPD, pronto para HIPAA, ENS Alto |
| Residencia dos dados | UE por defeito (AWS eu-west-1). Regiao EUA disponivel. |
| Propriedade dos dados | Os dados dos seus utilizadores pertencem-lhe. vitalera e o subcontratante, nunca o responsavel pelo tratamento. |
Proximos passos
- Dispositivos Suportados -- Lista completa de compatibilidade de dispositivos
- Webhooks -- Subscricoes de eventos e formato de payload
- Recursos FHIR -- Modelo de dados Observation
- Contacte vendas para uma demonstracao ao vivo