Announcing The Dexcom API v2

Jun 05, 2018

With the introduction of the Dexcom G6 CGM System, we needed to make some room in our data platform for the newest member of the team. Due to some new features and changes to the G6 data structure compared to G4 and G5, we have decided to release a new version of the API: v2. This new version is available in both the Sandbox and Production Data Environments now on all endpoints.

Here’s an overview of some of the changes (though be sure to review the updated documentation thoroughly):

  • All endpoints have been updated to v2, including token and login endpoints
  • v2 endpoints return data from G4, G5, and G6 systems
  • User connections made and tokens exchanged on v1 function seamlessly on v2 (and vice versa)—no need to re-auth your app's users
  • Sandbox user data has been improved, simplified, and now includes G6 users; users were re-mapped in the process
  • /calibrations
    • This endpoint didn’t see an overhaul, but you can expect to see fewer calibration entries with G6 systems
  • /devices
    • Alert schedules were added to the G6 smartphone app for patients, requiring a new overall structure (this feature is also available in the updated G5 app)
    • The model field has been replaced by the transmitterGeneration and displayDevice fields to be more flexible and improve mapping
    • New alertName enumerations (including “urgentLowSoon” and “noData”) have been added
  • /egvs
    • Added the realtimeValue and smoothedValue fields to handle EGV smoothing in G6—be sure to read the Notes section closely
  • /events
    • Event entries can now be deleted by the user (phone apps only); eventId and eventStatus fields have been added to help handle this new feature.
    • Added new eventSubType enumerations for insulin: “fastActing” and “longActing”
  • /statistics
    • Statistics are now calculated for four ranges, adding urgent low to the existing low, in range, and high categorizations. The request body has been modified accordingly.
  • We also added a new endpoint—/dataRange—which can be used to efficiently pull historical data and determine whether new data is available

Some notes on v1:

  • Because the shape of the data is changing, v1 endpoints do not have access to G6 data. They will continue to include data generated by G4 and G5 systems, but G6 data is only available in v2.
  • Documentation for the v1 endpoints is still available for reference. Links to the v1 documentation appear in the Notes sections of each v2 endpoint page.
  • The v1 endpoints will live on for a while, and we will provide ample notice prior to sunsetting them. However, if you have an existing app using v1, you'll want to migrate to v2 promptly so that you can continue to support your users as they upgrade to G6.

As always, send us your questions and feedback using the Support Requests form.