Insight API Specification
Data access and configuration for ProGlove Cloud
Authentication
Use the IdToken supplied by the Authorization response (see Authentication) as the value of the authorization header.
CORS
CORS Support
All endpoints support the OPTIONS call to allow integration with JavaScript apps by supplying permissive CORS headers.
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Default response for CORS method | none |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
200 | Access-Control-Allow-Origin | string | none | |
200 | Access-Control-Allow-Methods | string | none | |
200 | Access-Control-Allow-Headers | string | none |
Feature Calls
List of Non-standard or Pre-release Features Available to the Customer
Code samples:
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.get('/{customer_id}/features', headers = headers)
print(r.json())
GET /{customer_id}/features
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
customer_id | path | object | true | none |
Example responses:
200 Response
{
"features": [
{
"feature": "brew_coffee",
"enabled": true,
"additional_properties": {}
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | object containing the list of features | Inline |
500 | Internal Server Error | Internal Server Error | Inline |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» features | [object] | true | none | none |
»» feature | string | true | none | machine-readable identifier of the feature |
»» enabled | boolean | true | none | true if the feature is enabled, false otherwise. |
»» additional_properties | object | false | none | none |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
200 | Access-Control-Allow-Origin | string | none | |
200 | Access-Control-Allow-Methods | string | none | |
200 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Events Calls
List of Events from the Last 24 Hours
Code samples:
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.get('/{customer_id}/events', headers = headers)
print(r.json())
GET /{customer_id}/events
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
customer_id | path | number | true | none |
start_time_millis | query | number | false | Start time filtering. If not specified, Thedefault is one day prior. In milliseconds. |
end_time_millis | query | number | false | End time filtering. If not specified, default is now. In milliseconds. |
next_token | query | String | false | Used to get the next page of events, if one exists. |
limit | query | number | false | The maximum number of events to render. Default (and max possible value) is 500. |
gateway_id | query | String | false | The Gateway ID for which to retrieve events. Only events which contain the ID are returned. If this parameter is used, no pagination occurs. |
Example responses:
200 Response
{
"items": [
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"class": "event",
"type": "scan",
"created": 1557220259,
"scan_code": "1234567890",
"scan_duration": 2.34,
"scan_decode_symbology": "QR_CODE",
"device_id": "M2MR141204452",
"device_battery": 93,
"device_firmware": "0.0.1",
"device_temperature": 93,
"gateway_id": "919ebc9d-9788-4f08-93db-e238c5eaa69a",
"gateway_usecase": "Picking",
"gateway_station": "Station3"
}
],
"links": {
"next": "/events?next_token=11234"
},
"metadata": {
"description": "string",
"size": 23,
"filters": [
{
"name": "start_time_millis",
"value": 1557220259
}
]
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The list of events. | Inline |
400 | Bad Request | Malformed request. | Inline |
401 | Unauthorized | No authentication header found. | Inline |
403 | Forbidden | Access denied. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Enumerated Values
Property | Value |
---|---|
class | event |
type | scan |
type | telemetry |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
200 | Access-Control-Allow-Origin | string | none | |
200 | Access-Control-Allow-Methods | string | none | |
200 | Access-Control-Allow-Headers | string | none | |
400 | Access-Control-Allow-Origin | string | none | |
400 | Access-Control-Allow-Methods | string | none | |
400 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
403 | Access-Control-Allow-Origin | string | none | |
403 | Access-Control-Allow-Methods | string | none | |
403 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Gateway Calls
List of Gateways
Code samples:
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.get('/{customer_id}/gateways', headers = headers)
print(r.json())
GET /{customer_id}/gateways
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
next_token | Query | string | false | Used to get the next page of gateways, if one exists. |
limit | query | string | false | The maximum number of gateways to render. Default (and max possible value) is 500. |
customer_id | path | string | true | None |
Example responses:
200 Response
{
"items": [
{
"id": "919ebc9d-9788-4f08-93db-e238c5eaa69a",
"model": "Samsung Galaxy S8",
"manufacturer": "Proglove",
"class": "gateway",
"type": "stationary",
"firmware": "0.0.1",
"created": 0,
"last_updated": 0,
"usecase": "Picking",
"station": "Station3",
"thing_name": "Gateway1",
"name": "Gateway1"
}
],
"links": {
"next": "/gateways?next_token=11234"
},
"metadata": {
"description": "string",
"size": 23,
"filters": [
{
"name": "start_time_millis",
"value": 1557220259
}
]
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | List of gateways. | Inline |
401 | Unauthorized | No authentication header found. | Inline |
403 | Forbidden | Access denied. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Enumerated Values
Property | Value |
---|---|
class | gateway |
type | stationary |
type | mobile |
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | None | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 403
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
200 | Access-Control-Allow-Origin | string | none | |
200 | Access-Control-Allow-Methods | string | none | |
200 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
403 | Access-Control-Allow-Origin | string | none | |
403 | Access-Control-Allow-Methods | string | none | |
403 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Creates a New Gateway
Code samples:
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.post('/{customer_id}/gateways', headers = headers)
print(r.json())
POST /{customer_id}/gateways
Body parameter:
{
"usecase": "Picking",
"station": "Station3",
"name": "Gateway1"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | Body | object | false | none |
» usecase | Body | string | true | The usecase associated with the gateway. |
» station | Body | string | true | The station name associated with the gateway. |
» name | Body | string | true | The displayed gateway name. |
customer_id | path | string | true | none |
Example responses:
201 Response:
{
"id": "919ebc9d-9788-4f08-93db-e238c5eaa69a",
"model": "Samsung Galaxy S8",
"manufacturer": "Proglove",
"class": "gateway",
"type": "stationary",
"firmware": "0.0.1",
"created": 0,
"last_updated": 0,
"usecase": "Picking",
"station": "Station3",
"thing_name": "Gateway1",
"name": "Gateway1"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
201 | Created | The newly created gateway. | Inline |
400 | Bad Request | Malformed request. | Inline |
401 | Unauthorized | No authentication header found. | Inline |
403 | Forbidden | Access denied. | Inline |
404 | Not Found | Gateway not found. | Inline |
409 | Conflict | Gateway already exists. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Status Code 201
A device which transmits data to the backend.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» id | string | true | none | Gateway unique identifier (MARK 2, Android device). |
» model | string | false | none | Gateway model. |
» manufacturer | string | Dalse | none | The gateway manufacturer. |
» class | string | true | none | none |
» type | string | true | none | The gateway type. |
» firmware | string | true | none | The gateway firmware. |
» created | number | true | none | Time of gateway creation. |
» last_updated | number | true | none | Time of the last gateway information updated. |
» usecase | string | false | none | The usecase associated with the gateway. |
» station | string | false | none | The station name associated with the gateway. |
» thing_name | string | false | none | IoT thing name associated with this gateway. |
» name | string | true | none | The displayed gateway name. |
Enumerated Values
Property | Value |
---|---|
class | gateway |
type | stationary |
type | mobile |
Status Code 400
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 403
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 404
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 409
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
201 | ETag | integer | none | |
201 | Access-Control-Allow-Origin | string | none | |
201 | Access-Control-Allow-Methods | string | none | |
201 | Access-Control-Allow-Headers | string | none | |
400 | Access-Control-Allow-Origin | string | none | |
400 | Access-Control-Allow-Methods | string | none | |
400 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
403 | Access-Control-Allow-Origin | string | none | |
403 | Access-Control-Allow-Methods | string | none | |
403 | Access-Control-Allow-Headers | string | none | |
404 | Access-Control-Allow-Origin | string | none | |
404 | Access-Control-Allow-Methods | string | none | |
404 | Access-Control-Allow-Headers | string | none | |
409 | Access-Control-Allow-Origin | string | none | |
409 | Access-Control-Allow-Methods | string | none | |
409 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Gets the Gateway Certificate
Can be called only once. Use a POST method to avoid browser caching issues.
Code samples:
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.post('/{customer_id}/gateways/{gateway_id}/prepare-provisioning', headers = headers)
print(r.json())
POST /{customer_id}/gateways/{gateway_id}/prepare-provisioning
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
customer_id | path | string | true | none |
gateway_id | path | string(format) | true | Gateway ID (UUID). |
Example responses:
200 Response:
{
"registration_path": "string",
"token": "1BuWYYmmCO7K4baxJxB2KGJM11FCb1Ckdr5rR36LzDQ"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Information required to provision a gateway. | Inline |
401 | Unauthorized | No authentication header found. | Inline |
403 | Forbidden | Access denied or gateway does not exist. | Inline |
404 | Not Found | Gateway not found. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» registration_path | string | true | none | The endpoint to call to provision the gateway. |
» token | string | true | none | Short lived token used to authorize calls from gateways to retrieve their certificate. |
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 403
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 404
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
200 | Access-Control-Allow-Origin | string | none | |
200 | Access-Control-Allow-Methods | string | none | |
200 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
403 | Access-Control-Allow-Origin | string | none | |
403 | Access-Control-Allow-Methods | string | none | |
403 | Access-Control-Allow-Headers | string | none | |
404 | Access-Control-Allow-Origin | string | none | |
404 | Access-Control-Allow-Methods | string | none | |
404 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Unauthenticated Calls
Gets the Gateway Certificate
Can be called only once. Use a POST method to avoid browser caching issues.
Code samples:
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
r = requests.post('/provisioning', headers = headers)
print(r.json())
POST /provisioning
Body parameters:
{
"token": "1BuWYYmmCO7K4baxJxB2KGJM11FCb1Ckdr5rR36LzDQ"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | object | true | none |
» token | body | string | true | Short lived token used to authorize calls from gateways to retrieve their certificate. |
Example responses:
200 Response:
{
"mqtt_endpoint": "string",
"mqtt_topic_prefix": "string",
"certificate_common_name": "string",
"gateway": {
"id": "919ebc9d-9788-4f08-93db-e238c5eaa69a",
"model": "Samsung Galaxy S8",
"manufacturer": "Proglove",
"class": "gateway",
"type": "stationary",
"firmware": "0.0.1",
"created": 0,
"last_updated": 0,
"usecase": "Picking",
"station": "Station3",
"thing_name": "Gateway1",
"name": "Gateway1"
},
"pkcs12": "MIINYQIBAzCCDScGCSqGSIb3DQEHAaCCDRgEgg0UMIINED"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Returns the certificate, the certificate common name, and the provisioned gateway. | Inline |
401 | Unauthorized | No authentication header found. | Inline |
403 | Forbidden | Access denied or gateway does not exist. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» mqtt_endpoint | string | false | none | Address of the MQTT endpoint to which the client connects. |
» mqtt_topic_prefix | string | false | none | The device publishes MQTT messages under the topic {mqtt_topic_prefix}/gateway/{gateway_id} . |
» certificate_common_name | string | true | none | The common name of the certificate. |
» gateway | object | true | none | Gateway information. |
»» id | string | true | none | Gateway unique identifier (MARK 2, Android device). |
»» model | string | false | none | Gateway model. |
»» manufacturer | string | false | none | The gateway manufacturer. |
»» class | string | true | none | none |
»» type | string | true | none | The gateway type. |
»» firmware | string | true | none | The firmware of the gateway. |
»» created | number | true | none | Time at which the gateway was created. |
»» last_updated | number | true | none | Time of the last gateway information update. |
»» usecase | string | false | none | The usecase associated with the gateway. |
»» station | string | false | none | The station name associated with the gateway. |
»» thing_name | string | false | none | IoT thing name associated with the gateway. |
»» name | string | true | none | The displayed gateway name. |
» pkcs12 | string | true | none | The entire certificate. |
Enumerated Values
Property | Value |
---|---|
class | gateway |
type | stationary |
type | mobile |
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 403
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
200 | Access-Control-Allow-Origin | string | none | |
200 | Access-Control-Allow-Methods | string | none | |
200 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
403 | Access-Control-Allow-Origin | string | none | |
403 | Access-Control-Allow-Methods | string | none | |
403 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Generate Download URL Calls
Generates a URL to Download an Object from an S3 Bucket
By calling this endpoint, you implicitly agree on the corresponding EULA of the object.
Code samples:
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.post('/{customer_id}/generate-download-url', headers = headers)
print(r.json())
POST /{customer_id}/generate-download-url
Body parameter:
{
"eula_version": "1.1.0",
"eula_checksum": "FD23456ABC",
"asset_type": "PGCONNECT_ANDROID_APP",
"agreed_by": "john.doe@example.com",
"asset_version": "1.1.0"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | object | true | none |
» eula_version | body | string | true | Version of the EULA the user has agreed to. |
» eula_checksum | body | string | false | Checksum of the EULA the user has agreed to. Upper case characters & numbers are allowed. |
» asset_type | body | string | true | The type of the asset to download. |
» agreed_by | body | string | true | Email address of the user that agreed to EULA and initiated the download. |
» asset_version | body | string | false | Version of the asset to download, if none is provided, the latest version of the given asset type is used. |
customer_id | path | string | true | none |
Enumerated Values
Parameter | Value |
---|---|
» asset_type | PGCONNECT_ANDROID_APP |
» asset_type | TRADE_FAIR_DEMO_APP |
» asset_type | INSIGHT_MOBILE_APP |
» asset_type | MARK_FIRMWARE |
Example responses:
200 Response
{
"download_url": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The generated presigned download URL. | Inline |
400 | Bad Request | Malformed request. | Inline |
401 | Unauthorized | No authentication header found. | Inline |
404 | Not Found | Asset not found | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Status Code 200
A download URL that can be used to download the asset.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» download_url | string(string) | true | none | The URL that can be used to download the asset object. |
Status Code 400
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 404
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
200 | Access-Control-Allow-Origin | string | none | |
200 | Access-Control-Allow-Methods | string | none | |
200 | Access-Control-Allow-Headers | string | none | |
400 | Access-Control-Allow-Origin | string | none | |
400 | Access-Control-Allow-Methods | string | none | |
400 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
404 | Access-Control-Allow-Origin | string | none | |
404 | Access-Control-Allow-Methods | string | none | |
404 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Job Config Calls
List of Job Configurations
Code samples:
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.get('/{customer_id}/job-configs', headers = headers)
print(r.json())
GET /{customer_id}/job-configs
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
customer_id | path | string | true | none |
Example responses:
200 Response
{
"items": [
{
"job_config_id": "919ebc9d-9788-4f08-93db-e238c5eaa69a",
"job_name": "Packing job 1",
"created": 0,
"last_updated": 0,
"start_barcode": "1234",
"end_barcode": "5678",
"gateway_ids": [
"string"
],
"class": "jobconfig",
"version": 0
}
],
"links": {
"next": "/job-configs?next_token=11234"
},
"metadata": {
"description": "string",
"size": 23,
"filters": [
{
"name": "start_time_millis",
"value": 1557220259
}
]
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | List of job configurations. | Inline |
401 | Unauthorized | No authentication header found. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
200 | ETag | integer | none | |
200 | Access-Control-Allow-Origin | string | none | |
200 | Access-Control-Allow-Methods | string | none | |
200 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Creates a New Job Configuration
Code samples:
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.post('/{customer_id}/job-configs', headers = headers)
print(r.json())
POST /{customer_id}/job-configs
Body parameter:
{
"job_name": "Packing job 1",
"start_barcode": "1234",
"end_barcode": "5678",
"gateway_ids": [
"string"
]
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | object | true | none |
» job_name | body | string | true | The unique name of the job configuration. |
» start_barcode | body | string | true | The string that the start barcode begins with. This marks the start of the job. |
» end_barcode | body | string | true | The string that the end barcode begins with. This marks the end of the job. |
» gateway_ids | body | [string] | true | The array of gateway IDs (strings) that this job is associated with. |
customer_id | path | string | true | none |
Example responses:
201 Response
{
"job_config_id": "919ebc9d-9788-4f08-93db-e238c5eaa69a",
"job_name": "Packing job 1",
"created": 0,
"last_updated": 0,
"start_barcode": "1234",
"end_barcode": "5678",
"gateway_ids": [
"string"
],
"class": "jobconfig",
"version": 0
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
201 | Created | The newly created job configuration. | Inline |
400 | Bad Request | Malformed request. | Inline |
401 | Unauthorized | No authentication header found. | Inline |
403 | Forbidden | Access denied. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Status Code 201
A configuration for a job, including a start and end barcodes.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» job_config_id | string | true | none | Job configuration unique ID. |
» job_name | string | true | none | Unique name of job. |
» created | number | true | none | Time when the job configuration was created. |
» last_updated | number | true | none | Time when job configuration was last updated. |
» start_barcode | string | true | none | The string that the start barcode begins with. This marks the start of the job. |
» end_barcode | string | true | none | The string that the end barcode begins with. This marks the end of the job. |
» gateway_ids | [string] | true | none | The array of gateway ids (strings) that this job is associated with. |
» class | string | true | none | none |
» version | integer | true | none | The version of the job config |
Status Code 400
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 403
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
201 | Access-Control-Allow-Origin | string | none | |
201 | Access-Control-Allow-Methods | string | none | |
201 | Access-Control-Allow-Headers | string | none | |
400 | Access-Control-Allow-Origin | string | none | |
400 | Access-Control-Allow-Methods | string | none | |
400 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
403 | Access-Control-Allow-Origin | string | none | |
403 | Access-Control-Allow-Methods | string | none | |
403 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Gets the Specific Job Configuration Details
Code samples:
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.get('/{customer_id}/job-configs/{job_config_id}', headers = headers)
print(r.json())
GET /{customer_id}/job-configs/{job_config_id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
customer_id | path | string | true | none |
job_config_id | path | string(format) | true | Job ID (UUID). |
Example responses:
200 Response
{
"job_config_id": "919ebc9d-9788-4f08-93db-e238c5eaa69a",
"job_name": "Packing job 1",
"created": 0,
"last_updated": 0,
"start_barcode": "1234",
"end_barcode": "5678",
"gateway_ids": [
"string"
],
"class": "jobconfig",
"version": 0
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The requested job configuration. | Inline |
401 | Unauthorized | No authentication header found. | Inline |
404 | Not Found | Job not found. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Status Code 200
A configuration for a job, including a start and end barcodes.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» job_config_id | string | true | none | Job configuration Unique ID. |
» job_name | string | true | none | Unique name of job. |
» created | number | true | none | Time at which the job configuration was created. |
» last_updated | number | true | none | Time at which job configuration was last updated. |
» start_barcode | string | true | none | The string that the start barcode begins with. This marks the start of the job. |
» end_barcode | string | true | none | The string that the end barcode begins with. This marks the end of the job. |
» gateway_ids | [string] | true | none | The array of gateway ids (strings) that this job is associated with. |
» class | string | true | none | none |
» version | integer | true | none | The version of the job config. |
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 404
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
200 | Access-Control-Allow-Origin | string | none | |
200 | Access-Control-Allow-Methods | string | none | |
200 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
404 | Access-Control-Allow-Origin | string | none | |
404 | Access-Control-Allow-Methods | string | none | |
404 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Deletes a Job Configuration
Code sample:
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.delete('/{customer_id}/job-configs/{job_config_id}', headers = headers)
print(r.json())
DELETE /{customer_id}/job-configs/{job_config_id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
customer_id | path | string | true | none |
job_config_id | path | string(format) | true | Job ID (UUID). |
Example responses:
401 Response
{
"title": "Unauthorized",
"details": "No Authorization header was provided"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
204 | No Content | Confirmation that the job config has been deleted. | None |
401 | Unauthorized | No authentication header found. | Inline |
403 | Forbidden | Access denied. | Inline |
404 | Not Found | Job not found. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 403
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 404
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
204 | Access-Control-Allow-Origin | string | none | |
204 | Access-Control-Allow-Methods | string | none | |
204 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
403 | Access-Control-Allow-Origin | string | none | |
403 | Access-Control-Allow-Methods | string | none | |
403 | Access-Control-Allow-Headers | string | none | |
404 | Access-Control-Allow-Origin | string | none | |
404 | Access-Control-Allow-Methods | string | none | |
404 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Runs the Specific Job Config Job Analysis for the Specified Timeframe
Code samples:
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.post('/{customer_id}/job-analysis', headers = headers)
print(r.json())
POST /{customer_id}/job-analysis
Body parameter:
{
"job_config_id": "919ebc9d-9788-4f08-93db-e238c5eaa69a",
"start_time": 1557220259,
"end_time": 1557220260
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | object | true | none |
» job_config_id | body | string | true | Unique identifier for the job configuration. |
» start_time | body | number | true | Start time of the job analysis. |
» end_time | body | number | true | End time of the job analysis. |
customer_id | path | string | true | none |
Example responses:
200 Response
{
"results": [
{
"gateway_id": "string",
"jobs": [
{
"start_time": 1557220259,
"end_time": 1557220260,
"start_event_id": "string",
"end_event_id": "string"
}
]
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The result of the job analysis. | Inline |
400 | Bad Request | Malformed request. | Inline |
401 | Unauthorized | No authentication header found. | Inline |
403 | Forbidden | Access denied. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Status Code 200
Response wrapper of a job analysis.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» results | [object] | false | none | The array of jobs per gateway. |
»» gateway_id | string | false | none | none |
»» jobs | [object] | false | none | An array of jobs associated with the gateway. |
»»» start_time | number | false | none | Start time of the job. |
»»» end_time | number | false | none | End time of the job. |
»»» start_event_id | string | false | none | The ID of the event that marks the start of a job. |
»»» end_event_id | string | false | none | The ID of the event that marks the end of a job. |
Status Code 400
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 403
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
200 | Access-Control-Allow-Origin | string | none | |
200 | Access-Control-Allow-Methods | string | none | |
200 | Access-Control-Allow-Headers | string | none | |
400 | Access-Control-Allow-Origin | string | none | |
400 | Access-Control-Allow-Methods | string | none | |
400 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
403 | Access-Control-Allow-Origin | string | none | |
403 | Access-Control-Allow-Methods | string | none | |
403 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
User Calls
Gets Information about You as a User
Code samples:
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.get('/{customer_id}/me', headers = headers)
print(r.json())
GET /{customer_id}/me
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
customer_id | path | string | true | none |
Example responses:
200 Response
{
"id": "919ebc9d-9788-4f08-93db-e238c5eaa69a",
"first_name": "John",
"last_name": "Doe",
"email": "john.doe@example.com",
"created": 1557220260,
"last_updated": 1557220260,
"language": "English",
"roles": [
"ADMIN_ROLE"
],
"permissions": [
"event.read"
],
"consent_general_terms": {
"version": "1.2.3",
"timestamp": 1585727114123
},
"consent_privacy_policy": {
"version": "1.2.3",
"timestamp": 1585727114123
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Information about the user. | Inline |
401 | Unauthorized | No authentication header found. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Status Code 200
A user that can log into and use the cloud platform.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» id | string(uuid) | true | none | The unique user ID. |
» first_name | string | false | none | The first name of the user. |
» last_name | string | false | none | The last name of the user. |
string | true | none | The email address associated with the user. | |
» created | number | true | none | The time the user was created. |
» last_updated | number | true | none | The time the user was last updated. |
» language | string | false | none | none |
» roles | [string] | true | none | none |
» permissions | [string] | false | none | none |
» consent_general_terms | object¦null | false | none | none |
»» version | string | false | none | Semantic version number (semver) of the document to which the user consented. |
»» timestamp | number | false | none | number of milliseconds since 1/1/1970, 12:00:00 AM) of the consent event (UTC time.) |
» consent_privacy_policy | object¦null | false | none | none |
»» version | string | false | none | Semantic version number (semver) of the document to which the user consented. |
»» timestamp | number | false | none | number of milliseconds since 1/1/1970, 12:00:00 AM) of the consent event (UTC time.) |
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
200 | Access-Control-Allow-Origin | string | none | |
200 | Access-Control-Allow-Methods | string | none | |
200 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Creates a New User if provided with a First and Last Name, Role, and Email Address
Code samples:
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.post('/{customer_id}/users', headers = headers)
print(r.json())
POST /{customer_id}/users
Body parameter:
{
"first_name": "John",
"last_name": "Doe",
"role": "USER_ROLE",
"email": "john.doe@example.com"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | object | true | none |
» first_name | body | string | true | First name of the new user. |
» last_name | body | string | true | Last name of the new user. |
» role | body | string | true | Role of the new user. |
body | string | true | Email address associated with the new user. | |
customer_id | path | string | true | none |
Enumerated Values
Parameter | Value |
---|---|
» role | USER_ROLE |
» role | ADMIN_ROLE |
Example responses:
200 Response
{
"id": "919ebc9d-9788-4f08-93db-e238c5eaa69a",
"first_name": "John",
"last_name": "Doe",
"email": "john.doe@example.com",
"created": 1557220260,
"last_updated": 1557220260,
"language": "English",
"roles": [
"ADMIN_ROLE"
],
"permissions": [
"event.read"
],
"consent_general_terms": {
"version": "1.2.3",
"timestamp": 1585727114123
},
"consent_privacy_policy": {
"version": "1.2.3",
"timestamp": 1585727114123
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The newly created user. | Inline |
400 | Bad Request | Malformed request. | Inline |
401 | Unauthorized | No authentication header found. | Inline |
409 | Conflict | User with email already exists. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Status Code 200
A user that can log into and use the cloud platform.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» id | string(uuid) | true | none | The unique user ID. |
» first_name | string | false | none | The first name of the user. |
» last_name | string | false | none | The last name of the user. |
string | true | none | The email address associated with the user. | |
» created | number | true | none | The time the user was created. |
» last_updated | number | true | none | The time the user was last updated. |
» language | string | false | none | none |
» roles | [string] | true | none | none |
» permissions | [string] | false | none | none |
» consent_general_terms | object¦null | false | none | none |
»» version | string | false | none | Semantic version number (semver) of the document to which the user consented. |
»» timestamp | number | false | none | number of milliseconds since 1/1/1970, 12:00:00 AM) of the consent event (UTC time.) |
» consent_privacy_policy | object¦null | false | none | none |
»» version | string | false | none | Semantic version number (semver) of the document to which the user consented. |
»» timestamp | number | false | none | number of milliseconds since 1/1/1970, 12:00:00 AM) of the consent event (UTC time.) |
Status Code 400
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 409
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
200 | Access-Control-Allow-Origin | string | none | |
200 | Access-Control-Allow-Methods | string | none | |
200 | Access-Control-Allow-Headers | string | none | |
400 | Access-Control-Allow-Origin | string | none | |
400 | Access-Control-Allow-Methods | string | none | |
400 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
409 | Access-Control-Allow-Origin | string | none | |
409 | Access-Control-Allow-Methods | string | none | |
409 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Gets the List of All Users for a Customer
Code samples:
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.get('/{customer_id}/users', headers = headers)
print(r.json())
GET /{customer_id}/users
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
next_token | query | string | false | none |
customer_id | path | string | true | none |
Example responses:
200 Response
{
"items": [
{
"id": "919ebc9d-9788-4f08-93db-e238c5eaa69a",
"first_name": "John",
"last_name": "Doe",
"email": "john.doe@example.com",
"created": 1557220260,
"last_updated": 1557220260,
"language": "English",
"roles": [
"ADMIN_ROLE"
],
"permissions": [
"event.read"
],
"consent_general_terms": {
"version": "1.2.3",
"timestamp": 1585727114123
},
"consent_privacy_policy": {
"version": "1.2.3",
"timestamp": 1585727114123
}
}
],
"links": {
"next": "/users?next_token=11234"
},
"metadata": {
"description": "string",
"size": 23,
"filters": [
{
"name": "start_time_millis",
"value": 1557220259
}
]
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | All users associated with this customer. | Inline |
401 | Unauthorized | No authentication header found. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
200 | Access-Control-Allow-Origin | string | none | |
200 | Access-Control-Allow-Methods | string | none | |
200 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Gets Information about a Specific User
Code samples:
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.get('/{customer_id}/users/{user_id}', headers = headers)
print(r.json())
GET /{customer_id}/users/{user_id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
customer_id | path | string | true | none |
user_id | path | string | true | none |
Example responses:
200 Response
{
"id": "919ebc9d-9788-4f08-93db-e238c5eaa69a",
"first_name": "John",
"last_name": "Doe",
"email": "john.doe@example.com",
"created": 1557220260,
"last_updated": 1557220260,
"language": "English",
"roles": [
"ADMIN_ROLE"
],
"permissions": [
"event.read"
],
"consent_general_terms": {
"version": "1.2.3",
"timestamp": 1585727114123
},
"consent_privacy_policy": {
"version": "1.2.3",
"timestamp": 1585727114123
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Information about the user. | Inline |
401 | Unauthorized | No authentication header found. | Inline |
403 | Forbidden | Access denied. | Inline |
404 | Not Found | User not found. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Status Code 200
A user that can log into and use the cloud platform.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» id | string(uuid) | true | none | The unique user ID. |
» first_name | string | false | none | The first name of the user. |
» last_name | string | false | none | The last name of the user. |
string | true | none | The email address associated with the user. | |
» created | number | true | none | The time the user was created. |
» last_updated | number | true | none | The time the user was last updated. |
» language | string | false | none | none |
» roles | [string] | true | none | none |
» permissions | [string] | false | none | none |
» consent_general_terms | object¦null | false | none | none |
»» version | string | false | none | Semantic version number (semver) of the document to which the user consented. |
»» timestamp | number | false | none | number of milliseconds since 1/1/1970, 12:00:00 AM) of the consent event (UTC time.) |
» consent_privacy_policy | object¦null | false | none | none |
»» version | string | false | none | Semantic version number (semver) of the document to which the user consented. |
»» timestamp | number | false | none | number of milliseconds since 1/1/1970, 12:00:00 AM) of the consent event (UTC time.) |
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 403
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 404
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
200 | Access-Control-Allow-Origin | string | none | |
200 | Access-Control-Allow-Methods | string | none | |
200 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
403 | Access-Control-Allow-Origin | string | none | |
403 | Access-Control-Allow-Methods | string | none | |
403 | Access-Control-Allow-Headers | string | none | |
404 | Access-Control-Allow-Origin | string | none | |
404 | Access-Control-Allow-Methods | string | none | |
404 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Deletes the Specified User.
Code samples:
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.delete('/{customer_id}/users/{user_id}', headers = headers)
print(r.json())
DELETE /{customer_id}/users/{user_id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
customer_id | path | string | true | none |
user_id | path | string | true | none |
Example responses:
401 Response
{
"title": "Unauthorized",
"details": "No Authorization header was provided"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
204 | No Content | The user has been deleted. | None |
401 | Unauthorized | No authentication header found. | Inline |
403 | Forbidden | Access denied. | Inline |
404 | Not Found | User not found. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 403
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 404
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
204 | Access-Control-Allow-Origin | string | none | |
204 | Access-Control-Allow-Methods | string | none | |
204 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
403 | Access-Control-Allow-Origin | string | none | |
403 | Access-Control-Allow-Methods | string | none | |
403 | Access-Control-Allow-Headers | string | none | |
404 | Access-Control-Allow-Origin | string | none | |
404 | Access-Control-Allow-Methods | string | none | |
404 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Device Calls
Gets the List of Scanners
Code samples:
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.get('/{customer_id}/devices', headers = headers)
print(r.json())
GET /{customer_id}/devices
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
next_token | query | string | false | Used to get the next page of devices, if one exists. |
limit | query | string | false | The maximum number of devices to render. Default (and max possible value) is 500. |
customer_id | path | string | true | none |
Example responses:
200 Response
{
"items": [
{
"id": "M2MR101000000",
"class": "device",
"created": 0,
"last_activity_time": 0,
"last_updated": 0,
"battery": 50,
"firmware": "0.0.1",
"model": "Mark",
"manufacturer": "Workaround GmbH",
"status": "ACTIVE"
}
],
"links": {
"next": "/devices?next_token=11234"
},
"metadata": {
"description": "string",
"size": 23,
"filters": [
{
"name": "start_time_millis",
"value": 1557220259
}
]
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | List of devices. | Inline |
401 | Unauthorized | No authentication header found. | Inline |
403 | Forbidden | Access denied. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Enumerated Values
Property | Value |
---|---|
class | device |
status | ACTIVE |
status | INACTIVE |
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 403
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
200 | Access-Control-Allow-Origin | string | none | |
200 | Access-Control-Allow-Methods | string | none | |
200 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
403 | Access-Control-Allow-Origin | string | none | |
403 | Access-Control-Allow-Methods | string | none | |
403 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Device Configuration Calls
Get the Lists of Device Configurations Metadata
Code samples:
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.get('/{customer_id}/device-configs', headers = headers)
print(r.json())
GET /{customer_id}/device-configs
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
customer_id | path | string | true | none |
Example responses:
200 Response
{
"configs": [
{
"id": "asrtdgh",
"class": "device",
"name": "very important config file.",
"last_modified": 0,
"created": 0,
"file_size": 24
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | List of device configs metadata. | Inline |
401 | Unauthorized | No authentication header found. | Inline |
403 | Forbidden | Access denied. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» configs | [allOf] | true | none | none |
allOf
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
»» anonymous | object | false | none | none |
»»» id | string(uuid) | true | none | none |
»»» class | string | true | none | none |
and
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
»» anonymous | object | false | none | none |
»»» id | string | true | none | ID of the device config set by the client. |
»»» name | string | false | none | Name of the device config file. |
»»» last_modified | number | true | none | Time of the device config's last modification. |
»»» created | number | true | none | Time of the device config;'s creation. |
»»» file_size | number | true | none | The size of the config file in bytes. |
Enumerated Values
Property | Value |
---|---|
class | device |
class | event |
class | gateway |
class | job_config |
class | device_config |
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 403
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
200 | Access-Control-Allow-Origin | string | none | |
200 | Access-Control-Allow-Methods | string | none | |
200 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
403 | Access-Control-Allow-Origin | string | none | |
403 | Access-Control-Allow-Methods | string | none | |
403 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Gets a Device Configuration File
Code samples:
import requests
headers = {
'Accept': 'text/plain',
'Authorization': 'IdToken'
}
r = requests.get('/{customer_id}/device-configs/{device_config_id}', headers = headers)
print(r.json())
GET /{customer_id}/device-configs/{device_config_id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
customer_id | path | string | true | none |
device_config_id | path | string | true | Device config file ID. |
Example responses:
200 Response
"string"
401 Response
{
"title": "Unauthorized",
"details": "No Authorization header was provided"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Device config file. | string |
401 | Unauthorized | No authentication header found. | Inline |
403 | Forbidden | Access denied. | Inline |
404 | Not Found | No device config file found. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 403
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 404
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
200 | Access-Control-Allow-Origin | string | none | |
200 | Access-Control-Allow-Methods | string | none | |
200 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
403 | Access-Control-Allow-Origin | string | none | |
403 | Access-Control-Allow-Methods | string | none | |
403 | Access-Control-Allow-Headers | string | none | |
404 | Access-Control-Allow-Origin | string | none | |
404 | Access-Control-Allow-Methods | string | none | |
404 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |
Deletes a Device Configuration
Code samples:
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'IdToken'
}
r = requests.delete('/{customer_id}/device-configs/{device_config_id}', headers = headers)
print(r.json())
DELETE /{customer_id}/device-configs/{device_config_id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
customer_id | path | string | true | none |
device_config_id | path | string | true | ID of a device config file. |
Example responses:
401 Response
{
"title": "Unauthorized",
"details": "No Authorization header was provided"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
204 | No Content | Device configuration file has been deleted | None |
401 | Unauthorized | No authentication header found. | Inline |
403 | Forbidden | Access denied. | Inline |
500 | Internal Server Error | Internal Server Error. | Inline |
Response Schema
Status Code 401
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 403
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Status Code 500
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» title | string | true | none | The title of the error. |
» details | string | true | none | Gives more information about the failure reason. |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
204 | Access-Control-Allow-Origin | string | none | |
204 | Access-Control-Allow-Methods | string | none | |
204 | Access-Control-Allow-Headers | string | none | |
401 | Access-Control-Allow-Origin | string | none | |
401 | Access-Control-Allow-Methods | string | none | |
401 | Access-Control-Allow-Headers | string | none | |
403 | Access-Control-Allow-Origin | string | none | |
403 | Access-Control-Allow-Methods | string | none | |
403 | Access-Control-Allow-Headers | string | none | |
500 | Access-Control-Allow-Origin | string | none | |
500 | Access-Control-Allow-Methods | string | none | |
500 | Access-Control-Allow-Headers | string | none |