# Get Device

Get a device by name. To learn more about devices, read Device Concept.

RBAC Capability Required: `fleet.device.get`

## Authentication

Authorization Bearer

Bearer authentication of the form `Bearer <token>`, where token is your auth token.

## Path parameters

| Parameter      | Type   | Requirement |
|----------------|--------|-------------|
| project_name   | string | Required     |
| name           | string | Required     |

## Response

### 200 A single device

| Property     | Type           | Requirement |
|--------------|----------------|-------------|
| kind         | string         | Required    |
| metadata     | object         | Required    |
| created      | string         | Optional    |
| createdBy    | string         | Optional    |
| createdByEmail | string      | Optional    |
| displayName  | string         | Optional    |
| id           | string         | Required    |
| labels       | map            | Optional    |
| updated      | string         | Optional    |
| updatedBy    | string         | Optional    |
| updatedByEmail | string      | Optional    |
| spec         | object         | Required    |

#### Metadata Properties

- `created` (format: date-time) 
- `createdBy` (format: uuid)
- `createdByEmail`
- `displayName`
- `id` (format: uuid)
- `labels` (map from strings to string)
- `updated` (format: date-time)
- `updatedBy` (format: uuid)
- `updatedByEmail`

#### Spec Properties

| Property                | Type          | Requirement |
|-------------------------|---------------|-------------|
| autoPreloadLatestSoftware | boolean      | Optional    |
| availableNetworks       | list of objects | Required   |
| geolocation             | object         | Optional   |  
| siteName                | string       | Optional    |
| status                  | object       | Required    |

##### Available Network Properties

| Property       | Type          | Requirement |
|----------------|---------------|-------------|
| interfaceName  | string        | Required    |
| networkName    | string        | Required    |
| desiredSoftwareVersion | string   | Optional    |

##### Geolocation Properties

| Property       | Type         | Requirement |
|----------------|--------------|-------------|
| coordinates    | list of doubles | Required  |
| locationId     | string       | Optional    |
| preloadSoftwareVersion | string   | Optional    |
| shortCode      | string       | Optional    |

##### Status Properties

- `alarmSeverity` enum (0 - Clear, 1 - Info, 2 - Warning, 3 - Error, 4 - Critical)  
- `assignedFlows` (list of objects)  
- `beamHA` (object)  
- `capabilities` (object)

### Errors

#### 400 Bad Request

| Property       | Requirement |
|----------------|-------------|
| code           | Required    |
| detail         | Required    |
| extraDetail    | Optional    |
| ref            | Required    |
| status         | Required    |

#### 401 Unauthorized

#### 403 Forbidden

#### 404 Not Found

#### 429 Too Many Requests

#### 500 Internal Server Error
