GET /devices

Description

The /devices endpoint enables retrieval of a user's device information, including G4, G5, and G6 standalone receivers, the G5 and G6 mobile apps, and transmitters. The response is an array of all receiver-type devices contributing data to the specified time window, including the alerts and settings associated with each receiver. Scopes and Access

Resources

GET /v2/users/self/devices

Authorization

OAuth 2.0 bearer token; see the Authentication section for details on this workflow.

Query Parameters Notes

Due to the way device upload records are stored, the time components of the startDate and endDate parameters are ignored for the /devices endpoint.

SecurityBearerAuth
Request
query Parameters
startDate
required
string <date-time>

Beginning of the time window; see the discussion of time in the Endpoint Overview section for more details on how they relate to device information

Example: startDate=2023-01-01T09:12:35
endDate
required
string <date-time>

End of the time window

Example: endDate=2023-01-01T09:12:35
Responses
200

Ok

Response Schema: application/json
Array of objects

Array of devices

Array
transmitterGeneration
string or null

Generation of transmitter associated with the device (nullable)

Enum: "g4" "g5" "g6"
displayDevice
string or null

Type of display device used to receive the transmitter signal (nullable)

Enum: "receiver" "shareReceiver" "touchscreenReceiver" "iOS" "android"
lastUploadDate
string <date-time>

Server timestamp, in UTC, of last upload event for the device that contributed data in the specified time window; note that this may be outside the range defined by the startDate and endDate query parameters

Array of objects

Array of alert schedules and settings for the device as of the lastUploadDate

Array
object

Settings associated with each alert schedule

alertScheduleName
string

Name of the alert schedule

isEnabled
boolean

Describes whether the user has the alert schedule enabled on their display device

isDefaultSchedule
boolean

The default schedule is the alert schedule used in the absence of other applicable alert schedules

startTime
string <date-time>

The time each day when the alert schedule begins corresponds to the device's display time

endTime
string <date-time>

The time each day when the alert schedule begins corresponds to the device's display time

daysOfWeek
Array of strings

An array containing the days of the week this alert schedule value applies to; this array must contain one (or more) of the following strings in English: "sunday", "monday", "tuesday", "wednesday", "thursday", "friday" and/or "saturday"

Array of objects or null

Array of alert settings for the device as of the lastUploadDate (nullable)

Array
alertName
string

Name of alert

high: triggers on a glucose value that crosses the High value

low: triggers on a glucose value that crosses the Low value

rise: triggers on a glucose rate that crosses a Rise Rate value

fall: triggers on a glucose rate that crosses a Fall Rate value

urgentLow: triggers on a glucose value that crosses the Urgent Low value

urgentLowSoon: triggers when system is predicting the user will fall below the Urgent Low value in the near future

outOfRange: triggers an alert when the display is out of communication range after the programmed delay; corresponds to the Signal Loss alert

noReadings: triggers when the display device stops receiving EGV data from the transmitter for a certain amount of time; corresponds to the No Readings alert

Enum: "high" "low" "rise" "fall" "urgentLow" "urgentLowSoon" "outOfRange" "noReadings"
value
number or null <float>

The value at which the alert is set (nullable)

For "high" alert: 120 - 400 mg/dL

For "low" alert: 60 - 100 mg/dL

For "rise" alert: 2 or 3 mg/dL/min

For "fall" alert: 2 or 3 mg/dL/min

For "urgentLow" alert: 55 mg/dL (not user-editable)

For "urgentLowSoon" alert: 55 mg/dL (not user-editable)

For "outOfRange" alert: 20 - 240 minutes

For "noData" alert: 20 minutes (not user-editable)

unit
string or null

Unit of measurement for the alert value (nullable)

Enum: "mg/dL" "mmol/L" "mg/dL/min" "mmol/L/min" "minutes"
snooze
number or null

Time (in minutes) before resuming alarming after the alert has been acknowledged and cleared (nullable)

enabled
boolean

Indication of whether or not the alert is enabled on the device

systemTime
string <date-time>

Time according to the system clock when alert setting was last adjusted by the user; nominally UTC

displayTime
string <date-time>

Display time when alert setting was last adjusted by the user

get/v2/users/self/devices
Request samples
curl -i -X GET \
  'https://api.dexcom.com/v2/users/self/devices?startDate=2023-01-01T09%3A12%3A35&endDate=2023-01-01T09%3A12%3A35' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'
Response samples
application/json
{
  • "devices": [
    • {
      • "transmitterGeneration": "g6",
      • "displayDevice": "iOS",
      • "lastUploadDate": "2019-08-24T14:15:22Z",
      • "alertScheduleList": [
        • {
          • "alertScheduleSettings": {
            • "alertScheduleName": "sampleName",
            • "isEnabled": true,
            • "isDefaultSchedule": true,
            • "startTime": "2019-08-24T14:15:22Z",
            • "endTime": "2019-08-24T14:15:22Z",
            • "daysOfWeek": [
              • "sunday",
              • "monday",
              • "tuesday"
              ]
            },
          • "alertSettings": [
            • {
              • "alertName": "high",
              • "value": 200,
              • "unit": "mg/dL",
              • "snooze": 80,
              • "enabled": true,
              • "systemTime": "2019-08-24T14:15:22Z",
              • "displayTime": "2019-08-24T14:15:22Z"
              }
            ]
          }
        ]
      }
    ]
}