Skip to main content
POST
Send an injection log

Authorizations

Authorization
string
header
default:Bearer sandbox_any_token_works
required

A brand's server, one OAuth client per brand and environment. Get a token with the client_credentials grant and send it as Authorization: Bearer <token>. Tokens last 1 hour. A brand server reads status and ids only; it never reads clinical content. A platform partner holds one client for all its brands and gets one token per brand, naming it with tenant_id.

Headers

Idempotency-Key
string
required

A unique key per logical request, for example a UUID. Retrying with the same key and the same body within 24 hours returns the first response (with Idempotent-Replayed: true) instead of creating a duplicate. The same key with a different body is refused with 422 idempotency_key_reused.

Required string length: 8 - 255

Path Parameters

enrollment_id
string<uuid>
required

Body

application/json

A dose taken (injected_at) or missed (missed: true). One of the two is required.

injected_at
string<date-time>
required

ISO 8601 in UTC.

Example:

"2026-10-26T14:05:00Z"

external_id
string
required

Your own identifier, printable ASCII without spaces.

Required string length: 1 - 128
Pattern: ^[\x21-\x7E]+$
Example:

"inj-88213"

missed
boolean
default:false
scheduled_for
string<date>
Example:

"2026-10-26"

dose_mg
number
Example:

0.5

site
string

For example abdomen_left, abdomen_right, thigh_left, thigh_right, arm_left, arm_right.

Example:

"abdomen_left"

note
string
Maximum string length: 1000
Example:

"Slight redness at site"

Response

Already received; the first receipt.

What a brand server gets back for a log. The values stay with the care team.

id
string<uuid>
required
Example:

"0190f5c9-5d6e-7f70-8a92-1b2c3d4e5f60"

external_id
string
required

Your own identifier, printable ASCII without spaces.

Required string length: 1 - 128
Pattern: ^[\x21-\x7E]+$
Example:

"meal-77120"

log_date
string<date>
required

A calendar date in the patient's time zone.

Example:

"2026-10-26"

created_at
string<date-time>
required

ISO 8601 in UTC.

Example:

"2026-10-26T14:05:00Z"

updated_at
string<date-time>
required

When the log was last corrected; the same as created_at until then.

Example:

"2026-10-26T14:05:00Z"