---
title: "Register a device"
method: POST
path: "/device"
tags: ["Device"]
---

# Register a device

`POST /device`

Register a device, either new or an existing one. If a deviceID changes, send along the old deviceID in oldDeviceID property

## Request body

- DeviceCreate
  - `oldDeviceID` string — The old deviceID, whenever deviceID changes. Inbox will move to the new deviceID.
  - `appVersion` string
  - `deviceID` string
  - `deviceString` string
  - `browserName` string
  - `browserVersion` string
  - `allowedUI` boolean — Device has visible notifications enabled
  - `backgroundAppRefresh` boolean — Device has background refresh enabled (iOS only)
  - `bluetoothEnabled` boolean — Device has bluetooth enabled
  - `locationServicesAuthStatus` 'none' | 'use' | 'always' — Device has location permissions granted
  - `locationServicesAccuracyAuth` 'full' | 'reduced' — Device has location accuracy granted
  - `language` string
  - `location` Point
    - `coordinates` number[], required
    - `type` 'Point', required
  - `locationAccuracy` number
  - `altitude` number
  - `course` number
  - `speed` number
  - `osString` string
  - `osVersion` string
  - `platform` 'iOS' | 'tvOS' | 'Android' | 'Web' | 'Email' | 'SMS'
  - `sdkVersion` string
  - `timeZoneOffset` number
  - `transport` 'APNS' | 'GCM' | 'HMS' | 'WebPush' | 'WebsitePush' | 'Email' | 'SMS' | 'Notificare'
  - `userID` string — The app-defined user identifier

## Response `200`

OK

## Other responses

- `201` — Created

---

[API](https://skmtc.net/notificare/apis/notificare-cloud-api.md) · [All operations](https://skmtc.net/notificare/apis/notificare-cloud-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/notificare/notificare-cloud-api/versions/aad692b34bab/schema)
