| Method | Endpoint | Description |
|---|---|---|
| POST | /api/ingest/apple | Ingest Apple HealthKit data |
| POST | /api/ingest/google | Ingest Google Health Connect data |
| POST | /api/ingest/fitbit | Ingest Fitbit data |
| POST | /api/ingest/generic | Ingest normalized data (any source) |
| GET | /api/observations | Query stored FHIR Observations |
| GET | /api/sync/history | View sync history |
| GET | /fhir/metadata | FHIR CapabilityStatement |
| GET | /fhir/Patient/{id} | Read FHIR Patient |
| GET | /fhir/Observation/{id} | Read FHIR Observation |
| GET | /fhir/Device/{id} | Read FHIR Device |
| POST | /fhir/validate | Validate a FHIR resource |
| POST | /auth/token | Get JWT auth token |
POST /api/ingest/generic
Content-Type: application/json
X-Api-Key: your-api-key
{
"source": "apple_healthkit",
"patient_info": {
"given_name": "John",
"family_name": "Doe",
"birth_date": "1985-06-15",
"gender": "male"
},
"device_info": {
"name": "Apple Watch Series 8",
"manufacturer": "Apple",
"model": "A2771"
},
"measurements": [
{
"type": "heart_rate",
"value": 72,
"dateTime": "2026-05-01T08:00:00Z"
},
{
"type": "steps",
"value": 8500,
"dateTime": "2026-05-01T23:59:59Z"
},
{
"type": "oxygen_saturation",
"value": 98,
"dateTime": "2026-05-01T09:00:00Z"
}
]
}