---
title: "Register"
method: POST
path: "/auth/me/devices"
tags: ["devices"]
---

# Register

`POST /auth/me/devices`

## Request

- Base URL: `https://api.instruxi.dev/api/v1/enforcer`
- URL: `https://api.instruxi.dev/api/v1/enforcer/auth/me/devices`
- Auth: one of:
  - API key in header `Authorization`
  - API key in header `X-API-Key`

Register or refresh a push-capable device under the caller's person: provider + push_token are required, plus device_id/device_name, os_name/os_version, app_identifier/app_version, and — for signed push — public_key/key_algorithm, with free-form metadata. An unknown provider code is 400 unknown_provider.

## Request body

- InternalDeliveryHttpHandlerRegisterDeviceRequest
  - `app_identifier` string
  - `app_version` string
  - `device_id` string
  - `device_name` string
  - `key_algorithm` string
  - `metadata` object
  - `os_name` string
  - `os_version` string
  - `provider` string
  - `public_key` string
  - `push_token` string

## Response `201`

Created

- InternalDeliveryHttpHandlerDeviceResponse
  - `data` EnforcerV3InternalDomainDevicePersonDevice
    - `app_identifier` string
    - `app_version` string
    - `created_at` string
    - `device_id` string
    - `device_name` string
    - `device_type` EnforcerV3InternalDomainDeviceDeviceType
      - `code` string
      - `created_at` string
      - `display_name` string
      - `id` string
      - `updated_at` string
    - `device_type_id` string
    - `id` string
    - `key_algorithm` string
    - `last_seen_at` string
    - `metadata` object
    - `os_name` string
    - `os_version` string
    - `person_id` string
    - `public_key` string: PublicKey is the base64 Ed25519 key the device signs check-ins with, trusted on first registration (TOFU). KeyAlgorithm names the scheme.
    - `push_token` string
    - `status` string
    - `updated_at` string
  - `success` boolean

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `500`: Internal Server Error

---

[API](https://skmtc.dev/instruxi/apis/enforcer-api.md) · [All operations](https://skmtc.dev/instruxi/apis/enforcer-api/llms.txt) · [OpenAPI document](https://skmtc.dev/instruxi/apis/enforcer-api/revisions/fa82bc1becc0?raw)
