Skip to content

Instantly share code, notes, and snippets.

@khskekec
Last active April 16, 2026 03:35
Show Gist options
  • Select an option

  • Save khskekec/6c13ba01b10d3018d816706a32ae8ab2 to your computer and use it in GitHub Desktop.

Select an option

Save khskekec/6c13ba01b10d3018d816706a32ae8ab2 to your computer and use it in GitHub Desktop.
HTTP dump of Libre Link Up used in combination with FreeStyle Libre 3
@Mynuggets-dev
Copy link
Copy Markdown

Has anyone actually managed to log insulin doses into Libre 3 via API?

I have kind of a niche goal, and I am hoping someone here has already gone down this rabbit hole.

What I want is pretty simple in theory:

  • tap a Siri Shortcut on my iPhone
  • log something like Rapid-Acting Insulin, 4 units, optional note
  • have that show up in the Abbott / Libre 3 ecosystem the same way a manually entered dose does
  • ideally in a place my doctor can also see

I am not trying to replace the sensor data side. I only want a faster way to log insulin doses than opening the app and tapping through the note flow every time.

What I found so far

I spent quite a bit of time inspecting the iPhone app traffic and digging through community projects.

Here is what I was able to confirm:

  • The Libre 3 iOS app definitely supports manual note/logbook entries.
  • The web side seems much more limited, and I cannot access my own logbook there.
  • The iPhone app appears to send note / insulin data to:

POST https://api-c-de.libreview.io/lsl/api/measurements

  • The payload includes things like:

    • UserToken
    • device metadata
    • insulinEntries
    • genericEntries with com.abbottdiabetescare.informatics.customnote
    • links to recent glucose record numbers / timestamps

I also found another real endpoint that appears to bind the account/device/sensor state:

PUT /lsl/api/nisperson

That call accepts things like active sensor, name, DOB, token, etc.

What I tried

I tried to recreate the app behavior as closely as I could:

  • used a real current UserToken
  • used the real device metadata
  • used the real active sensor serial
  • called the nisperson binding endpoint successfully
  • matched the observed recordNumber patterns from real uploads
  • linked the synthetic note to recent glucose timestamps / glucose record numbers
  • sent both insulin and custom note entries together

The frustrating part is:

  • the server returns success
  • the API calls look valid
  • but the synthetic note still does not show up in the Libre 3 app logbook

So I am stuck in this weird state where it looks like I found the right API, but I am still missing some hidden piece.

Where I am stuck

At this point I do not know whether the missing piece is:

  • some local app database/state that also has to be updated
  • another hidden endpoint before/after the measurements upload
  • some signature/integrity field
  • another rule around record numbers or sequencing
  • or whether Abbott silently accepts third-party writes but does not surface them the same way first-party app writes are surfaced

I also checked the older sharing / LibreLinkUp-style APIs, but they did not give me a useful way to validate whether the synthetic note was really stored in a doctor-visible way.

What I am hoping someone here knows

If anyone has actually done this, I would love to hear about it.

Specifically:

  1. Has anyone successfully created insulin / note entries in Libre 3 using their own code?

  2. If yes, did those entries actually show up in:

    • the Libre 3 app?
    • LibreView?
    • your doctor / clinic view?
  3. Did you use:

    • direct API calls?
    • Juggluco?
    • another third-party uploader?
    • UI automation?
  4. If you got it working, what was the missing piece?

  5. Has anyone confirmed that third-party uploaded insulin amounts really become visible inside Abbott's ecosystem for Libre 3?

I am mainly looking for real-world experience from someone who has actually tried to get this working, not just guesses.

If you have done anything similar, even partially, I would really appreciate hearing what worked and what did not.

^ and https://diabetes.mynuggets.dev/
i have global fallback cause AU based, few fixes and that will work other regions
( could work global )

@Mynuggets-dev
Copy link
Copy Markdown

@Mynuggets-dev Great that you exposed your scripting with others with your website! It looks good. Nice example for other developers. I hope one day I will provide machine-learned alerting service to others. At the moment I am too busy with other things. Keep going!

I’ve shared a simplified client API example I’ve been using.
On my side I run a more complete setup with additional layers for reliability, including an admin panel and data storage for analytics (I log readings roughly every minute for visualisation purposes).
I also have the ability to adjust ranges/alerts within my own tooling for testing and experimentation.
This is purely a personal project and not intended for medical use or as a clinical decision tool. Anyone building on this should implement their own safeguards and validation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment