Skip to content

Register a new device

POST
/devices
curl --request POST \
--url https://localhost:8080/api/v1/devices \
--header 'Authorization: <Authorization>' \
--header 'Content-Type: application/json' \
--data '{ "is_location_public": false, "is_outdoor": false, "is_public": false, "name": "Living Room Sensor" }'

Registers a device and returns its credentials. The device_key is a secret shown only once here; store it securely.

Device to register

Media typeapplication/json
object
is_location_public
boolean
Example
false
is_outdoor
boolean
Example
false
is_public
boolean
Example
false
name
required
string
<= 100 characters
Example
Living Room Sensor

Created

Media typeapplication/json
object
data
object
created_at
string
device_id
string
device_key
string
id
string
is_location_public
boolean
is_outdoor
boolean
is_public
boolean
name
string
updated_at
string
Example
{
"data": {
"device_id": "dev_9f1c8a3b4d2e4f0a5b6c7d8e9f001122",
"device_key": "sk_1a2b3c4d5e6f...store this now, it won't be shown again",
"is_location_public": false,
"is_outdoor": false,
"is_public": false,
"name": "Living Room Sensor"
}
}

Bad Request

Media typeapplication/json
object
detail
string
errors
Array<object>
object
code
string
detail
string
in
string
Allowed values: body query path
name
string
instance
string
status
integer
title
string
type
string
Example
{
"detail": "One or more request values are invalid.",
"errors": [
{
"code": "required",
"detail": "name is required",
"in": "body",
"name": "name"
}
],
"instance": "/api/v1/devices",
"status": 422,
"title": "Request validation failed",
"type": "https://docs.air-iq.net/reference/errors/#validation-error"
}

Unauthorized

Media typeapplication/json
object
detail
string
errors
Array<object>
object
code
string
detail
string
in
string
Allowed values: body query path
name
string
instance
string
status
integer
title
string
type
string
Example
{
"detail": "One or more request values are invalid.",
"errors": [
{
"code": "required",
"detail": "name is required",
"in": "body",
"name": "name"
}
],
"instance": "/api/v1/devices",
"status": 422,
"title": "Request validation failed",
"type": "https://docs.air-iq.net/reference/errors/#validation-error"
}

Request Entity Too Large

Media typeapplication/json
object
detail
string
errors
Array<object>
object
code
string
detail
string
in
string
Allowed values: body query path
name
string
instance
string
status
integer
title
string
type
string
Example
{
"detail": "One or more request values are invalid.",
"errors": [
{
"code": "required",
"detail": "name is required",
"in": "body",
"name": "name"
}
],
"instance": "/api/v1/devices",
"status": 422,
"title": "Request validation failed",
"type": "https://docs.air-iq.net/reference/errors/#validation-error"
}

Unsupported Media Type

Media typeapplication/json
object
detail
string
errors
Array<object>
object
code
string
detail
string
in
string
Allowed values: body query path
name
string
instance
string
status
integer
title
string
type
string
Example
{
"detail": "One or more request values are invalid.",
"errors": [
{
"code": "required",
"detail": "name is required",
"in": "body",
"name": "name"
}
],
"instance": "/api/v1/devices",
"status": 422,
"title": "Request validation failed",
"type": "https://docs.air-iq.net/reference/errors/#validation-error"
}

Unprocessable Entity

Media typeapplication/json
object
detail
string
errors
Array<object>
object
code
string
detail
string
in
string
Allowed values: body query path
name
string
instance
string
status
integer
title
string
type
string
Example
{
"detail": "One or more request values are invalid.",
"errors": [
{
"code": "required",
"detail": "name is required",
"in": "body",
"name": "name"
}
],
"instance": "/api/v1/devices",
"status": 422,
"title": "Request validation failed",
"type": "https://docs.air-iq.net/reference/errors/#validation-error"
}

Internal Server Error

Media typeapplication/json
object
detail
string
errors
Array<object>
object
code
string
detail
string
in
string
Allowed values: body query path
name
string
instance
string
status
integer
title
string
type
string
Example
{
"detail": "One or more request values are invalid.",
"errors": [
{
"code": "required",
"detail": "name is required",
"in": "body",
"name": "name"
}
],
"instance": "/api/v1/devices",
"status": 422,
"title": "Request validation failed",
"type": "https://docs.air-iq.net/reference/errors/#validation-error"
}