---
title: Device APIs
slug: cps-guide/mdm-epmm/device-apis
createdAt: 2026-10-06T07:45:20.622Z
---

Please note that for any of the device GET APIs, the value returned by the API corresponds to the device state at the last device check-in. If you would like to get the most up to date value, then include a [Force checkin](docId\:OJ8M9vKyywJWQuVi3FfAE) call in your work-flow.

## Get device attributes metadata

<font color="#000000">This call returns available device attributes and their types. Some fields such as </font>**devicestatus**<font color="#000000"> and </font>**deviceplatform** will have a value from a finite known set. See [Enums](docId\:mabXqcg_RrSrOMASQgkv3) for all such fields.

### HTTP Method

GET

### Request URI

/msa/v1/cps/device/$metadata

### Example response

```javascript
[
    {
        "name": "compliant", 
        "dataType": "boolean", 
        "readOnly": true
    }, 
    {
        "name": "status", 
        "dataType": "devicestatus", 
        "readOnly": true
    }, 
    {
        "name": "lastCheckInTime", 
        "dataType": "long", 
        "readOnly": true
    }, 
    {
        "name": "macAddress", 
        "dataType": "string", 
        "readOnly": true
    }, 
    {
        "name": "os", 
        "dataType": "deviceplatform", 
        "readOnly": true
    }, 
    {
        "name": "userId", 
        "dataType": "string", 
        "readOnly": true
    }, 
    {
        "name": "userUuid", 
        "dataType": "string", 
        "readOnly": true
    }, 
    {
        "name": "custom_device_attribute_1", 
        "dataType": "string", 
        "readOnly": false
    }, 
    {
        "name": "custom_device_attribute_2", 
        "dataType": "string", 
        "readOnly": false
    }
]
```

