---
title: "[beta] List devices."
method: GET
path: "/devices"
tags: ["Beta APIs"]
---

# \[beta\] List devices.

`GET /devices`

## Request

- Base URL: `https://api.samsara.com`
- URL: `https://api.samsara.com/devices`
- Auth: HTTP bearer

Returns all installed cameras (CM3x, AIM4, AHD1), vehicle gateways (VGs), asset gateways (AGs), and asset tags (AT11–AT13) and their health information within an organization. 

**Beta:** This endpoint is in beta and is likely to change before being broadly available. Reach out to your Samsara Representative to have Devices API enabled for your organization.

 <b>Rate limit:</b> 5 requests/sec (learn more about rate limits <a href="https://developers.samsara.com/docs/rate-limits" target="_blank">here</a>).

To use this endpoint, select **Read Devices** under the Devices category when creating or editing an API token. <a href="https://developers.samsara.com/docs/authentication#scopes-for-api-tokens" target="_blank">Learn More.</a>
 

 **Submit Feedback**: Likes, dislikes, and API feature requests should be filed as feedback in our <a href="https://forms.gle/zkD4NCH7HjKb7mm69" target="_blank">API feedback form</a>. If you encountered an issue or noticed inaccuracies in the API documentation, please <a href="https://www.samsara.com/help" target="_blank">submit a case</a> to our support team.

## Query parameters

- `models` string[]
- `healthStatuses` string[]
- `includeHealth` boolean
- `after` string
- `limit` integer
- `includeTags` boolean
- `tagIds` string
- `parentTagIds` string

## Response `200`

OK response.

- DevicesGetDevicesResponseBody
  - `data` DeviceResponseResponseBody[], required: List of device objects.
    - `asset` DeviceAssetResponseResponseBody, required: Asset that the device is tied to.
      - `id` string, required: The unique ID of the asset.
      - `name` string, required: The human-readable name of the asset. This is set by a fleet administrator and will appear in both Samsara’s cloud dashboard as well as the Samsara Driver mobile app. By default, this name is the serial number of the Samsara Asset Gateway. It can be set or updated through the Samsara Dashboard or through the API at any time.
    - `health` HealthResponseResponseBody: Health information for the device.
      - `healthDetails` HealthDetailsResponseResponseBody: Detailed health related metadata for the device.
        - `bleAssetTagDetails` BleAssetTagDetailsResponseResponseBody: BLE asset tag-specific health metadata details.
          - `batteryState` 'critical' | 'low' | 'ok' | 'unknown': The BLE asset tag's battery state. Valid values: `critical`, `low`, `ok`, `unknown`
          - `lastCheckInTime` string, date-time: The timestamp when the BLE asset tag was last detected by a gateway in the Samsara network, in RFC 3339 format.
        - `cameraConnectorDetails` CameraConnectorDetailsResponseResponseBody: Camera connector-specific health metadata details.
          - `gatewayLastConnectedTime` string, date-time: The timestamp when the gateway was last connected to the vehicle, in RFC 3339 format.
          - `lastFiftyHoursUptimePercentage` number, double: The percentage of successful recording time during the time when the vehicle is on an active trip over the past 50 hours, in percentage points.
          - `vehicleGatewaySerial` string: The serial number of the vehicle gateway that the camera connector is connected to.
        - `cameraDetails` CameraDetailsResponseResponseBody: Camera-specific health metadata details.
          - `gatewayLastConnectedTime` string, date-time: The timestamp when the gateway was last connected to the vehicle, in RFC 3339 format.
          - `lastFiftyHoursUptimePercentage` number, double: The percentage of successful recording time during the time when the vehicle is on an active trip over the past 50 hours, in percentage points.
          - `vehicleGatewaySerial` string: The serial number of the vehicle gateway that the camera is connected to.
        - `gatewayDetails` GatewayDetailsResponseResponseBody: Gateway-specific health metadata.
          - `cellConnectivity` CellConnectivityResponseResponseBody: Gateway cellular connectivity information.
            - `operator` string: The cellular network provider name.
            - `signalBar` '1/4' | '2/4' | '3/4' | '4/4' | 'unknown': The cellular signal strength indicator. Valid values: `1/4`, `2/4`, `3/4`, `4/4`, `unknown`
          - `gatewayBatteryState` 'critical' | 'low' | 'ok' | 'unknown': The gateway's battery state. Valid values: `critical`, `low`, `ok`, `unknown`
          - `gatewayBatteryTemp` number, double: The battery temperature of the gateway, in degrees Celsius.
          - `gatewayBatteryVolts` number, double: The battery voltage of the gateway, in volts.
          - `lastCheckInTime` string, date-time: The timestamp of the gateway's last check-in, in RFC 3339 format.
          - `vehicleBatteryVolts` number, double: The battery voltage of the vehicle that gateway is connected to, in volts.
      - `healthReasons` HealthReasonResponseResponseBody[]: The list of active health reasons affecting this device.
        - `healthReasonCode` 'assetUnplugged' | 'cameraMisaligned' | 'dataPending' | 'healthy' | 'inwardCameraObstruction' | 'irregularRecording' | 'lowConnectivity' | 'lowDeviceBattery' | 'lowUptime' | 'mediaInputLowConnectivity' | 'missingEldDiagnostics' | 'missingVin' | 'needsAttribute' | 'needsReplacement' | 'newlyInstalledDevice' | 'noGpsSignal' | 'notDetected' | 'outwardCameraObstruction' | 'recordingTimeRequired' | 'unknown' | 'unstablePower' | 'vgUnplugged': The type of health reason detected. Valid values: `assetUnplugged`, `cameraMisaligned`, `dataPending`, `healthy`, `inwardCameraObstruction`, `irregularRecording`, `lowConnectivity`, `lowDeviceBattery`, `lowUptime`, `mediaInputLowConnectivity`, `missingEldDiagnostics`, `missingVin`, `needsAttribute`, `needsReplacement`, `newlyInstalledDevice`, `noGpsSignal`, `notDetected`, `outwardCameraObstruction`, `recordingTimeRequired`, `unknown`, `unstablePower`, `vgUnplugged`
        - `startTime` string, date-time: The timestamp when this health reason began, in RFC3339 format.
      - `healthStatus` 'dataPending' | 'healthy' | 'needsAttention' | 'needsReplacement': Current overall health status of the device. Valid values: `dataPending`, `healthy`, `needsAttention`, `needsReplacement`
      - `primaryHealthReason` 'assetUnplugged' | 'cameraMisaligned' | 'dataPending' | 'healthy' | 'inwardCameraObstruction' | 'irregularRecording' | 'lowConnectivity' | 'lowDeviceBattery' | 'lowUptime' | 'mediaInputLowConnectivity' | 'missingEldDiagnostics' | 'missingVin' | 'needsAttribute' | 'needsReplacement' | 'newlyInstalledDevice' | 'noGpsSignal' | 'notDetected' | 'outwardCameraObstruction' | 'recordingTimeRequired' | 'unknown' | 'unstablePower' | 'vgUnplugged': Primary health reason affecting the device's current health status. Valid values: `assetUnplugged`, `cameraMisaligned`, `dataPending`, `healthy`, `inwardCameraObstruction`, `irregularRecording`, `lowConnectivity`, `lowDeviceBattery`, `lowUptime`, `mediaInputLowConnectivity`, `missingEldDiagnostics`, `missingVin`, `needsAttribute`, `needsReplacement`, `newlyInstalledDevice`, `noGpsSignal`, `notDetected`, `outwardCameraObstruction`, `recordingTimeRequired`, `unknown`, `unstablePower`, `vgUnplugged`
      - `primaryHealthReasonStartTime` string, date-time: The timestamp when the primary health reason began, in RFC3339 format.
      - `recommendedAction` 'recommendedActionAgHealthy' | 'recommendedActionAgLowDeviceBatteryAG45' | 'recommendedActionAgLowDeviceBatteryAG46' | 'recommendedActionAgLowDeviceBatteryAG51' | 'recommendedActionAgLowDeviceBatteryPoweredAG' | 'recommendedActionAgNoGpsSignal' | 'recommendedActionAgNotDetected' | 'recommendedActionAgUnplugged' | 'recommendedActionAgUnstablePower' | 'recommendedActionBLEDataPending' | 'recommendedActionBLEHealthy' | 'recommendedActionBLELowBattery' | 'recommendedActionBLENotDetected' | 'recommendedActionCcHealthy' | 'recommendedActionCcLowConnectivity' | 'recommendedActionCcLowUptime' | 'recommendedActionCcMediaInputUptime' | 'recommendedActionCcNeedsAttribute' | 'recommendedActionCcNotDetected' | 'recommendedActionCmCameraMisaligned' | 'recommendedActionCmHealthy' | 'recommendedActionCmInactive' | 'recommendedActionCmInwardCameraObstruction' | 'recommendedActionCmIrregularRecording' | 'recommendedActionCmLowUptime' | 'recommendedActionCmNewlyInstalledDevice' | 'recommendedActionCmNotDetected' | 'recommendedActionCmOutwardCameraObstruction' | 'recommendedActionCmRecordingTimeRequired' | 'recommendedActionCmVgUnplugged' | 'recommendedActionGatewayNewlyInstalledDevice' | 'recommendedActionHealthy' | 'recommendedActionLowBatteryVoltage' | 'recommendedActionOemNotReporting' | 'recommendedActionVehicleOff' | 'recommendedActionVgFrequentPowerLoss' | 'recommendedActionVgHealthy' | 'recommendedActionVgMissingEldDiagnostics' | 'recommendedActionVgMissingEldDiagnosticsExchangeSubmitted' | 'recommendedActionVgMissingEldDiagnosticsHardwareExchanged' | 'recommendedActionVgMissingEldDiagnosticsNoExchangeSubmitted' | 'recommendedActionVgMissingVin' | 'recommendedActionVgNeedsReplacement' | 'recommendedActionVgNotDetected' | 'recommendedActionVgVgUnplugged' | 'unknown': Recommended steps to resolve the current health reason. * `recommendedActionAgHealthy`: Gateway is healthy. No action required. * `recommendedActionAgLowDeviceBatteryAG45`: The gateway battery is low. Please contact support * `recommendedActionAgLowDeviceBatteryAG46`: The gateway battery is low. Gateway batteries require replacement. * `recommendedActionAgLowDeviceBatteryAG51`: Gateway batteries require replacement. * `recommendedActionAgLowDeviceBatteryPoweredAG`: The gateway battery is low. Power on the asset to charge the gateway. * `recommendedActionAgNoGpsSignal`: Gateway has no GPS signal. Verify that the gateway is securely attached to the exterior of the asset. Ensure that the device is outside and avoid obstructions such as underground structures, heavily insulated buildings, bridges, and trees. * `recommendedActionAgNotDetected`: The gateway has not been detected for at least the configured check-in interval (typically 24, 48, or 72 hours). See troubleshooting steps to reboot the gateway. * `recommendedActionAgUnplugged`: The asset gateway is unplugged or cut. Check the gateway connection to ensure it is plugged in and has been installed correctly * `recommendedActionAgUnstablePower`: The gateway is receiving unstable power from the asset. Check that the power cable is securely connected to the gateway and the asset, and that the wiring and fuse are intact. If the issue continues, contact support. * `recommendedActionBLEDataPending`: This device has recently been installed and more data is required to calculate health. No action required. * `recommendedActionBLEHealthy`: Device is healthy. No action required. * `recommendedActionBLELowBattery`: The device battery is low. Please contact support. * `recommendedActionBLENotDetected`: The device has not been detected by a gateway in the Samsara Network for at least 30 days. Verify that the device is securely attached to the asset, not in a remote area, and minimize obstructions that may disrupt detection by nearby gateways. * `recommendedActionCcHealthy`: Device is healthy. No action required. * `recommendedActionCcLowConnectivity`: Check the device's connection and verify that it has been installed correctly. * `recommendedActionCcLowUptime`: Please ensure all cameras are physically connected to the device. * `recommendedActionCcMediaInputUptime`: Please ensure the camera is properly connected to the device. * `recommendedActionCcNeedsAttribute`: Set the Analog Camera Setup attribute to Ignition On or Reverse Only so uptime can be calculated correctly. * `recommendedActionCcNotDetected`: None * `recommendedActionCmCameraMisaligned`: The position of the road-facing dash cam is not aligned with the horizon. Video quality and AI detection may be impacted. Reposition dash cam and Test Dash Cam Positioning. * `recommendedActionCmHealthy`: Dash cam recording is healthy. No action required. * `recommendedActionCmInactive`: None * `recommendedActionCmInwardCameraObstruction`: The inward-facing dash cam does not have a clear view of the vehicle cab. Video quality and AI detection may be impacted. Remove obstruction and Test Dash Cam Positioning. * `recommendedActionCmIrregularRecording`: The dash cam shows no evidence of recording during the expected recording time over the last 30 days. Please contact Support. * `recommendedActionCmLowUptime`: The dash cam is either experiencing low recording uptime, low connectivity, or both. Please follow the troubleshooting steps and contact Support if issues persist. * `recommendedActionCmNewlyInstalledDevice`: This dash cam has recently been installed and at least 30 hours of recording time is required to calculate health. No action required. * `recommendedActionCmNotDetected`: The dash cam has not been detected within the last 30 days. Check the dash cam's connection and verify your dash cam has been installed correctly. * `recommendedActionCmOutwardCameraObstruction`: The outward-facing dash cam does not have a clear view of the road. Video quality and AI detection may be impacted Remove obstruction and Test Dash Cam Positioning. * `recommendedActionCmRecordingTimeRequired`: At least 30 hours of recording time is required to determine device health. No action required. * `recommendedActionCmVgUnplugged`: The vehicle gateway is unplugged and the dash cam health cannot be determined. Check the vehicle gateway connection and ensure it is plugged in and has been installed correctly. * `recommendedActionGatewayNewlyInstalledDevice`: This gateway has recently been installed and more data is required to calculate health. No action required. * `recommendedActionHealthy`: Asset is healthy. No action required. * `recommendedActionLowBatteryVoltage`: Asset has reported low battery voltage. Please contact support. * `recommendedActionOemNotReporting`: Data for this asset has not been received as expected. Please contact support. * `recommendedActionVehicleOff`: Asset has reported an expected power-off event, and is healthy. No action required. * `recommendedActionVgFrequentPowerLoss`: The vehicle gateway is losing power during trips. The vehicle gateway cannot function without a stable power source from the asset. Please ensure the vehicle gateway cable is securely connected to both the gateway and the vehicle port. If the issue continues, contact support for assistance. * `recommendedActionVgHealthy`: Gateway is healthy. No action required. * `recommendedActionVgMissingEldDiagnostics`: To ensure full compliance, request exchange. * `recommendedActionVgMissingEldDiagnosticsExchangeSubmitted`: Exchange submitted. Please allow 12-24 hours for exchange to appear in the orders and exchanges page. * `recommendedActionVgMissingEldDiagnosticsHardwareExchanged`: Install exchanged hardware. * `recommendedActionVgMissingEldDiagnosticsNoExchangeSubmitted`: To ensure full compliance, request exchange. * `recommendedActionVgMissingVin`: Add the VIN to your vehicle. * `recommendedActionVgNeedsReplacement`: To ensure full compliance, request exchange. * `recommendedActionVgNotDetected`: The vehicle gateway has not been detected for at least 24 hours. Check the vehicle gateway connection to ensure it is plugged in and view additional troubleshooting steps. * `recommendedActionVgVgUnplugged`: The vehicle gateway is unplugged. Check the vehicle gateway connection to ensure it is plugged in and has been installed correctly. * `unknown`: None Valid values: `recommendedActionAgHealthy`, `recommendedActionAgLowDeviceBatteryAG45`, `recommendedActionAgLowDeviceBatteryAG46`, `recommendedActionAgLowDeviceBatteryAG51`, `recommendedActionAgLowDeviceBatteryPoweredAG`, `recommendedActionAgNoGpsSignal`, `recommendedActionAgNotDetected`, `recommendedActionAgUnplugged`, `recommendedActionAgUnstablePower`, `recommendedActionBLEDataPending`, `recommendedActionBLEHealthy`, `recommendedActionBLELowBattery`, `recommendedActionBLENotDetected`, `recommendedActionCcHealthy`, `recommendedActionCcLowConnectivity`, `recommendedActionCcLowUptime`, `recommendedActionCcMediaInputUptime`, `recommendedActionCcNeedsAttribute`, `recommendedActionCcNotDetected`, `recommendedActionCmCameraMisaligned`, `recommendedActionCmHealthy`, `recommendedActionCmInactive`, `recommendedActionCmInwardCameraObstruction`, `recommendedActionCmIrregularRecording`, `recommendedActionCmLowUptime`, `recommendedActionCmNewlyInstalledDevice`, `recommendedActionCmNotDetected`, `recommendedActionCmOutwardCameraObstruction`, `recommendedActionCmRecordingTimeRequired`, `recommendedActionCmVgUnplugged`, `recommendedActionGatewayNewlyInstalledDevice`, `recommendedActionHealthy`, `recommendedActionLowBatteryVoltage`, `recommendedActionOemNotReporting`, `recommendedActionVehicleOff`, `recommendedActionVgFrequentPowerLoss`, `recommendedActionVgHealthy`, `recommendedActionVgMissingEldDiagnostics`, `recommendedActionVgMissingEldDiagnosticsExchangeSubmitted`, `recommendedActionVgMissingEldDiagnosticsHardwareExchanged`, `recommendedActionVgMissingEldDiagnosticsNoExchangeSubmitted`, `recommendedActionVgMissingVin`, `recommendedActionVgNeedsReplacement`, `recommendedActionVgNotDetected`, `recommendedActionVgVgUnplugged`, `unknown`
    - `lastConnectedTime` string, date-time: The last time the device was connected, in RFC 3339 format.
    - `lastKnownLocation` LastKnownLocationResponseResponseBody: The most recent location information for the device.
      - `id` integer: The unique ID of the address.
      - `latitude` number, double: Latitude of a location.
      - `longitude` number, double: Longitude of a location.
    - `model` 'AG24' | 'AG24EU' | 'AG26' | 'AG26EU' | 'AG45' | 'AG45EU' | 'AG46' | 'AG46EU' | 'AG46P' | 'AG46PEU' | 'AG51' | 'AG51EU' | 'AG52' | 'AG52EU' | 'AG53' | 'AG53EU' | 'AHD1' | 'AIM4' | 'AT11' | 'AT11X' | 'AT12' | 'AT12X' | 'AT13' | 'Baxter' | 'CM31' | 'CM32' | 'CM33' | 'CM34' | 'LM11' | 'OEM' | 'OEMP' | 'OEMR' | 'OEMV' | 'VG34' | 'VG34EU' | 'VG34FN' | 'VG34M' | 'VG54EU' | 'VG54NA' | 'VG55EU' | 'VG55NA', required: The product model name of the device. Valid values: `AG24`, `AG24EU`, `AG26`, `AG26EU`, `AG45`, `AG45EU`, `AG46`, `AG46EU`, `AG46P`, `AG46PEU`, `AG51`, `AG51EU`, `AG52`, `AG52EU`, `AG53`, `AG53EU`, `AHD1`, `AIM4`, `AT11`, `AT11X`, `AT12`, `AT12X`, `AT13`, `Baxter`, `CM31`, `CM32`, `CM33`, `CM34`, `LM11`, `OEM`, `OEMP`, `OEMR`, `OEMV`, `VG34`, `VG34EU`, `VG34FN`, `VG34M`, `VG54EU`, `VG54NA`, `VG55EU`, `VG55NA`
    - `serial` string, required: The serial number of the device.
    - `tags` GoaTagTinyResponseResponseBody[]: The list of [tags](https://kb.samsara.com/hc/en-us/articles/360026674631-Using-Tags-and-Tag-Nesting) associated with the Device.
      - `id` string, required: ID of the tag
      - `name` string, required: Name of the tag.
      - `parentTagId` string: If this tag is part a hierarchical tag tree, this is the ID of the parent tag, otherwise this will be omitted.
  - `pagination` GoaPaginationResponseResponseBody, required: Pagination parameters.
    - `endCursor` string, required: Cursor identifier representing the last element in the response. This value should be used in conjunction with a subsequent request's 'after' query parameter. This may be an empty string if there are no more pages left to view.
    - `hasNextPage` boolean, required: True if there are more pages of results immediately available after this endCursor.

## Other responses

- `401`: Unauthorized response.
- `404`: Not Found response.
- `405`: Method Not Allowed response.
- `413`: Content Too Large response.
- `429`: Too Many Requests response.
- `500`: Internal Server Error response.
- `501`: Not Implemented response.
- `502`: Bad Gateway response.
- `503`: Service Unavailable response.
- `504`: Gateway Timeout response.
- `default`: Bad Request response.

---

[API](https://skmtc.dev/samsara/apis/samsara-api.md) - [All operations](https://skmtc.dev/samsara/apis/samsara-api/llms.txt) - [OpenAPI document](https://skmtc.dev/samsara/apis/samsara-api/revisions/a9e35d4999be?raw)
