# API de datos longitudinales del paciente

> El historial de un paciente a lo largo del tiempo proveniente de clínicas, laboratorios, aplicaciones y dispositivos: lo que un registro longitudinal necesita y cuatro formas de leerlo: línea de tiempo, $everything, IPS y contexto de IA.

Source: https://developers.anpheros.com/es/guides/longitudinal-patient-data-api

**Una API de datos longitudinales del paciente devuelve el historial de salud de una persona a lo largo del tiempo —diagnósticos, medicamentos, resultados de laboratorio, signos vitales, vacunas y visitas de todas las fuentes— como un único registro ordenado en lugar de documentos separados por proveedor.** Anpheros mantiene ese historial como un único registro HL7 FHIR R4 por paciente, escrito por clínicas, laboratorios, aplicaciones y dispositivos, conservando cada versión y cada autor. Los desarrolladores lo leen de cuatro maneras: una línea de tiempo cronológica, el registro FHIR completo con `Patient/$everything`, un Resumen Internacional del Paciente (IPS) o un contexto compacto para modelos de IA.

<!-- visual:longitudinal-sources -->

## Lo que "longitudinal" requiere

Una lista de resultados aún no es un registro longitudinal. Para que una aplicación confíe en un historial que abarca años y proveedores, cada entrada debe contener:

| Requisito | Por qué es importante | Cómo lo almacena Anpheros |
|---|---|---|
| Un significado codificado | Los valores de diferentes laboratorios deben ser comparables | LOINC para resultados, ICD-10 para condiciones, ATC para medicamentos |
| Una fecha clínica | Ordenar por cuándo ocurrió, no cuándo se cargó | fechas `effective`, `onset`, `occurrence` en cada recurso |
| El autor | El diagnóstico de un médico y la nota de un paciente no son iguales | Provenance en cada escritura: tipo de autor, persona, organización, sistema de origen |
| Cada versión | Las correcciones no deben borrar lo que se sabía antes | Historial de versiones en cada recurso (`_history`) |
| Consentimiento | Otras aplicaciones ven el historial solo si la persona está de acuerdo | Concesiones de OAuth con ámbitos, caducidad y un registro de acceso |

## Un registro, múltiples escritores

<!-- visual:longitudinal-timeline -->

## Cuatro formas de leer el historial

| Necesidad | Endpoint | Lo que obtienes |
|---|---|---|
| Un feed cronológico para una pantalla | `GET /v1/patients/{id}/timeline` | Elementos de ocho tipos (observation, condition, medication, document, encounter, appointment, immunization, episode) con fecha, título, resumen y la referencia FHIR; filtrar con `from`, `to`, `types` |
| El registro completo como FHIR | `GET /fhir/R4/Patient/{id}/$everything` | Un Bundle de searchset; se admiten `_since`, `_type`, `_count` y `_offset` |
| Un resumen clínico compartible | `GET /fhir/R4/Patient/{id}/$summary` | Un documento de International Patient Summary (IPS) |
| Entrada para un modelo de IA | `POST /v1/context` | Secciones dentro de un presupuesto de tokens, cada hecho etiquetado con su fuente |

La línea de tiempo con el SDK de TypeScript:

```ts
import { Anpheros, apiKey } from '@anpheros/sdk';

const anpheros = new Anpheros({ auth: apiKey(process.env.ANPHEROS_KEY!) });   // a sandbox key, sk_test_…
const { data: patients } = await anpheros.patients.list();
const page = await anpheros.timeline.list(patients[0].id, {
  from: '2025-01-01',
  types: 'condition,medication,observation',
  limit: 50,
});
for (const item of page.data) console.log(item.date, item.type, item.title);
```

Y el mismo registro como FHIR, limitado a lo que cambió desde una fecha:

```bash
curl -H "Authorization: Bearer $ANPHEROS_KEY" \
  "https://platform.anpheros.com/fhir/R4/Patient/$PATIENT/\$everything?_since=2026-01-01&_type=Observation,Condition"
```

## Mantener tu copia sincronizada

Si tu aplicación mantiene su propia vista del historial, suscríbete a los webhooks `resource.created`, `resource.updated` y `resource.deleted`. Estos también se activan cuando otro proyecto escribe en un registro al que tienes acceso, con `data.external: true` y el escritor en `data.source`, para que los datos de otras clínicas lleguen a ti sin necesidad de sondeos.

## Límites a tener en cuenta

- El registro contiene lo que se escribió en él. Anpheros no recupera el historial de hospitales o redes nacionales por sí solo; las clínicas, laboratorios, aplicaciones y la persona lo escriben.
- Se almacenan 26 tipos de recursos FHIR R4. Los recursos de facturación como Claim y ExplanationOfBenefit no se almacenan.
- Otras aplicaciones leen el historial de una persona solo con el consentimiento de esa persona; la clave propia de un proyecto ve los pacientes que creó.

## Preguntas frecuentes

### ¿Qué son los datos longitudinales del paciente?
La información de salud de una persona recopilada a lo largo del tiempo y en diferentes entornos de atención —diagnósticos, medicamentos, resultados, signos vitales, vacunas y visitas— se conserva para que pueda leerse como un historial continuo.

### ¿Qué API proporciona una vista cronológica del registro de un paciente?
En Anpheros, `GET /v1/patients/{id}/timeline` devuelve entradas de ocho tipos de recursos en orden de fecha, con paginación y filtros de fecha y tipo. Para los datos FHIR completos, utilice `Patient/$everything`.

### ¿El historial se almacena en un formato estándar?
Sí. Cada entrada es un recurso HL7 FHIR R4 con códigos estándar (LOINC, ICD-10, ATC, CVX, UCUM), y el resumen es un Resumen Internacional del Paciente (IPS).

### ¿Cómo sé quién escribió cada entrada?
Cada escritura crea un recurso Provenance con el tipo de autor (paciente, profesional, dispositivo, importación o IA), la persona, la organización y el sistema de origen.

### ¿Puedo probar con datos longitudinales realistas?
Sí. Cada proyecto sandbox comienza con 30 pacientes sintéticos con aproximadamente seis meses de condiciones, medicamentos, resultados de laboratorio y signos vitales.

<!-- visual:cta-longitudinal -->

## Relacionado

- [Aplicación de registro de salud personal (PHR) con FHIR](https://developers.anpheros.com/es/guides/personal-health-record-app): una línea de tiempo en una aplicación real
- [Procedencia de datos médicos explicada](https://developers.anpheros.com/es/guides/medical-data-provenance)
- [Plataforma de consentimiento del paciente para aplicaciones de salud](https://developers.anpheros.com/es/guides/patient-consent-platform)
- [Cómo almacenar registros médicos usando FHIR R4](https://developers.anpheros.com/es/guides/store-medical-records-fhir)
- [Agentes de IA y datos médicos](https://developers.anpheros.com/es/guides/ai-agents-medical-data): el endpoint de contexto
- [Webhooks](https://developers.anpheros.com/es/guides/webhooks)
