# List devices | Orion Data API v1.3

> For the complete documentation index, see [llms.txt](https://docs.oriondata.io/llms.txt)

`GET /userDevices`

**Example request (javascript, fetch)**

```js
const url = 'https://api.oriondata.io/api/userDevices?serialNumbers=imei1%2Cimei2';
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

**Example request (shell, curl)**

```sh
curl --request GET \
  --url 'https://api.oriondata.io/api/userDevices?serialNumbers=imei1%2Cimei2' \
  --header 'Authorization: Bearer <token>'
```

- Productionapi.oriondata.io/api/userDevices

Returns every Device assigned to the authenticated user, along with its sensors and soft sensors.

## Authorizations

- **[bearerAuth](https://docs.oriondata.io/api/orion-data/v1-3/#bearerauth)**

## Parameters

### Query Parameters

**serialNumbers**

Array\<string>

Filter the result to Devices with one of the supplied IMEI serial numbers. Supply as a comma-separated list.

#### Example

```
?serialNumbers=imei1%2Cimei2
```

## Responses

### 200

An array of Device objects.

application/json

Array\<object>

object

**deviceId**

The Device ID.

integer

**deviceName**

The name of the Device.

string

**reference**

The serial number of the Device. Not to be confused with `serialNumber`.

string

nullable

**serialNumber**

The IMEI number of the Device. Not to be confused with `reference`.

string

**dateInstalled**

The Device’s local date and time when it was installed.

string format: date-time

**status**

The current transmission status of the Device.

string

Allowed values: Online Offline

**lastUpload**

The UTC date and time of the most recent transmission.

string format: date-time

**latitude**

The Device’s latitude in decimal degrees.

number format: double

nullable

**longitude**

The Device’s longitude in decimal degrees.

number format: double

nullable

**batteryPercentage**

The Device’s battery percentage.

integer

**sensors**

Raw sensors on the Device.

Array\<object>

object

**sensorId**

The Sensor ID.

integer

**sensorType**

The type of sensor.

string

**uom**

The unit of measure.

string

**channelNumber**

The channel number of the sensor.

integer

**customName**

The custom display name of the sensor.

string

nullable

**scadaTag**

The SCADA tag of the sensor.

string

nullable

**softSensors**

Soft sensors on the Device.

Array\<object>

object

**softSensorId**

The Soft Sensor ID.

integer

**sensorType**

The type of sensor.

string

**uom**

The unit of measure.

string

**customName**

The custom display name of the soft sensor.

string

nullable

**scadaTag**

The SCADA tag of the soft sensor.

string

nullable

#### Example

```json
[
  {
    "deviceId": 12345,
    "deviceName": "Device Name",
    "reference": null,
    "serialNumber": "301434061907700",
    "dateInstalled": "2024-08-04T07:21:25.11",
    "status": "Online",
    "lastUpload": "2024-09-16T01:01:33.847",
    "latitude": -31.9163123,
    "longitude": 115.9301094,
    "batteryPercentage": 100,
    "sensors": [
      {
        "sensorId": 54321,
        "sensorType": "Water Level",
        "uom": "m",
        "channelNumber": 1,
        "customName": null,
        "scadaTag": null
      }
    ],
    "softSensors": [
      {
        "softSensorId": 65432,
        "sensorType": "Water Level",
        "uom": "m",
        "customName": "SensorName",
        "scadaTag": "Tag"
      }
    ]
  }
]
```

### 400

The server could not understand the request.

### 401

No valid token was provided.

### 429

Rate limit exceeded.
