Odwiedź Interfejs Chrome Management Telemetry API , aby zapoznać się z funkcjami interfejsu API.
Wszystkie poniższe żądania używają następujących zmiennych:
$TOKEN
– token OAuth 2$CUSTOMER
– identyfikator klienta lub literałumy_customer
.
Wyświetlanie listy danych z urządzenia telemetrycznego
Aby wyświetlić dane telemetryczne urządzenia z Chrome, użyj
Punkt końcowy /telemetry/devices
. Parametr readMask
służy do określania, które:
. Podział wyników na strony możesz kontrolować za pomocą
Parametry pageSize
i pageToken
. Aby dodatkowo zawęzić wyniki, określ filter
wyniki na podstawie urządzenia lub kryteriów raportu.
Żądanie
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"
Odpowiedź
{
"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"
}
Wyświetlanie listy danych urządzeń telemetrycznych dla pojedynczej jednostki organizacyjnej
Aby wyświetlić dane telemetryczne dla pojedynczej jednostki organizacyjnej, użyj wartości orgUnitId
w parametrze filter
.
Żądanie
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"
Odpowiedź
{
"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"
}
]
}
]
}
Wyświetlanie listy danych z urządzeń telemetrycznych przy użyciu filtra sygnatury czasowej
Filtr sygnatur czasowych zwraca wszystkie urządzenia, ale obejmuje tylko raporty zgodne z zasadami
do filtra sygnatury czasowej i wskazano read_mask
.
Aby użyć tego filtra, podaj wartość reports_timestamp
w polu filter
i uwzględnij w milisekundach wartość sygnatury czasowej w czasie uniksowym
(np. 1679288169623
) lub RFC 3339 „Zulu” czas sformatowany (do dziewięciu części ułamkowych
np. "2023-02-15T11:18:51.383Z"
). Sygnatury czasowe zwracane przez funkcję
Interfejs API znajduje się w strefie czasowej UTC, dlatego wartości filtra reports_timestamp
również powinny być
w strefie czasowej UTC. Wszystkie standardowe operatory porównania liczb
(<, >, <=, >=, =
) są obsługiwane.
Wyświetlanie listy wszystkich raportów
Ponieważ gdy żadna wartość reports_timestamp
nie jest podana, zwracane są tylko ostatnie raporty.
określone to wywołanie może służyć do pobrania wszystkich raportów o urządzeniach
zawarte w programie read_mask
dla wszystkich urządzeń.
Żądanie
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/telemetry/devices?readMask=name,customer,orgUnitId,deviceId,serialNumber,audioStatusReport,cpuStatusReport,heartbeatStatusReport,memoryStatusReport&filter=reports_timestamp>=0"
Odpowiedź
{
"devices": [
{
"name": "customers/<customer>/telemetry/devices/<deviceId>",
"customer": "customers/<customer>",
"orgUnitId": "ABCEDFG",
"deviceId": "<deviceId>",
"serialNumber": "0A2B213CDEFG",
"audioStatusReport": [
{
"reportTime": "2009-01-01T12:37:51.383Z",
"inputMute": true,
"inputDevice": "example input device 2009",
},
{
"reportTime": "2010-02-01T12:37:51.383Z",
"inputMute": false,
"inputDevice": "example input device 2010",
},
{
"reportTime": "2011-03-01T12:37:51.383Z",
"inputMute": true,
"inputDevice": "example input device 2011",
},
{
"reportTime": "2024-01-01T12:37:51.383Z",
"inputMute": false,
"inputDevice": "example input device 2024",
}
],
"cpuStatusReport": [
{
"reportTime": "1960-10-15T01:18:51.383Z",
"cpuUtilizationPct": 76
},
{
"reportTime": "1997-10-31T11:18:51.383Z",
"cpuTemperatureInfo": [
{
"temperatureCelsius": 38,
"label": "Core"
},
]
}
]
},
{
"name": "customers/<customer>/telemetry/devices/<deviceId 1>",
"customer": "customers/<customer>",
"orgUnitId": "ABCEDFG",
"deviceId": "<deviceId 1>",
"serialNumber": "HGFEDCBA",
"heartbeatStatusReport": [
{
"reportTime": "2001-02-15T11:18:51.383Z",
"state": "ONLINE"
},
{
"reportTime": "2002-07-22T11:18:51.383Z",
"state": "OFFLINE"
},
{
"reportTime": "2012-01-04T11:18:51.383Z",
"state": "UNKNOWN"
},
{
"reportTime": "2024-02-29T11:18:51.383Z",
"state": "ONLINE"
}
],
"memoryStatusReport": [
{
"reportTime": "2024-03-20T11:18:51.383Z",
"systemRamFreeBytes": "112233445566778"
}
]
}
]
}
Wyświetlanie listy raportów po określonej sygnaturze czasowej
Aby wysłać żądanie o odpytywanie raportów po określonej sygnaturze czasowej, użyj funkcji
reports_timestamp
zgodnie z poniższym przykładem.
Żądanie
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\""
Odpowiedź
{
"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-03-19T11:18:51.383Z",
"cpuTemperatureInfo": [
{
"temperatureCelsius": 38,
"label": "Core"
},
]
}
],
"memoryStatusReport": [
{
"reportTime": "2023-04-19T11:18:51.383Z",
"systemRamFreeBytes": "14358468900"
}
]
},
{
"name": "customers/<customer>/telemetry/devices/<deviceId 1>",
"customer": "customers/<customer>",
"orgUnitId": "ABCEDFG",
"deviceId": "<deviceId 1>",
"serialNumber": "HGFEDCBA",
"memoryStatusReport": [
{
"reportTime": "2024-02-15T11:18:51.383Z",
"systemRamFreeBytes": "112233445566778"
}
]
}
]
}
Wyświetlanie listy danych z urządzeń telemetrycznych przy użyciu wielu filtrów (filtrowanie łączników)
Aby użyć kilku filtrów do zawężenia wyników zwracanych przez interfejs API, użyj słowa kluczowego AND
w parametrze filter
i uwzględnij kilka kryteriów filtrowania.
Żądanie
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"
Odpowiedź
{
"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"
}
]
}
]
}
Wyświetlanie listy danych użytkownika w telemetrii
Aby wyświetlić dane telemetryczne urządzenia z Chrome, użyj
Punkt końcowy /telemetry/users
. Parametr readMask
służy do określania, które:
. Podział wyników na strony możesz kontrolować za pomocą
Parametry pageSize
i pageToken
.
Żądanie
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"
Odpowiedź
{
"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"
}
Wyświetlanie listy danych użytkownika dla telemetrii dla pojedynczej jednostki organizacyjnej
Aby wyświetlić dane telemetryczne dla pojedynczej jednostki organizacyjnej, użyj wartości orgUnitId
w parametrze filter
.
Żądanie
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"
Odpowiedź
{
"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",
}
]
}
]
}
]
}
]
}
Wyświetlanie listy danych zdarzeń telemetrycznych
Aby wyświetlić listę zdarzeń telemetrycznych klienta, użyj punktu końcowego /telemetry/events
. Parametr readMask
służy do określania, które pola mają być zwracane. W najbliższej przyszłości parametr readMask
stanie się opcjonalny, a parametr filter
wymagany będzie parametr z co najmniej 1 typem zdarzenia.
Domyślnie odpowiedź zawiera pola name
, report_time
i event_type
zdarzenia. Podział wyników na strony możesz kontrolować za pomocą parametrów pageSize
i pageToken
. Wyniki możesz też filtrować przy użyciu tych parametrów:
- device_id
- user_id
- device_org_unit_id
- user_org_unit_id
- timestamp
- Wartością wejściową może być milisekunda od początku epoki, tj.
timestamp<1667423821001
lub RFC 3339, np.timestamp<"2022-11-02T20:08:32.386Z"
- Wartością wejściową może być milisekunda od początku epoki, tj.
- event_type
- audio_severe_underrun
- network_connection_state_change
- usb_added
- usb_removed
- network_htps_latency_change
Żądanie
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"
Odpowiedź
{
"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>"
}