NAV Navbar
Logo
Examples

ThingPark DX Dataflow API

Welcome to the ThingPark DX Dataflow API reference documentation. The purpose of this API is to provide the best experience for all developers who intend to interface with ThingPark X for dataflow management.

To understand the DX Dataflow API, it is recommended to learn about ThingPark X Dataflows.
Before using this API, also consider reading about the DX API Platform.
If you want guidance for your first API calls, you can go to the Get Started page.
In order to get acquainted with the API, you can use the convenient online client Swagger-UI.
To use the API from your application, you can generate client code using the API’s OpenAPI contract.

Below are descriptions and examples for all operations exposed by this API.

Dataflow operations

Dataflow operations give developers the ability to manage different dataflows for ThingPark devices, e.g. Bridge dataflows.

Bridge dataflows retrieval

Bridge dataflows retrieval example

curl -X GET
-H 'Content-Type: application/json'
-H 'Accept: application/json'
-H 'Authorization: Bearer <subscriber_token>'
https://dx-api.thingpark.com/dataflow/v021/api/bridgeDataflows
[ {
  "ref" : "073f0b15-f99d-424c-9841-fa94f192eaa1",
  "id" : "myDataflow",
  "name" : "Test bridge dataflow",
  "bidirectional" : false,
  "state" : "READY",
  "generatedInfo" : {
    "executionInstances" : [ {
      "ref" : "b394e155-5a59-4787-bd74-090cf485c195",
      "deviceEUIList" : "0018A20000000004,1023B124000000056,8B9CA14500000001"
    } ]
  },
  "binder" : {
    "classRef" : "LRC_HTTP",
    "properties" : {
      "deviceEUIList" : "0018A20000000004,1023B124000000056,8B9CA14500000001"
    }
  },
  "driver" : {
    "classRef" : "AbeewayV2",
    "properties" : null
  },
  "connectors" : [ {
    "classRef" : "AzureIoTHub",
    "properties" : {
      "hostName" : "actility9.azure-devices.net",
      "sharedAccessKeyName" : "iothubowner",
      "sharedAccessKey" : "tEBsWSsJvTq9LDjlMIHvs/8yF3hV93vAxgZ2/nd1zYhW"
    }
  } ]
} ]

Retrieves the list of Bridge dataflows available in the scope.

HTTP Endpoint

GET /bridgeDataflows

Scopes

One of following is required | SUBSCRIBER

Responses

Code Type Description
200 BridgeDataflow array List of Bridge dataflows retrieved successfully.

Bridge dataflow creation

Bridge dataflow creation example

curl -X POST
-H 'Content-Type: application/json'
-H 'Accept: application/json'
-H 'Authorization: Bearer <subscriber_token>'
-d '{
  "id" : "myDataflow",
  "name" : "Test bridge dataflow",
  "bidirectional" : false,
  "binder" : {
    "classRef" : "LRC_HTTP",
    "properties" : {
      "deviceEUIList" : "0018A20000000004,1023B124000000056,8B9CA14500000001"
    }
  },
  "driver" : {
    "classRef" : "AbeewayV2"
  },
  "connectors" : [ {
    "classRef" : "AzureIoTHub",
    "properties" : {
      "hostName" : "actility9.azure-devices.net",
      "sharedAccessKeyName" : "iothubowner",
      "sharedAccessKey" : "tEBsWSsJvTq9LDjlMIHvs/8yF3hV93vAxgZ2/nd1zYhW"
    }
  } ]
}' 
https://dx-api.thingpark.com/dataflow/v021/api/bridgeDataflows
{
  "ref" : "073f0b15-f99d-424c-9841-fa94f192eaa1",
  "id" : "myDataflow",
  "name" : "Test bridge dataflow",
  "bidirectional" : false,
  "state" : "AWAITING_VALIDATION",
  "generatedInfo" : {
    "executionInstances" : [ {
      "ref" : "b394e155-5a59-4787-bd74-090cf485c195",
      "deviceEUIList" : "0018A20000000004,1023B124000000056,8B9CA14500000001"
    } ]
  },
  "binder" : {
    "classRef" : "LRC_HTTP",
    "properties" : {
      "deviceEUIList" : "0018A20000000004,1023B124000000056,8B9CA14500000001"
    }
  },
  "driver" : {
    "classRef" : "AbeewayV2",
    "properties" : null
  },
  "connectors" : [ {
    "classRef" : "AzureIoTHub",
    "properties" : {
      "hostName" : "actility9.azure-devices.net",
      "sharedAccessKeyName" : "iothubowner",
      "sharedAccessKey" : "tEBsWSsJvTq9LDjlMIHvs/8yF3hV93vAxgZ2/nd1zYhW"
    }
  } ]
}

Creates a new Bridge dataflow.

HTTP Endpoint

POST /bridgeDataflows

Scopes

One of following is required | SUBSCRIBER

Parameters

Parameter In Type Required Description
bridgeDataflow body BridgeDataflow true Contents of the Bridge dataflow to create.

Responses

Code Type Description
201 BridgeDataflow Bridge dataflow created successfully.

Bridge dataflow retrieval

Bridge dataflow retrieval example

curl -X GET
-H 'Content-Type: application/json'
-H 'Accept: application/json'
-H 'Authorization: Bearer <subscriber_token>'
https://dx-api.thingpark.com/dataflow/v021/api/bridgeDataflows/073f0b15-f99d-424c-9841-fa94f192eaa1
{
  "ref" : "073f0b15-f99d-424c-9841-fa94f192eaa1",
  "id" : "myDataflow",
  "name" : "Test bridge dataflow",
  "bidirectional" : false,
  "state" : "READY",
  "generatedInfo" : {
    "executionInstances" : [ {
      "ref" : "b394e155-5a59-4787-bd74-090cf485c195",
      "deviceEUIList" : "0018A20000000004,1023B124000000056,8B9CA14500000001"
    } ]
  },
  "binder" : {
    "classRef" : "LRC_HTTP",
    "properties" : {
      "deviceEUIList" : "0018A20000000004,1023B124000000056,8B9CA14500000001"
    }
  },
  "driver" : {
    "classRef" : "AbeewayV2",
    "properties" : null
  },
  "connectors" : [ {
    "classRef" : "AzureIoTHub",
    "properties" : {
      "hostName" : "actility9.azure-devices.net",
      "sharedAccessKeyName" : "iothubowner",
      "sharedAccessKey" : "tEBsWSsJvTq9LDjlMIHvs/8yF3hV93vAxgZ2/nd1zYhW"
    }
  } ]
}

Retrieves the Bridge dataflow corresponding to the provided order ref, if that order is within authorized scopes.

HTTP Endpoint

GET /bridgeDataflows/{bridgeDataflowRef}

Scopes

One of following is required | SUBSCRIBER

Parameters

Parameter In Type Required Description
bridgeDataflowRef path string true Ref of the Bridge dataflow to retrieve.

Responses

Code Type Description
200 BridgeDataflow Bridge dataflow retrieved successfully.

Bridge dataflow update

Bridge dataflow update example

curl -X PUT
-H 'Content-Type: application/json'
-H 'Accept: application/json'
-H 'Authorization: Bearer <subscriber_token>'
-d '{
  "id" : "myDataflow",
  "name" : "Updated bridge dataflow",
  "bidirectional" : false,
  "binder" : {
    "classRef" : "LRC_HTTP",
    "properties" : {
      "deviceEUIList" : "0018A20000000004,1023B124000000056,8B9CA14500000001,8B9CA14500000002"
    }
  },
  "driver" : {
    "classRef" : "AbeewayV2",
    "properties" : null
  },
  "connectors" : [ {
    "classRef" : "AzureIoTHub",
    "properties" : {
      "hostName" : "actility9.azure-devices.net",
      "sharedAccessKeyName" : "iothubowner",
      "sharedAccessKey" : "tEBsWSsJvTq9LDjlMIHvs/8yF3hV93vAxgZ2/nd1zYhW"
    }
  } ]
}' 
https://dx-api.thingpark.com/dataflow/v021/api/bridgeDataflows/073f0b15-f99d-424c-9841-fa94f192eaa1
{
  "ref" : "073f0b15-f99d-424c-9841-fa94f192eaa1",
  "id" : "myDataflow",
  "name" : "Updated bridge dataflow",
  "bidirectional" : false,
  "state" : "READY",
  "generatedInfo" : {
    "executionInstances" : [ {
      "ref" : "b394e155-5a59-4787-bd74-090cf485c195",
      "deviceEUIList" : "0018A20000000004,1023B124000000056,8B9CA14500000001,8B9CA14500000002"
    } ]
  },
  "binder" : {
    "classRef" : "LRC_HTTP",
    "properties" : {
      "deviceEUIList" : "0018A20000000004,1023B124000000056,8B9CA14500000001"
    }
  },
  "driver" : {
    "classRef" : "AbeewayV2",
    "properties" : null
  },
  "connectors" : [ {
    "classRef" : "AzureIoTHub",
    "properties" : {
      "hostName" : "actility9.azure-devices.net",
      "sharedAccessKeyName" : "iothubowner",
      "sharedAccessKey" : "tEBsWSsJvTq9LDjlMIHvs/8yF3hV93vAxgZ2/nd1zYhW"
    }
  } ]
}

Updates the Bridge dataflow corresponding to the provided Bridge dataflow ref, if that dataflow is within authorized scopes. Note that when updating a dataflow, all existing attributs must be provided next to your changes.

HTTP Endpoint

PUT /bridgeDataflows/{bridgeDataflowRef}

Scopes

One of following is required | SUBSCRIBER

Parameters

Parameter In Type Required Description
bridgeDataflowRef path string true Ref of the Bridge dataflow to update.
bridgeDataflow body BridgeDataflow true Contents of the Bridge dataflow to update.

Responses

Code Type Description
200 BridgeDataflow Bridge dataflow updated successfully.

Bridge dataflow deletion

Bridge dataflow delete example

curl -X DELETE
-H 'Content-Type: application/json'
-H 'Accept: application/json'
-H 'Authorization: Bearer <subscriber_token>'
https://dx-api.thingpark.com/dataflow/v021/api/bridgeDataflows/073f0b15-f99d-424c-9841-fa94f192eaa1

Deletes the Bridge dataflow corresponding to the provided Bridge dataflow ref, if that dataflow is within authorized scopes.

HTTP Endpoint

DELETE /bridgeDataflows/{bridgeDataflowRef}

Scopes

One of following is required | SUBSCRIBER

Parameters

Parameter In Type Required Description
bridgeDataflowRef path string true Ref of the Bridge dataflow to delete.

Responses

Code Type Description
204 Bridge dataflow deleted successfully.

ProcessorClass operations

Processor class operations give developers the ability to view existing classes (e.g. driver and connector) for their processors.

Binder processor classes retrieval

Binder processor classes retrieval

curl -X GET
-H 'Content-Type: application/json'
-H 'Accept: application/json'
-H 'Authorization: Bearer <subscriber_token>'
https://dx-api.thingpark.com/dataflow/v021/api/binderClasses
[ {
  "ref" : "LRC_HTTP",
  "name" : "LRC-HTTP binder",
  "description" : "Binder to associate devices with a dataflow through LRC-HTTP connections.",
  "propertyDescriptors" : [ {
    "name" : "deviceEUIList",
    "description" : "List of devices, represented as a sequence of deviceEUIs separated by commas.",
    "type" : "STRING",
    "mandatory" : true,
    "defaultValue" : null,
    "exampleValue" : "0018A20000000004, 1023B124000000056, 8B9CA14500000001",
    "confidential" : false
  } ]
} ]

Retrieves the list of system-wide processor classes providing binder (e.g. with a device) behaviour.

HTTP Endpoint

GET /binderClasses

Scopes

One of following is required | SUBSCRIBER

Responses

Code Type Description
200 ProcessorClass array List of binder processor classes retrieved successfully.

Driver processor classes retrieval

Driver processor classes retrieval

curl -X GET
-H 'Content-Type: application/json'
-H 'Accept: application/json'
-H 'Authorization: Bearer <subscriber_token>'
https://dx-api.thingpark.com/dataflow/v021/api/driverClasses
[ {
  "ref" : "AbeewayV1",
  "name" : "AbeewayV1 driver",
  "description" : "Driver to convert binary payloads of AbeewayV1 devices into JSON objects.",
  "propertyDescriptors" : [ ]
} ]

Retrieves the list of system-wide processor classes providing driver behaviour.

HTTP Endpoint

GET /driverClasses

Scopes

One of following is required | SUBSCRIBER

Responses

Code Type Description
200 ProcessorClass array List of driver processor classes retrieved successfully.

Connector processor classes retrieval

Connector processor classes retrieval

curl -X GET
-H 'Content-Type: application/json'
-H 'Accept: application/json'
-H 'Authorization: Bearer <subscriber_token>'
https://dx-api.thingpark.com/dataflow/v021/api/connectorClasses
[ {
  "ref" : "AWSIoT",
  "name" : "AWS IoT connector",
  "description" : "Connector to enable device synchronization and bidirectional message sending.",
  "propertyDescriptors" : [ {
    "name" : "sendMetadata",
    "description" : "Indicates if the uplink metadata needs to be sent along the payload.",
    "type" : "BOOLEAN",
    "mandatory" : false,
    "defaultValue" : "true",
    "exampleValue" : "false",
    "confidential" : false
  } ]
} ]

Retrieves the list of system-wide processor classes providing connector behaviour.

HTTP Endpoint

GET /connectorClasses

Scopes

One of following is required | SUBSCRIBER

Responses

Code Type Description
200 ProcessorClass array List of connector processor classes retrieved successfully.

Constant operations

Constant operations give developers the ability to manage subscriber-wide constants for their processors.

Constant maps retrieval

Constant maps retrieval

curl -X GET
-H 'Content-Type: application/json'
-H 'Accept: application/json'
-H 'Authorization: Bearer <subscriber_token>'
https://dx-api.thingpark.com/dataflow/v021/api/constantMaps
[ {
  "ref" : "3938ee8d-befd-411b-975f-18b8a4e774e6",
  "id" : "my_token_map",
  "name" : "Subscriber token map to store reusable tokens, use with e.g. ${my_token_map.aws_token}",
  "constants" : {
    "aws_token" : "lymHcNEnpOrZHnV5Q5YNGTMFNiARtAx70hPa38",
    "azure_token" : "tEBsWSgZ2nd1zYxWsJvTq9LDjlMIHvs8yF3hV93vA"
  }
} ]

Retrieves the list of constant maps (both system-provided and custom) available in the scope.

HTTP Endpoint

GET /constantMaps

Scopes

One of following is required | SUBSCRIBER

Responses

Code Type Description
200 object array List of constant maps retrieved successfully.

Constant maps creation

Constant map creation

curl -X POST
-H 'Content-Type: application/json'
-H 'Accept: application/json'
-H 'Authorization: Bearer <subscriber_token>'
-d '{
  "id" : "my_token_map",
  "name" : "Subscriber token map to store reusable tokens, use with e.g. ${my_token_map.aws_token}",
  "constants" : {
    "aws_token" : "lymHcNEnpOrZHnV5Q5YNGTMFNiARtAx70hPa38",
    "azure_token" : "tEBsWSgZ2nd1zYxWsJvTq9LDjlMIHvs8yF3hV93vA"
  }
}' 
https://dx-api.thingpark.com/dataflow/v021/api/constantMaps
{
  "ref" : "3938ee8d-befd-411b-975f-18b8a4e774e6",
  "id" : "my_token_map",
  "name" : "Subscriber token map to store reusable tokens, use with e.g. ${my_token_map.aws_token}",
  "constants" : {
    "aws_token" : "lymHcNEnpOrZHnV5Q5YNGTMFNiARtAx70hPa38",
    "azure_token" : "tEBsWSgZ2nd1zYxWsJvTq9LDjlMIHvs8yF3hV93vA"
  }
}

Creates a new custom constant map for the subscriber.

HTTP Endpoint

POST /constantMaps

Scopes

One of following is required | SUBSCRIBER

Parameters

Parameter In Type Required Description
constantMap body ConstantMap true Contents of the constant map to create.

Responses

Code Type Description
201 ConstantMap Constant map created successfully.

Constant map retrieval

Constant map retrieval

curl -X GET
-H 'Content-Type: application/json'
-H 'Accept: application/json'
-H 'Authorization: Bearer <subscriber_token>'
https://dx-api.thingpark.com/dataflow/v021/api/constantMaps/3938ee8d-befd-411b-975f-18b8a4e774e6
{
  "ref" : "3938ee8d-befd-411b-975f-18b8a4e774e6",
  "id" : "my_token_map",
  "name" : "Subscriber token map to store reusable tokens, use with e.g. ${my_token_map.aws_token}",
  "constants" : {
    "aws_token" : "lymHcNEnpOrZHnV5Q5YNGTMFNiARtAx70hPa38",
    "azure_token" : "tEBsWSgZ2nd1zYxWsJvTq9LDjlMIHvs8yF3hV93vA"
  }
}

Retrieves the constant map corresponding to the provided constant map ref..

HTTP Endpoint

GET /constantMaps/{constantMapRef}

Scopes

One of following is required | SUBSCRIBER

Parameters

Parameter In Type Required Description
constantMapRef path string true Ref of the constant map to retrieve.

Responses

Code Type Description
200 ConstantMap Constant map retrieved successfully.

Constant map update

Constant map update

curl -X PUT
-H 'Content-Type: application/json'
-H 'Accept: application/json'
-H 'Authorization: Bearer <subscriber_token>'
-d '{
  "id" : "my_token_map",
  "name" : "Updated Subscriber token map to store reusable tokens",
  "constants" : {
    "aws_token" : "lymHcNEnpOrZHnV5Q5YNGTMFNiARtAx70hPa38",
    "azure_token" : "tEBsWSgZ2nd1zYxWsJvTq9LDjlMIHvs8yF3hV93vA",
    "watson_token" : "5YEpbya8Zxa9uu54my"
  }
}' 
https://dx-api.thingpark.com/dataflow/v021/api/constantMaps/3938ee8d-befd-411b-975f-18b8a4e774e6
{
  "ref" : "3938ee8d-befd-411b-975f-18b8a4e774e6",
  "id" : "my_token_map",
  "name" : "Updated Subscriber token map to store reusable tokens",
  "constants" : {
    "aws_token" : "lymHcNEnpOrZHnV5Q5YNGTMFNiARtAx70hPa38",
    "azure_token" : "tEBsWSgZ2nd1zYxWsJvTq9LDjlMIHvs8yF3hV93vA",
    "watson_token" : "5YEpbya8Zxa9uu54my"
  }
}

Updates the constant map corresponding to the provided constant map ref. This is only authorized if the constant map has been created by the subscriber (not provided by the system).

HTTP Endpoint

PUT /constantMaps/{constantMapRef}

Scopes

One of following is required | SUBSCRIBER

Parameters

Parameter In Type Required Description
constantMapRef path string true Ref of the constant map to update.
constantMap body ConstantMap true Contents of the constant map to update.

Responses

Code Type Description
200 ConstantMap Constant map updated successfully.

Constant map deletion

Constant map deletion

curl -X DELETE
-H 'Content-Type: application/json'
-H 'Accept: application/json'
-H 'Authorization: Bearer <subscriber_token>'
https://dx-api.thingpark.com/dataflow/v021/api/constantMaps/3938ee8d-befd-411b-975f-18b8a4e774e6

Deletes the constant map corresponding to the provided constant map ref. This is only authorized if the constant map has been created by the subscriber (not provided by the system).

HTTP Endpoint

DELETE /constantMaps/{constantMapRef}

Scopes

One of following is required | SUBSCRIBER

Parameters

Parameter In Type Required Description
constantMapRef path string true Ref of the constant map to delete.

Responses

Code Type Description
204 Constant map deleted successfully.

Event operations

Event operations give developers the ability to monitor events related to dataflows and their instances.

Dataflow events retrieval

Event retrieval example

curl -X GET
-H 'Content-Type: application/json'
-H 'Accept: application/json'
-H 'Authorization: Bearer <subscriber_token>'
https://dx-api.thingpark.com/dataflow/v021/api/events
[ {
  "message" : "Dataflow instance is starting",
  "date" : "2017-06-16T08:40:18.183Z",
  "dataflowRef" : "e58f5ccb-1797-4473-88b8-e02d6d5783ce",
  "dataflowInstanceRef" : "2d3ff2ed-7079-41d1-b72b-2df46d9faa15",
  "type" : "INIT_BEGIN"
}, {
  "message" : "Dataflow instance has been started with success",
  "date" : "2017-06-16T08:40:22.728Z",
  "dataflowRef" : "e58f5ccb-1797-4473-88b8-e02d6d5783ce",
  "dataflowInstanceRef" : "2d3ff2ed-7079-41d1-b72b-2df46d9faa15",
  "type" : "INIT_SUCCESS"
} ]

Retrieves the list of events for all configured dataflows in scope.

HTTP Endpoint

GET /events

Scopes

One of following is required | SUBSCRIBER

Parameters

Parameter In Type Required Description
dataflowRef query string false Ref of the dataflow for which events should be retrieved.

Responses

Code Type Description
200 Event array List of events retrieved successfully.

Uplink operations

Uplink operations give developers the ability to process uplink device messages through configured dataflows.

Uplink sending

curl -X POST
-H 'Content-Type: application/json'
-H 'Accept: application/json'
-H 'Authorization: Bearer <subscriber_token>'
-d '{
  "Time" : "2016-08-26T17:05:25.178+02:00",
  "DevEUI" : "0018B20000000713",
  "FPort" : "2",
  "payload_hex" : "7b2274696d65223a2232303a31343a3335222c2264617461223a32332e327d"
}' 
https://dx-api.thingpark.com/dataflow/v021/api/uplinkMessages

Endpoint to be used by the LRC to push uplink data in order to use ThingPark X dataflows.

HTTP Endpoint

POST /uplinkMessages

Parameters

Parameter In Type Required Description
data body string true Uplink data frame in ThingPark XML or JSON format.

Responses

Code Type Description
200 Data received but ignored (ack).
201 Data received and processed successfully.

Resources

BridgeDataflow

Resource representing a dataflow configuration template for a DX Bridge instance.

Attribute Type Description
ref string Ref of the dataflow. Generated by the system upon creation.
id string Id of the dataflow. Note that this attribute can’t be changed after creation.
name string Name of the dataflow.
bidirectional boolean If true, the dataflow will process both uplink messages and downlink messages. If false, the dataflow will only process uplink messages (with optimized performance). Default is false.
disabled boolean If true, the dataflow is not in use. Default is false.
state string Read-only attribute to indicate the current state of the dataflow. Possible values are 'AWAITING_VALIDATION’ (waiting to be validated for deployment), 'AWAITING_UPDATE’ (waiting for the execution instance to be updated), 'READY’ (deployed and ready to be used), 'DEPLOY_ERROR’ (could not be deployed due to an error) or 'DISABLED’ (dataflow has been disabled by subscriber or Actility Operations team).
generatedInfo DataflowGeneratedInfo Generated read-only dataflow information.
binder Processor Binder processor of the Bridge dataflow.
driver Processor Driver processor of the Bridge dataflow.
connectors Processor array List of connector processors of the Bridge dataflow.

ConstantMap

Resource representing a constant map, i.e. a subscriber-wide key-value map which can be reused across processor definitions through expressions (using JSP 2.0 expression language format).

Attribute Type Description
ref string Ref of the constant map. Generated by the system upon creation.
name string Name of the constant map.
id string Id of the constant map. This id must not contain spaces nor special characters.
constants object Set of keys/values of the constant map. The keys must not contain spaces nor special characters.

Dataflow

Resource representing a generic dataflow configuration.

Attribute Type Description
ref string Ref of the dataflow. Generated by the system upon creation.
id string Id of the dataflow. Note that this attribute can’t be changed after creation.
name string Name of the dataflow.
bidirectional boolean If true, the dataflow will process both uplink messages and downlink messages. If false, the dataflow will only process uplink messages (with optimized performance). Default is false.
disabled boolean If true, the dataflow is not in use. Default is false.
state string Read-only attribute to indicate the current state of the dataflow. Possible values are 'AWAITING_VALIDATION’ (waiting to be validated for deployment), 'AWAITING_UPDATE’ (waiting for the execution instance to be updated), 'READY’ (deployed and ready to be used), 'DEPLOY_ERROR’ (could not be deployed due to an error) or 'DISABLED’ (dataflow has been disabled by subscriber or Actility Operations team).
generatedInfo DataflowGeneratedInfo Generated read-only dataflow information.

DataflowExecutionInstance

Resource representing a dataflow execution instance, i.e. a standalone container responsible for executing a specific dataflow for a subset of devices.

Attribute Type Description
ref string Ref of the dataflow instance.
deviceEUIList string List of devices managed by the dataflow instance. Wildcard ’*’ means all devices of the dataflow are associated with this instance.

DataflowGeneratedInfo

Resource representing generated information about the dataflow.

Attribute Type Description
executionInstances DataflowExecutionInstance array List of execution instances for the dataflow.

Event

Resource representing an event related to a dataflow.

Attribute Type Description
message string Message of the occurred event.
date string Date on which the event occurred in ISO 8601 format.
dataflowRef string Ref of the dataflow for which this event occurred.
dataflowInstanceRef string Ref of the dataflow execution instance for which this event occurred.
type string Indicates the type of the event. Possible values are 'BOOT_START’ (the dataflow instance started to boot), 'BOOT_SUCCESS’ (the dataflow instance booted successfully), 'BOOT_ERROR’ (an error occurred during the dataflow instance boot), 'UPDATE_START’ (the dataflow instance started to update its configuration), 'UPDATE_SUCCESS’ (the dataflow instance updated its configuration successfully), 'UPDATE_ERROR’ (an error occurred during the dataflow instance update), 'LINK_ERROR’ (an error occurred during an uplink or a downlink), 'DEVICE_NOT_SUPPORTED’ (the device is not supported).

Processor

Resource representing a processor, i.e. a logical component which takes some data in, processes it in some way, eventually passes it out to another processor.

Attribute Type Description
classRef string Class ref of the processor, i.e. to define the processor behaviour and expected properties. Must be a valid ref from the list of system-wide processor classes.
properties object Map of properties to be used by the processor. The list of expected properties depend on the selected processor class ref. Property values MUST be provided as strings, regardless of the type specified in the class property descriptor (which is used for validation). Expressions (using JSP 2.0 expression language format) can also be used for values, e.g. in order to use constants (’${constant.name}’).

ProcessorClass

Resource representing a processor class, i.e. a system-wide class which defines the behaviour and the expected properties of a processor. Every processor must be attached to a valid processor class through a classRef.

Attribute Type Description
ref string Ref of the processor class. Generated by the system upon creation.
name string Name of the processor class.
description string Description of the processor class.
propertyDescriptors PropertyDescriptor array Descriptors of the expected properties for a processor attached to this class.

PropertyDescriptor

Resource representing a descriptor of a processor property.

Attribute Type Description
name string Technical name of the property, e.g. 'hostname’ or 'enableSecurity’.
label string User-friendly label of the property, e.g. 'Downlink Validity Time’.
description string Description of the property.
type string Type of the property, restricts what can be provided as value (to be used for upfront validation). Possible types are 'STRING’, 'INTEGER’ and 'BOOLEAN’. Note that expressions (e.g.’${constant.name}’) are always accepted.
mandatory boolean Indicates if the property is mandatory.
defaultValue string Default value of the property.
exampleValue string Example value for the property.
confidential boolean Indicates if the property is confidential (i.e. should not be displayed when retrieving processor properties).