Medtronic CareLink Live Bridge¶
This note describes the IINTS read-only live bridge for Medtronic/CareLink-style diabetes data. It is built for authorized engineering, validation, and research flows where a consented CareLink, care-partner, or mobile-app relay exposes pump and CGM snapshots as JSON.
The SDK does not hardcode private CareLink or mobile app endpoints. Instead, it polls a configured internal gateway and normalizes common CGM, meal, and insulin event aliases into the IINTS universal schema.
Intended Architecture¶
flowchart LR
Pump["MiniMed pump / CGM"] --> Mobile["MiniMed Mobile app"]
Mobile --> CareLink["CareLink service"]
CareLink --> Relay["Authorized read-only relay"]
Relay --> IINTS["iints medtronic-live"]
IINTS --> Outputs["live_timeline.csv / cgm_standard.csv / latest.json"]
The relay is the compliance boundary. It should own identity, consent, audit logging, tenant isolation, rate limits, and any official CareLink/mobile-app integration details. The SDK only consumes a read-only JSON feed.
Minimal Relay Contract¶
The relay endpoint can return a list directly or a JSON object with a data,
entries, events, readings, sgs, sgvs, or timeline array.
Example:
{
"data": [
{
"type": "sensor_glucose",
"dateTime": "2026-05-25T10:00:00Z",
"value": 122,
"units": "mg/dL"
},
{
"eventType": "meal",
"eventTime": "2026-05-25T10:03:00Z",
"carbInput": 35
},
{
"eventType": "bolus",
"eventTime": "2026-05-25T10:04:00Z",
"bolusAmount": 3.2
}
]
}
Supported aliases include:
- Timestamps:
timestamp,dateTime,eventTime,medicalDeviceTime,serverTime - Glucose:
sg,sgv,glucose,sensorGlucose,sensorGlucoseValue - Carbs:
carbs,carbohydrates,carbInput,carbGrams,mealCarbs - Insulin:
insulinDelivered,bolusAmount,bolusUnits,bolusVolumeDelivered,basalUnits - Units:
mg/dLormmol/L
Meal and insulin events are attached to the nearest glucose row within the configured tolerance window, defaulting to 7.5 minutes.
CLI Usage¶
export MEDTRONIC_CARELINK_TOKEN="..."
iints medtronic-live \
--base-url https://internal-relay.example \
--endpoint-path /carelink/live \
--token-env MEDTRONIC_CARELINK_TOKEN \
--device-id TEST-PUMP-001 \
--samples 0 \
--poll-seconds 60 \
--output-dir results/medtronic_live
Outputs:
live_timeline.csv: absolute timestamps plus glucose, carbs, insulin, sourcecgm_standard.csv: IINTS universal schema with relative minute timestampslatest.json: latest reading summary for dashboards or smoke tests
Guardrails¶
- Use only authorized, consented, read-only sources.
- Keep bearer tokens in environment variables or secret files, not shell history.
- Do not use this feed for therapy decisions or device control.
- Keep the SDK behind an internal relay; do not embed private mobile endpoints in research scripts.
- Use HTTPS for non-local hosts. The CLI rejects embedded URL credentials, full endpoint URLs, and non-local plain HTTP.