Skip to content

Insulin (insulin)

An insulin delivery event that is not associated with a basal or bolus, usually logged as a contextual event on a CGM receiver or BG meter.

Dose (dose)

The actual dose of insulin, consisting of:

  • total - total insulin dose delivered (independent of correction + food - active)
  • active - active insulin, i.e., insulin on board
  • correction - insulin to bring the person with diabetes to their target BG
  • food - insulin to "cover" food input
  • units - units for dose, currently only Units are used

Formulation (formulation)

A formulation consists of a name (e.g. "My custom mix") and either an array of compounds (objects with amounts), or a simple formulation:

  • actingType - can be rapid, short, intermediate or long
  • brand - optional text field with the brand, e.g. "Humalog"
  • concentration - value in units/mL

Site (site)

There is an optional site text field (0-100 characters) to describe where injection was taken.

Quick Summary

annotationsArray of Annotation (object) or Blood Glucose Out of Range (object)(Annotation Array)[ 0 .. 100 ] itemsunique

An array of annotations.

archivedTimestring(date-time)(Date/Time)read-only
Example: "2017-02-06T02:37:46Z"
archivedDatasetIdstring(Data Set ID)[ 17 .. 37 ] characters^(upid_[0-9a-f]{12}|upid_[0-9a-f]{32}|[0-9a-f...
Example: "ce8cc5f7595575945f91fc6710db6fef"
associationsArray of Association (blob) (object) or Association (datum) (object) or Association (image) (object) or Association (url) (object)(Association Array)

An array of associations for the resource.

clockDriftOffsetinteger(int64)(Clock Drift Offset)[ -86400000 .. 86400000 ]

Clock drift offset, expressed as milliseconds.

Example: 0
conversionOffsetinteger(int64)(Conversion Offset)

Conversion offset, expressed as milliseconds.

Example: 0
createdTimestring(date-time)(Date/Time)
Example: "2017-02-06T02:37:46Z"
createdUserIdstring(Tidepool User ID)^([0-9a-f]{10}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-...read-only

String representation of a Tidepool User ID. Old style IDs are 10-digit strings consisting of only hexadeximcal digits. New style IDs are 36-digit UUID v4

deduplicatorobject(Deduplicator Descriptor)
deletedTimestring(date-time)(Date/Time)
Example: "2017-02-06T02:37:46Z"
deletedUserIdstring(Tidepool User ID)^([0-9a-f]{10}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-...read-only

String representation of a Tidepool User ID. Old style IDs are 10-digit strings consisting of only hexadeximcal digits. New style IDs are 36-digit UUID v4

deviceIdstring(Device ID)non-empty

Globally unique to device and repeatable with each upload, e.g. device make and model with serial number

Example: "MMT-1711:12345678"
deviceTimestring(Date/Time without Timezone)^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}$
Example: "2017-02-06T02:37:46"
historyArray of objects(Event History [Proposed])

Revision history of the event

idstring(Data Set ID)[ 17 .. 37 ] characters^(upid_[0-9a-f]{12}|upid_[0-9a-f]{32}|[0-9a-f...required
Example: "ce8cc5f7595575945f91fc6710db6fef"
locationobject(Location)

Location information associated with the resource. One or both of name and gps must be specified.

modifiedTimestring(date-time)(Date/Time)
Example: "2017-02-06T02:37:46Z"
modifiedUserIdstring(Tidepool User ID)^([0-9a-f]{10}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-...read-only

String representation of a Tidepool User ID. Old style IDs are 10-digit strings consisting of only hexadeximcal digits. New style IDs are 36-digit UUID v4

notesArray of strings(Note Array)[ 1 .. 100 ] items

An array of 1 to 100 notes.

originobject(Origin)

External origin information for the source of the resource.

payloadobject(Payload)

Grab bag field for data that isn't yet part of the data model. The maximum size is 4K bytes.

sourcestring
Value"carelink"
tagsArray of strings(Tag Array)

An array of tags.

timestring(date-time)(Date/Time)required
Example: "2017-02-06T02:37:46Z"
timezonestring(Time Zone)
Example: "Europe/London"
timezoneOffsetinteger(int32)(Time Zone offset)[ -10080 .. 10080 ]

Time zone offset, expressed as positive or negative number of minutes from UTC.

Example: -420
typestring(Tidepool Data Type)required

Data type

Enum"insulin""alert""basal""bloodKetone""bolus""cbg""cgmSettings""controllerSettings""controllerStatus""deviceEvent"
Example: "upload"
uploadIdstring(Upload ID)[ 17 .. 32 ] characters^([0-9a-f]{32}|upid_[0-9a-f]{12})$

An upload identifier; this field should be the uploadId of the corresponding upload record

Example: "0d92d5c1c22117a18f3620b9e24d3c06"
doseobject(Insulin Dose)

An object representing an Insulin Dose

formulationInsulin Formulation (object)(Insulin Formulation)
One of:
sitestring[ 0 .. 100 ] characters
guidstringDeprecated

A string ID. Added to each event during data processing in the Tidepool Uploader or upon ingestion by the platform data ingestion service.

Examples

Example (insulin)
{
    "type": "insulin",
    "clockDriftOffset": 0,
    "conversionOffset": 0,
    "createdTime": "2025-05-14T08:17:13.453Z",
    "deviceId": "DevId0987654321",
    "deviceTime": "2025-05-14T18:17:08",
    "guid": "96013c51-c2f5-4557-ad0b-479151cf0512",
    "id": "6e3ea4734056463f84f6be47621d21d7",
    "time": "2025-05-14T08:17:08.453Z",
    "timezoneOffset": 600,
    "uploadId": "SampleUploadId",
    "dose": {
      "units": "Units",
      "total": 250,
      "food": 250,
      "correction": -250,
      "active": 250
    },
    "formulation": {
      "compounds": [
        {
          "amount": 0.1
        }
      ],
      "name": "string"
    },
    "site": "string"
}