Visit Chrome Management Telemetry API for an overview of API features.
All the requests shown below use the following variables:
$TOKEN
- OAuth 2 token$CUSTOMER
- ID of the customer or literalmy_customer
List Telemetry Device Data
To list telemetry data for a chrome device use the
/telemetry/devices
endpoint. The readMask
parameter is used to specify which
device fields are returned. You can control pagination of the results using the
pageSize
and pageToken
parameters.
Request
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/telemetry/devices?readMask=name,customer,orgUnitId,deviceId,serialNumber,cpuInfo,cpuStatusReport,memoryInfo,memoryStatusReport,osUpdateStatus&pageSize=2"
Response
{
"devices": [
{
"name": "customers/<customer>/telemetry/devices/<deviceId>",
"customer": "customers/<customer>",
"orgUnitId": "ABCEDFG",
"deviceId": "<deviceId>",
"serialNumber": "0A2B213CDEFG",
"cpuStatusReport": [
{
"reportTime": "2021-04-25T13:23:55.880Z",
"cpuUtilizationPct": 76
},
{
"reportTime": "2021-04-25T18:25:55.880Z",
"cpuTemperatureInfo": [
{
"temperatureCelsius": 38,
"label": "Core"
},
]
}
],
"memoryStatusReport": [
{
"reportTime": "2021-04-25T13:23:55.880Z",
"systemRamFreeBytes": "14358468900"
}
],
"osUpdateStatus": [
{
"lastUpdateTime": "2021-04-25T11:18:51.383Z",
"lastUpdateCheckTime": "1970-01-01T00:00:00Z",
"lastRebootTime": "2021-04-25T11:18:51.383Z"
}
]
},
{
"name": "customers/<customer>/telemetry/devices/<deviceId>",
"customer": "customers/<customer>",
"orgUnitId": "FEDCBA",
"deviceId": "<deviceId>",
"serialNumber": "1B3D817LKUH",
"cpuStatusReport": [
{
"reportTime": "2021-05-25T13:23:55.880Z",
"cpuUtilizationPct": 50
},
],
"memoryStatusReport": [
{
"reportTime": "2021-05-25T13:23:55.880Z",
"systemRamFreeBytes": "14358468900"
}
],
"osUpdateStatus": [
{
"lastUpdateTime": "2021-05-25T11:18:51.383Z",
"lastUpdateCheckTime": "1970-01-01T00:00:00Z",
"lastRebootTime": "2021-05-25T11:18:51.383Z"
}
]
}
],
"nextPageToken": "PAGE_TOKEN"
}
List Telemetry Device Data for a Single Org Unit
To list telemetry data for a single org unit, use the orgUnitId
value in the filter
parameter.
Request
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/telemetry/devices?readMask=name,customer,orgUnitId,deviceId,serialNumber,cpuInfo,cpuStatusReport,memoryInfo,memoryStatusReport,osUpdateStatus&filter=orgUnitId=ABCDEFG"
Response
{
"devices": [
{
"name": "customers/<customer>/telemetry/devices/<deviceId>",
"customer": "customers/<customer>",
"orgUnitId": "ABCEDFG",
"deviceId": "<deviceId>",
"serialNumber": "0A2B213CDEFG",
"cpuStatusReport": [
{
"reportTime": "2021-04-25T13:23:55.880Z",
"cpuUtilizationPct": 76
},
{
"reportTime": "2021-04-25T18:25:55.880Z",
"cpuTemperatureInfo": [
{
"temperatureCelsius": 38,
"label": "Core"
},
]
}
],
"memoryStatusReport": [
{
"reportTime": "2021-04-25T13:23:55.880Z",
"systemRamFreeBytes": "14358468900"
}
],
"osUpdateStatus": [
{
"lastUpdateTime": "2021-04-25T11:18:51.383Z",
"lastUpdateCheckTime": "1970-01-01T00:00:00Z",
"lastRebootTime": "2021-04-25T11:18:51.383Z"
}
]
}
]
}
List Telemetry Device Data Using a Timestamp Filter
The timestamp filter returns all devices, but only includes reports that conform to the timestamp filter and specified read_mask
.
To use this filter, specify the reports_timestamp
value in the filter
parameter and include a timestamp value in either the Unix Epoch (milliseconds) or RFC 3339 "Zulu" formatted time (up to nine fractional digits) formats. Timestamps returned by the API are in UTC timezone, so reports_timestamp
filter values should ideally also be in the UTC timezone.
Request
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/telemetry/devices?readMask=name,customer,orgUnitId,deviceId,serialNumber,cpuStatusReport,memoryStatusReport,osUpdateStatus&filter=reports_timestamp=\"2023-02-15T11:18:51.383Z\""
The reports_timestamp
value can either be RFC 3339 "Zulu" formatted (ie.
"2023-02-15T11:18:51.383Z"
, double quotes included) or Unix Epoch in milliseconds
(ie. 1679288169623
). All standard number comparison operators (<, >, <=, >=, =
) are
supported.
Response
{
"devices": [
{
"name": "customers/<customer>/telemetry/devices/<deviceId>",
"customer": "customers/<customer>",
"orgUnitId": "ABCEDFG",
"deviceId": "<deviceId>",
"serialNumber": "0A2B213CDEFG",
"cpuStatusReport": [
{
"reportTime": "2023-02-15T11:18:51.383Z",
"cpuUtilizationPct": 76
},
{
"reportTime": "2023-02-15T11:18:51.383Z",
"cpuTemperatureInfo": [
{
"temperatureCelsius": 38,
"label": "Core"
},
]
}
],
"memoryStatusReport": [
{
"reportTime": "2023-02-15T11:18:51.383Z",
"systemRamFreeBytes": "14358468900"
}
]
},
{
"name": "customers/<customer>/telemetry/devices/<deviceId 1>",
"customer": "customers/<customer>",
"orgUnitId": "ABCEDFG",
"deviceId": "<deviceId 1>",
"serialNumber": "HGFEDCBA",
"memoryStatusReport": [
{
"reportTime": "2023-02-15T11:18:51.383Z",
"systemRamFreeBytes": "112233445566778"
}
]
}
]
}
List Telemetry Device Data Using Multiple Filters (Conjunction Filtering)
To use multiple filters to narrow down the response returned by the api, use the AND
keyword in the filter
parameter and include multiple filtering criteria.
Request
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/telemetry/devices?readMask=name,customer,orgUnitId,deviceId,serialNumber,cpuStatusReport,memoryStatusReport,osUpdateStatus&filter=reports_timestamp=\"2023-02-15T11:18:51.383Z\" AND serialNumber=HGFEDCBA"
Response
{
"devices": [
{
"name": "customers/<customer>/telemetry/devices/<deviceId 1>",
"customer": "customers/<customer>",
"orgUnitId": "ABCEDFG",
"deviceId": "<deviceId 1>",
"serialNumber": "HGFEDCBA",
"memoryStatusReport": [
{
"reportTime": "2023-02-15T11:18:51.383Z",
"systemRamFreeBytes": "112233445566778"
}
]
}
]
}
List Telemetry User Data
To list telemetry data for a chrome device use the
/telemetry/users
endpoint. The readMask
parameter is used to specify which
device fields are returned. You can control pagination of the results using the
pageSize
and pageToken
parameters.
Request
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/telemetry/users?readMask=name,customer,orgUnitId,userId,userEmail,user_device.device_id,user_device.audio_status_report,user_device.peripherals_report&pageSize=2"
Response
{
"telemetryUsers": [
{
"name": "customers/<customer>/telemetry/users/<userId>",
"customer": "customers/<customer>",
"orgUnitId": "ABCEDFG",
"userEmail": "<userId>",
"userEmail": "user@mytestdomain.com",
"userDevice": [
{
"deviceId": "HIJKLMNOP",
"audioStatusReport": [
{
"reportTime": "2021-04-25T13:23:55.880Z",
"outputMute": true,
"inputMute": true,
}
],
"peripheralsReport": [
{
"reportTime": "2021-04-25T18:25:55.880Z",
"usbPeripheralReport": [
{
"vendor": "Vendor",
"name": "Microphone",
}
]
}
]
}
]
},
{
"name": "customers/<customer>/telemetry/users/<userId>",
"customer": "customers/<customer>",
"orgUnitId": "QRSTUV",
"userEmail": "<userId>",
"userEmail": "user2@mytestdomain.com",
"userDevice": [
{
"deviceId": "WXYZ",
"audioStatusReport": [
{
"reportTime": "2021-04-25T13:23:55.880Z",
"outputMute": true,
"inputMute": true,
}
],
"peripheralsReport": [
{
"reportTime": "2021-04-25T18:25:55.880Z",
"usbPeripheralReport": [
{
"vendor": "Vendor",
"name": "Microphone",
}
]
}
]
}
]
}
],
"nextPageToken": "PAGE_TOKEN"
}
List Telemetry User Data for a Single Org Unit
To list telemetry data for a single org unit, use the orgUnitId
value in the filter
parameter.
Request
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/telemetry/users?readMask=name,customer,orgUnitId,userId,userEmail,user_device.device_id,user_device.audio_status_report,user_device.peripherals_report&pageSize=2&filter=orgUnitId=ABCDEFG"
Response
{
"telemetryUsers": [
{
"name": "customers/<customer>/telemetry/users/<userId>",
"customer": "customers/<customer>",
"orgUnitId": "ABCEDFG",
"userEmail": "<userId>",
"userEmail": "user@mytestdomain.com",
"userDevice": [
{
"deviceId": "HIJKLMNOP",
"audioStatusReport": [
{
"reportTime": "2021-04-25T13:23:55.880Z",
"outputMute": true,
"inputMute": true,
}
],
"peripheralsReport": [
{
"reportTime": "2021-04-25T18:25:55.880Z",
"usbPeripheralReport": [
{
"vendor": "Vendor",
"name": "Microphone",
}
]
}
]
}
]
}
]
}
List Telemetry Event Data
To list telemetry events for a customer, use the /telemetry/events
endpoint. The readMask
parameter is used to specify which fields are returned. In the near future, the readMask
parameter will become optional, and the filter
param with at least 1 event type will be required.
By default, the event's name
, report_time
, and event_type
fields are included in the response. You can control pagination of the results using the pageSize
and pageToken
parameters. Additionally, you can filter results with the following parameters:
- device_id
- user_id
- device_org_unit_id
- user_org_unit_id
- timestamp
- Input value can either be EPOCH milliseconds, ie
timestamp<1667423821001
or RFC 3339, ie.timestamp<"2022-11-02T20:08:32.386Z"
- Input value can either be EPOCH milliseconds, ie
- event_type
- audio_severe_underrun
- network_connection_state_change
- usb_added
- usb_removed
- network_htps_latency_change
Request
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/telemetry/events?readMask=device,usb_peripherals_event&filter=event_type=usb_added&pageSize=3"
Response
{
"telemetryEvents": [
{
"name": "customers/<customer>/telemetry/events/<event id>",
"device": {
"deviceId": "<device id>",
"orgUnitId": "<device’s org unit id>"
},
"reportTime": "2022-11-02T11:14:09.034Z",
"eventType": "USB_ADDED",
"usbPeripheralsEvent": {
"usbPeripheralReport": [
{
"vendor": "Microdia",
"name": "Integrated_Webcam_HD",
"vid": <vid>,
"pid": <pid>
}
]
}
},
{
"name": "customers/<customer>/telemetry/events/<event id>",
"device": {
"deviceId": "<device id>",
"orgUnitId": "<device’s org unit id>"
},
"reportTime": "2022-11-02T10:10:36.481Z",
"eventType": "USB_ADDED",
"usbPeripheralsEvent": {
"usbPeripheralReport": [
{
"vendor": "Hewlett-Packard",
"name": "x304m",
"vid": <vid>,
"pid": <pid>,
"categories": [
"Mass storage"
]
}
]
}
},
{
"name": "customers/<customer>/telemetry/events/<event id>",
"device": {
"deviceId": "<device id>",
"orgUnitId": "<device’s org unit id>"
},
"reportTime": "2022-11-02T09:58:48.249Z",
"eventType": "USB_ADDED",
"usbPeripheralsEvent": {
"usbPeripheralReport": [
{
"vendor": "Realtek Semiconductor Corp.",
"name": "USB 10/100/1000 LAN",
"vid": <vid>,
"pid": <pid>,
"categories": [
"Vendor Specific"
]
}
]
}
}
],
"nextPageToken": "<page token>"
}