Skip to content

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.
» email 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.
» email 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.
» email 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.
» email 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