Skip to content

Fix LibreLinkUp API for October 2025 authentication changes - #53

Open
rollinsio wants to merge 1 commit into
nightscout:mainfrom
rollinsio:fix/librelinkup-october-2025-api
Open

Fix LibreLinkUp API for October 2025 authentication changes#53
rollinsio wants to merge 1 commit into
nightscout:mainfrom
rollinsio:fix/librelinkup-october-2025-api

Conversation

@rollinsio

Copy link
Copy Markdown

Summary

Fixes LibreLinkUp connection failures caused by Abbott's API changes in October 2025.

Problem

Starting in October 2025, Abbott updated the LibreLinkUp API with new authentication requirements:

  • New mandatory Account-Id header (SHA-256 hash of user.id)
  • Updated version requirement to 4.16.0+
  • Product identifier changed from llu.ios to llu.android

Without these changes, all LibreLinkUp connections fail with 403 Forbidden errors during the authorization step.

Changes

Updated API version and product identifier

  • Defaults.Version: 4.7.04.16.0
  • Defaults.Product: llu.iosllu.android

Added Account-Id header support

  • Added crypto require for SHA-256 hashing
  • Modified sessionFromAuth() to:
    • Extract user.id from auth response
    • Generate SHA-256 hash of user.id as Account-Id
    • Include Account-Id header in /llu/connections request
    • Store userId in session for later use
  • Modified dataFromSesssion() to:
    • Generate Account-Id from stored session.userId
    • Include Account-Id header in graph data requests

Testing

Tested with:

  • US region LibreLinkUp account
  • Follower account configuration
  • Verified successful authentication and authorization (HTTP 200)
  • Confirmed glucose data retrieval from LibreView API

References

  • Similar fixes required across the ecosystem (xDrip, GlucoDataHandler, etc.)
  • API change confirmed by community reports in October 2025

This fix enables LibreLinkUp integration to work with the current Abbott API requirements.

@rollinsio
rollinsio marked this pull request as draft October 22, 2025 02:33
Abbott updated the LibreLinkUp API in October 2025 with new requirements:
- New mandatory Account-Id header (SHA-256 hash of user.id)
- Updated version requirement to 4.16.0
- Product changed from llu.ios to llu.android

Without these changes, all LibreLinkUp connections fail with 403 Forbidden.

Changes:
- Add crypto require for SHA-256 hashing
- Update Defaults.Version from 4.7.0 to 4.16.0
- Update Defaults.Product from llu.ios to llu.android
- Add Account-Id header to sessionFromAuth()
- Add Account-Id header to dataFromSesssion()
- Store userId in session for header generation

Fixes authorization errors when connecting to LibreView API.
Tested with US region LibreLinkUp accounts.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant