REST API Routes
This document contains a reference to all routes available in the RIoT Secure REST API.
/auth
A route to perform operations on determination on if the credentials of a user are valid.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"id_tenant": xxx,
"id_user": xxx,
"permissions": {
...
}
}
|
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.auth |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/global
A route to perform operations on the global data.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"keys": [ ... ],
"meta": [ ... ]
}
|
|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"keys":
{
"{key}": "{value}",
...
}
}
|
HTTP/1.1 202 Accepted |
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.global |
The GET method returns a JSON object with field names; unless the expand parameter is provided, in which case the full object is returned.
The PUT method expects a collection of categorized key-value pairs, similar to what is returned by the GET method when the expand parameter is provided. It provides the ability to perform multiple key updates at the same time, instead of doing them individually. If a key is not present in the request, the key will not be updated — if the intent is to remove the key completely a DELETE request directly on the key must be performed.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/global/keys
A route to perform operations on a collection of keys associated to the global data.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
HTTP/1.1 202 Accepted |
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.global.keys |
The PUT method expects a collection of key-value pairs, similar to what is returned by the GET method. It provides the ability to perform multiple key updates at the same time, instead of doing them individually. If a key is not present in the request, the key will not be updated — if the intent is to remove the key completely a DELETE request must be performed.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/global/keys/{keyname}
A route to perform operations on an individual key associated to the global settings.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| PUT | Content-Type: application/json Content-Length: xxxx value |
HTTP/1.1 202 Accepted |
| DELETE | HTTP/1.1 204 No Content |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, DELETE, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.global.keys.{keyname}
|
The PUT method will perform an UPSERT; if the key does not exist, it will be created, otherwise updated.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/global/meta
A route to perform operations on a collection of meta items associated to the global settings.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.global.meta |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/global/meta/{keyname}
A route to perform operations on an individual meta item associated to the global settings.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.global.meta.{keyname}
|
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/modem
A route to perform operations on a collection of modems.
| Method | Request | Response (on success) |
|---|---|---|
| POST |
Content-Type: application/json
Content-Length: xxxx
{
"keys":
{
"{key}": "{value}",
...
}
}
|
HTTP/1.1 201 Created
Content-Type: text/plain
Content-Length: xxxx
{id}
|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx [ .. ] |
|
| OPTIONS | HTTP/1.1 200 OK Allow: POST, GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.modem |
The GET method returns a JSON array of identifiers; unless the expand parameter is provided, in which case an array of full objects is returned.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/modem/{id}
A route to perform operations on a specific modem.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"id": xxx,
"keys": [ ... ],
"meta": [ ... ]
}
|
|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"keys":
{
"{key}": "{value}",
...
}
}
|
HTTP/1.1 202 Accepted |
| DELETE | HTTP/1.1 204 No Content |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, DELETE, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.modem |
The GET method returns a JSON object with field names; unless the expand parameter is provided, in which case the full object is returned.
The PUT method expects a collection of categorized key-value pairs, similar to what is returned by the GET method when the expand parameter is provided. It provides the ability to perform multiple key updates at the same time, instead of doing them individually. If a key is not present in the request, the key will not be updated — if the intent is to remove the key completely a DELETE request directly on the key must be performed.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/modem/{id}/keys
A route to perform operations on a collection of keys associated to a specific modem.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
HTTP/1.1 202 Accepted |
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.modem.keys |
The PUT method expects a collection of key-value pairs, similar to what is returned by the GET method. It provides the ability to perform multiple key updates at the same time, instead of doing them individually. If a key is not present in the request, the key will not be updated — if the intent is to remove the key completely a DELETE request must be performed.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/modem/{id}/keys/{keyname}
A route to perform operations on an individual key associated to a specific type of modem.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| PUT | Content-Type: application/json Content-Length: xxxx value |
HTTP/1.1 202 Accepted |
| DELETE | HTTP/1.1 204 No Content |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, DELETE, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.modem.keys.{keyname}
|
The PUT method will perform an UPSERT; if the key does not exist, it will be created, otherwise updated.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/modem/{id}/meta
A route to perform operations on a collection of meta items associated to a specific modem.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.modem.meta |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/modem/{id}/meta/{keyname}
A route to perform operations on an individual meta item associated to a specific type of modem.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.modem.meta.{keyname}
|
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/microcontroller
A route to perform operations on a collection of microcontrollers.
| Method | Request | Response (on success) |
|---|---|---|
| POST |
Content-Type: application/json
Content-Length: xxxx
{
"keys":
{
"{key}": "{value}",
...
}
}
|
HTTP/1.1 201 Created
Content-Type: text/plain
Content-Length: xxxx
{id}
|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx [ .. ] |
|
| OPTIONS | HTTP/1.1 200 OK Allow: POST, GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.microcontroller |
The GET method returns a JSON array of identifiers; unless the expand parameter is provided, in which case an array of full objects is returned.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/microcontroller/{id}
A route to perform operations on a specific microcontroller.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"id": xxx,
"keys": [ ... ],
"meta": [ ... ]
}
|
|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"keys":
{
"{key}": "{value}",
...
}
}
|
HTTP/1.1 202 Accepted |
| DELETE | HTTP/1.1 204 No Content |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, DELETE, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.microcontroller |
The GET method returns a JSON object with field names; unless the expand parameter is provided, in which case the full object is returned.
The PUT method expects a collection of categorized key-value pairs, similar to what is returned by the GET method when the expand parameter is provided. It provides the ability to perform multiple key updates at the same time, instead of doing them individually. If a key is not present in the request, the key will not be updated — if the intent is to remove the key completely a DELETE request directly on the key must be performed.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/microcontroller/{id}/keys
A route to perform operations on a collection of keys associated to a specific microcontroller.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
HTTP/1.1 202 Accepted |
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.microcontroller.keys |
The PUT method expects a collection of key-value pairs, similar to what is returned by the GET method. It provides the ability to perform multiple key updates at the same time, instead of doing them individually. If a key is not present in the request, the key will not be updated — if the intent is to remove the key completely a DELETE request must be performed.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/microcontroller/{id}/keys/{keyname}
A route to perform operations on an individual key associated to a specific type of microcontroller.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| PUT | Content-Type: application/json Content-Length: xxxx value |
HTTP/1.1 202 Accepted |
| DELETE | HTTP/1.1 204 No Content |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, DELETE, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.microcontroller.keys.{keyname}
|
The PUT method will perform an UPSERT; if the key does not exist, it will be created, otherwise updated.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/microcontroller/{id}/meta
A route to perform operations on a collection of meta items associated to a specific microcontroller.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.microcontroller.meta |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/microcontroller/{id}/meta/{keyname}
A route to perform operations on an individual meta item associated to a specific type of microcontroller.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.microcontroller.meta.{keyname}
|
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant
A route to perform operations on a collection of tenants.
| Method | Request | Response (on success) |
|---|---|---|
| POST |
Content-Type: application/json
Content-Length: xxxx
{
"admin_user": "yyyy",
"admin_pass": "zzzz",
"keys": {
"{key}": "{value}",
...
}
}
|
HTTP/1.1 201 Created
Content-Type: text/plain
Content-Length: xxxx
{id}
|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx [ .. ] |
|
| OPTIONS | HTTP/1.1 200 OK Allow: POST, GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant |
The POST method requires additional keys in relation to the creation of an administration user for the tenant — these are outlined in the atom structure on the schema. The admin username must be a unique email (not used by anyone else) and the password field be the result of the md5 hash which is outlined in the User Authentication section.
The GET method returns a JSON array of identifiers; unless the expand parameter is provided, in which case an array of full objects is returned.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}
A route to perform operations on a specific tenant.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"id": xxx,
"keys": [ ... ],
"user": [ ... ],
"device": [ ... ],
"packet": [ ... ],
"interface": [ ... ],
"meta": [ ... ]
}
|
|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"keys":
{
"{key}": "{value}",
...
}
}
|
HTTP/1.1 202 Accepted |
| DELETE | HTTP/1.1 204 No Content |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, DELETE, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant |
The GET method returns a JSON object with field names; unless the expand parameter is provided, in which case the full object is returned.
The PUT method expects a collection of categorized key-value pairs, similar to what is returned by the GET method when the expand parameter is provided. It provides the ability to perform multiple key updates at the same time, instead of doing them individually. If a key is not present in the request, the key will not be updated — if the intent is to remove the key completely a DELETE request directly on the key must be performed.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/keys
A route to perform operations on a collection of keys associated to a specific tenant.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
HTTP/1.1 202 Accepted |
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.keys |
The PUT method expects a collection of key-value pairs, similar to what is returned by the GET method. It provides the ability to perform multiple key updates at the same time, instead of doing them individually. If a key is not present in the request, the key will not be updated — if the intent is to remove the key completely a DELETE request must be performed.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/keys/{keyname}
A route to perform operations on an individual key associated to a specific tenant.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| PUT | Content-Type: application/json Content-Length: xxxx value |
HTTP/1.1 202 Accepted |
| DELETE | HTTP/1.1 204 No Content |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, DELETE, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.tenant.keys.{keyname}
|
The PUT method will perform an UPSERT; if the key does not exist, it will be created, otherwise updated.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/meta
A route to perform operations on a collection of meta items associated to a specific tenant.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.meta |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/meta/{keyname}
A route to perform operations on an individual meta item associated to a specific tenant.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.tenant.meta.{keyname}
|
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/user
A route to perform operations on a collection of users.
| Method | Request | Response (on success) |
|---|---|---|
| POST |
Content-Type: application/json
Content-Length: xxxx
{
"type": "{value},
"keys":
{
"{key}": "{value}",
...
}
}
|
HTTP/1.1 201 Created
Content-Type: text/plain
Content-Length: xxxx
{id}
|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx [ .. ] |
|
| OPTIONS | HTTP/1.1 200 OK Allow: POST, GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.user |
The POST method requires an additional key in relation to the creation of a user; to define the set of default user permissions that should be applied to the user on creation.
The GET method returns a JSON array of identifiers; unless the expand parameter is provided, in which case an array of full objects is returned.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/user/{id}
A route to perform operations on a specific user.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"id": xxx,
"id_tenant": xxx,
"keys": [ ... ],
"permissions": [ ... ],
"meta": [ ... ]
}
|
|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"keys": {
"{key}": "{value}",
...
},
"permissions": {
"{permission}": "{value}",
...
}
}
|
HTTP/1.1 202 Accepted |
| DELETE | HTTP/1.1 204 No Content |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, DELETE, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.user |
The GET method returns a JSON object with field names; unless the expand parameter is provided, in which case the full object is returned.
The PUT method expects a collection of categorized key-value pairs, similar to what is returned by the GET method when the expand parameter is provided. It provides the ability to perform multiple key updates at the same time, instead of doing them individually. If a key is not present in the request, the key will not be updated — if the intent is to remove the key completely a DELETE request directly on the key must be performed.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/user/{id}/keys
A route to perform operations on a collection of keys associated to a specific user.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
HTTP/1.1 202 Accepted |
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.user.keys |
The PUT method expects a collection of key-value pairs, similar to what is returned by the GET method. It provides the ability to perform multiple key updates at the same time, instead of doing them individually. If a key is not present in the request, the key will not be updated — if the intent is to remove the key completely a DELETE request must be performed.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/user/{id}/keys/{keyname}
A route to perform operations on an individual key associated to a specific user.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| PUT | Content-Type: application/json Content-Length: xxxx value |
HTTP/1.1 202 Accepted |
| DELETE | HTTP/1.1 204 No Content |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, DELETE, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.tenant.user.keys.{keyname}
|
The PUT method will perform an UPSERT; if the key does not exist, it will be created, otherwise updated.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/user/{id}/permissions
A route to perform operations on a collection of permissions associated to a specific user.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{permission}": "{value}",
...
}
|
|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"{permission}": "{value}",
...
}
|
HTTP/1.1 202 Accepted |
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.user.permissions |
The PUT method expects a collection of key-value pairs, similar to what is returned by the GET method. It provides the ability to perform multiple key updates at the same time, instead of doing them individually. If a key is not present in the request, the key will not be updated. It is not possible to remove key that defines a user permission.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/user/{id}/permissions/{permission}
A route to perform operations on an individual permission associated to a specific user.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| PUT | Content-Type: application/json Content-Length: xxxx value |
HTTP/1.1 202 Accepted |
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.tenant.user.permissions.{permission}
|
The PUT method will perform an UPSERT; if the key does not exist, it will be created, otherwise updated.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/user/{id}/meta
A route to perform operations on a collection of meta items associated to a specific user.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.user.meta |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/user/{id}/meta/{keyname}
A route to perform operations on an individual meta item associated to a specific user.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.tenant.user.meta.{keyname}
|
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/device
A route to perform operations on a collection of devices.
| Method | Request | Response (on success) |
|---|---|---|
| POST |
Content-Type: application/json
Content-Length: xxxx
{
"keys":
{
"{key}": "{value}",
...
}
}
|
HTTP/1.1 201 Created
Content-Type: text/plain
Content-Length: xxxx
{id}
|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx [ .. ] |
|
| OPTIONS | HTTP/1.1 200 OK Allow: POST, GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.device |
The GET method returns a JSON array of identifiers; unless the expand parameter is provided, in which case an array of full objects is returned.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/device/{id}
A route to perform operations on a specific device.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"id": xxx,
"id_tenant": xxx,
"keys": [ ... ],
"meta": [ ... ]
}
|
|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"keys":
{
"{key}": "{value}",
...
}
}
|
HTTP/1.1 202 Accepted |
| DELETE | HTTP/1.1 204 No Content |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, DELETE, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.device |
The GET method returns a JSON object with field names; unless the expand parameter is provided, in which case the full object is returned.
The PUT method expects a collection of categorized key-value pairs, similar to what is returned by the GET method when the expand parameter is provided. It provides the ability to perform multiple key updates at the same time, instead of doing them individually. If a key is not present in the request, the key will not be updated — if the intent is to remove the key completely a DELETE request directly on the key must be performed.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/device/{id}/keys
A route to perform operations on a collection of keys associated to a specific device.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
HTTP/1.1 202 Accepted |
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.device.keys |
The PUT method expects a collection of key-value pairs, similar to what is returned by the GET method. It provides the ability to perform multiple key updates at the same time, instead of doing them individually. If a key is not present in the request, the key will not be updated — if the intent is to remove the key completely a DELETE request must be performed.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/device/{id}/keys/{keyname}
A route to perform operations on an individual key associated to a specific device.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| PUT | Content-Type: application/json Content-Length: xxxx value |
HTTP/1.1 202 Accepted |
| DELETE | HTTP/1.1 204 No Content |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, DELETE, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.tenant.device.keys.{keyname}
|
The PUT method will perform an UPSERT; if the key does not exist, it will be created, otherwise updated.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/device/{id}/meta
A route to perform operations on a collection of meta items associated to a specific device.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.device.meta |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/device/{id}/meta/{keyname}
A route to perform operations on an individual meta item associated to a specific device.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.tenant.device.meta.{keyname}
|
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/device/{id}/info
A route to obtain information about a specific device.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.device.info |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/device/{id}/info/{keyname}
A route to obtain information about an individual key of a specific specific device.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.tenant.device.info.{keyname}
|
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/device/{id}/download_firmware
A route to perform a download operation for a core firmware file for a specific device.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: {mime-type}
Content-Length: xxxx
Content-Disposition: filename="xxxx"
...
|
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.device.download_firmware |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/device/{id}/download_installer
A route to perform a download operation for an installer firmware sketch for a specific device.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: {mime-type}
Content-Length: xxxx
Content-Disposition: filename="xxxx"
...
|
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.device.download_installer |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request. In the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued. In the event a installer firmware sketch is not defined for the device, the HTTP 422 Unprocessable Content response code will be issued.
/tenant/{id}/device/{id}/security
Service API: A route to query the security key for a device.
| Method | Request | Response (on success) |
|---|---|---|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
..
}
|
| JSON.schema | api.tenant.device.security |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error.
/tenant/{id}/device/{id}/checkin
Service API: A route to check in a device.
| Method | Request | Response (on success) |
|---|---|---|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
..
}
|
| JSON.schema | api.tenant.device.checkin |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error.
/tenant/{id}/device/{id}/fw_core
Service API: A route to request a core firmware.
| Method | Request | Response (on success) |
|---|---|---|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
..
}
|
| JSON.schema | api.tenant.device.fw_core |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error.
/tenant/{id}/device/{id}/fw_appl/{id}
Service API: A route to request an application firmware for the specified microcontroller.
| Method | Request | Response (on success) |
|---|---|---|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
..
}
|
| JSON.schema | api.tenant.device.fw_appl |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error.
/tenant/{id}/packet
A route to perform operations on a collection of packets.
| Method | Request | Response (on success) |
|---|---|---|
| POST |
Content-Type: application/json
Content-Length: xxxx
{
"keys":
{
"{key}": "{value}",
...
}
}
|
HTTP/1.1 201 Created
Content-Type: text/plain
Content-Length: xxxx
{id}
|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx [ .. ] |
|
| OPTIONS | HTTP/1.1 200 OK Allow: POST, GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.packet |
The GET method returns a JSON array of identifiers; unless the expand parameter is provided, in which case an array of full objects is returned.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/packet/{id}
A route to perform operations on a specific packet.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"id": xxx,
"id_tenant": xxx,
"keys": [ ... ],
"meta": [ ... ]
}
|
|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"keys":
{
"{key}": "{value}",
...
}
}
|
HTTP/1.1 202 Accepted |
| DELETE | HTTP/1.1 204 No Content |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, DELETE, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.packet |
The GET method returns a JSON object with field names; unless the expand parameter is provided, in which case the full object is returned.
The PUT method expects a collection of categorized key-value pairs, similar to what is returned by the GET method when the expand parameter is provided. It provides the ability to perform multiple key updates at the same time, instead of doing them individually. If a key is not present in the request, the key will not be updated — if the intent is to remove the key completely a DELETE request directly on the key must be performed.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/packet/{id}/keys
A route to perform operations on a collection of keys associated to a specific packet.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
HTTP/1.1 202 Accepted |
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.packet.keys |
The PUT method expects a collection of key-value pairs, similar to what is returned by the GET method. It provides the ability to perform multiple key updates at the same time, instead of doing them individually. If a key is not present in the request, the key will not be updated — if the intent is to remove the key completely a DELETE request must be performed.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/packet/{id}/keys/{keyname}
A route to perform operations on an individual key associated to a specific packet.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| PUT | Content-Type: application/json Content-Length: xxxx value |
HTTP/1.1 202 Accepted |
| DELETE | HTTP/1.1 204 No Content |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, DELETE, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.tenant.packet.keys.{keyname}
|
The PUT method will perform an UPSERT; if the key does not exist, it will be created, otherwise updated.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/packet/{id}/meta
A route to perform operations on a collection of meta items associated to a specific packet.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.packet.meta |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/packet/{id}/meta/{keyname}
A route to perform operations on an individual meta item associated to a specific packet.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.tenant.packet.meta.{keyname}
|
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/interface
A route to perform operations on a collection of hardware interfaces.
| Method | Request | Response (on success) |
|---|---|---|
| POST |
Content-Type: application/json
Content-Length: xxxx
{
"keys":
{
"{key}": "{value}",
...
}
}
|
HTTP/1.1 201 Created
Content-Type: text/plain
Content-Length: xxxx
{id}
|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx [ .. ] |
|
| OPTIONS | HTTP/1.1 200 OK Allow: POST, GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.interface |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/interface/{id}
A route to perform operations on a specific hardware interface.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"id": xxx,
"id_tenant": xxx,
"keys": [ ... ],
"meta": [ ... ]
}
|
|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"keys":
{
"{key}": "{value}",
...
}
}
|
HTTP/1.1 202 Accepted |
| DELETE | HTTP/1.1 204 No Content |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, DELETE, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.interface |
The GET method returns a JSON array of identifiers; unless the expand parameter is provided, in which case an array of full objects is returned.
The GET method returns a JSON object with field names; unless the expand parameter is provided, in which case the full object is returned.
The PUT method expects a collection of categorized key-value pairs, similar to what is returned by the GET method when the expand parameter is provided. It provides the ability to perform multiple key updates at the same time, instead of doing them individually. If a key is not present in the request, the key will not be updated — if the intent is to remove the key completely a DELETE request directly on the key must be performed.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/interface/{id}/keys
A route to perform operations on a collection of keys associated to a specific hardware interface.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| PUT |
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
HTTP/1.1 202 Accepted |
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.interface.keys |
The PUT method expects a collection of key-value pairs, similar to what is returned by the GET method. It provides the ability to perform multiple key updates at the same time, instead of doing them individually. If a key is not present in the request, the key will not be updated — if the intent is to remove the key completely a DELETE request must be performed.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/interface/{id}/keys/{keyname}
A route to perform operations on an individual key associated to a specific hardware interface.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| PUT | Content-Type: application/json Content-Length: xxxx value |
HTTP/1.1 202 Accepted |
| DELETE | HTTP/1.1 204 No Content |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, PUT, DELETE, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.tenant.interface.keys.{keyname}
|
The PUT method will perform an UPSERT; if the key does not exist, it will be created, otherwise updated.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/interface/{id}/meta
A route to perform operations on a collection of meta items associated to a specific hardware interface.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.interface.meta |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/interface/{id}/meta/{keyname}
A route to perform operations on an individual meta item associated to a specific hardware interface.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.tenant.interface.meta.{keyname}
|
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/firmware_appl
A route to create and query application firmwares.
| Method | Request | Response (on success) |
|---|---|---|
| POST | Content-Type: multipart/form-data Content-Disposition: name="name" Content-Disposition: name="microcontroller" Content-Disposition: name="version" Content-Disposition: name="description" Content-Disposition: name="asset"; filename="xxx" |
HTTP/1.1 201 Created
Content-Type: text/plain
Content-Length: xxxx
{name}
|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx [ .. ] |
|
| OPTIONS | HTTP/1.1 200 OK Allow: POST, GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.firmware_appl |
The GET method returns a JSON array of identifiers; unless the expand parameter is provided, in which case an array of full objects is returned.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/firmware_appl/{name}
A route to perform operations on a specific application firmware.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"name": xxx,
"id_tenant": xxx,
"info": [ ... ]
}
|
|
| DELETE | HTTP/1.1 204 No Content |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, DELETE, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.firmware_appl |
The GET method returns a JSON object with field names; unless the expand parameter is provided, in which case the full object is returned.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/firmware_appl/{name}/download
A route to perform a download operation for a specific application firmware.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: {mime-type}
Content-Length: xxxx
Content-Disposition: filename="xxxx"
...
|
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/octet-stream |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/firmware_appl/{name}/info
A route to obtain information about a specific application firmware.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.tenant.firmware_appl.info |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/tenant/{id}/firmware_appl/{name}/info/{keyname}
A route to obtain information about an individual key of a specific application firmware.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.tenant.firmware_appl.info.{keyname}
|
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/firmware_core
A route to create and query core firmwares.
| Method | Request | Response (on success) |
|---|---|---|
| POST | Content-Type: multipart/form-data Content-Disposition: name="name" Content-Disposition: name="modem" Content-Disposition: name="description" Content-Disposition: name="asset"; filename="xxx" |
HTTP/1.1 201 Created
Content-Type: text/plain
Content-Length: xxxx
{name}
|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx [ .. ] |
|
| OPTIONS | HTTP/1.1 200 OK Allow: POST, GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.firmware_core |
The GET method returns a JSON array of identifiers; unless the expand parameter is provided, in which case an array of full objects is returned.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/firmware_core/{name}
A route to perform operations on a specific core firmware.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"name": xxx,
"info": [ ... ]
}
|
|
| DELETE | HTTP/1.1 204 No Content |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, DELETE, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.firmware_core |
The GET method returns a JSON object with field names; unless the expand parameter is provided, in which case the full object is returned.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/firmware_core/{name}/download
A route to perform a download operation for a specific core firmware.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: {mime-type}
Content-Length: xxxx
Content-Disposition: filename="xxxx"
...
|
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/octet-stream |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/firmware_core/{name}/info
A route to obtain information about a specific core firmware.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.firmware_core.info |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/firmware_core/{name}/info/{keyname}
A route to obtain information about an individual key of a specific core firmware.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.firmware_core.info.{keyname}
|
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/image
A route to perform operations on a collection of images.
| Method | Request | Response (on success) |
|---|---|---|
| POST | Content-Type: multipart/form-data Content-Disposition: name="name" Content-Disposition: name="asset"; filename="xxx" |
HTTP/1.1 201 Created
Content-Type: text/plain
Content-Length: xxxx
{name}
|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx [ .. ] |
|
| OPTIONS | HTTP/1.1 200 OK Allow: POST, GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.image |
The GET method returns a JSON array of identifiers; unless the expand parameter is provided, in which case an array of full objects is returned.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/image/{name}
A route to perform operations on a specific image.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"name": xxx,
"info": [ ... ]
}
|
|
| DELETE | HTTP/1.1 204 No Content |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, DELETE, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.image |
The GET method returns a JSON object with field names; unless the expand parameter is provided, in which case the full object is returned.
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/image/{name}/download
A route to perform a download operation for a specific image.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: {mime-type}
Content-Length: xxxx
Content-Disposition: filename="xxxx"
...
|
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/octet-stream |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/image/{name}/info
A route to obtain information about a specific image.
| Method | Request | Response (on success) |
|---|---|---|
| GET |
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: xxxx
{
"{key}": "{value}",
...
}
|
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema | schema.image.info |
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.
/image/{name}/info/{keyname}
A route to obtain information about an individual key of a specific image.
| Method | Request | Response (on success) |
|---|---|---|
| GET | HTTP/1.1 200 OK Content-Type: application/json Content-Length: xxxx value |
|
| OPTIONS | HTTP/1.1 200 OK Allow: GET, OPTIONS Content-Type: application/schema+json Content-Length: xxxx |
|
| JSON.schema |
schema.image.info.{keyname}
|
In the event of error, the appropriate HTTP response code will be issued explaining the purpose of the error. Using the OPTIONS method identifies the methods that the authenticated user is permitted to request; in the event a method not allowed is requested the HTTP 405 Method Not Allowed response code will be issued.