---
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

## Changes

- **2020-08-24** `7991a5633150` — 1 info
  - the response property `message` became required for the status `200`
- **2020-07-06** `4cb2bee3a72d` — 2 info
  - added the new optional request property `allOf[#/components/schemas/DeviceBase]/locationAccuracy`
  - added the new optional request property `allOf[#/components/schemas/DeviceBase]/locationServicesAccuracyAuth`
- **2020-06-23** `d75c409678ed` — 1 info
  - added the new `HMS` enum value to the request property `allOf[#/components/schemas/DeviceBase]/transport`
- **2020-03-11** `5ed31e104b6f` — 1 info
  - the endpoint scheme security `ApplicationSecret` was added to the API

[Change history](https://skmtc.dev/notificare/apis/notificare-cloud-api/changes/device/post.md)

---

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