Upload Events¶
Upload the event data of a device or logic asset, including file-type data.
Operation Permissions¶
Required Authorization |
Required Operation Permission |
---|---|
Asset |
Write |
Request Format¶
POST https://{integration-address}/connect-service/v2.1/integration?action=postEvent
Note
{integration-address}:The gateway address of message integration service. Log in to the EnOS Management Console and find it in Help > Environment Information .
Request Parameters (URI)¶
Name |
Location (Path/Query) |
Mandatory/Optional |
Data Type |
Description |
---|---|---|---|---|
orgId |
Query |
Mandatory |
String |
The organization ID which the asset belongs to. How to get orgId>> |
Request Parameters (Header)¶
Name |
Mandatory/Optional |
Data Type |
Description |
---|---|---|---|
apim-accesstoken |
Mandatory |
String |
The access token obtained via token authentication. For more information, see Get Access Token |
Request Parameters (Body)¶
The format of the request body is multipart/form-data, consisting of multiple form-data sections. For a request body:
There must only be one request message. The request message takes up the space of one form-data and its format is “request form-data”. The header and body of the “request form-data” are shown in the tables below.
There can be one or multiple file form-data. If a request body contains file data, one file takes up the space of one file form-data. Its format is “file form-data”. The header of a “file form-data” is shown in the table below. If the body does not contain any file data, the body does not have to contain any file form-data.
Name |
Mandatory/Optional |
Data Type |
Description |
---|---|---|---|
Content-Disposition |
Mandatory |
Content-Disposition: form-data; name=”enos-message” |
|
Name |
Mandatory/Optional |
Data Type |
Description |
---|---|---|---|
method |
Mandatory |
String |
The request method. |
id |
Mandatory |
Integer |
The request message ID. |
version |
Mandatory |
String |
The version number. |
params |
Mandatory |
Array of Event Structs |
An array of Event Structs. See the table below for the structure of an Event Struct. |
files |
Mandatory |
Map |
The mapping between files and asset attributes. Its value is a key-value pair |
Note
Use one of the following methods to specify the device:
Include the
assetId
in the RequestInclude both
productKey
+deviceKey
in the Request
Name |
Mandatory/Optional |
Data Type |
Description |
---|---|---|---|
assetId |
Optional (See Note above) |
String |
The asset ID. How to get assetID>> |
productKey |
Optional (See Note above) |
String |
The product key. To be used with |
deviceKey |
Optional (See Note above) |
String |
The device key. To be used with |
time |
Mandatory |
Long |
The timestamp of the event data. |
events |
Mandatory |
Map |
The format is a key-value pair |
Name |
Mandatory/Optional |
Data Type |
Description |
---|---|---|---|
featureId |
Mandatory |
String |
The event ID. |
assetId |
Optional |
String |
The asset ID. |
productKey |
Optional |
String |
The product key of the asset. |
deviceKey |
Optional |
String |
The device key of the asset. |
md5 |
Optional |
String |
The MD5 of the file. |
originalFilename |
Optional |
String |
The name of the file, which will be returned when downloading. If not specified, the filename will be randomly generated. |
fileExt |
Optional |
String |
The filename extension, such as .zip and .gpg. |
fileLength |
Optional |
Long |
The size of the file in bytes. The size used will be the value of |
Name |
Mandatory/Optional |
Data Type |
Description |
---|---|---|---|
Content-Disposition |
Mandatory |
Content-Disposition: form-data; name=”enos-file”; filename=”yourFileName” |
Fixed parameter in the file form-data. Fields are separated by a semicolon (;). |
Content-Length |
Mandatory |
Long |
The size of the file in bytes. |
Response Parameters¶
Name |
Data Type |
Description |
---|---|---|
code |
Integer |
Return code of a request.
+ |
msg |
String |
The explanation to the return code. Its value is |
requestId |
String |
A unique ID to identify a request. |
Samples¶
Request Sample¶
url: https://{integration-address}/connect-service/v2.1/integration?action=postEvent&orgId=yourOrgId
method: POST
requestHeader:
{
"apim-accesstoken":"yourAccessToken"
}
requestBody:
Request message form-data
Content-Disposition: form-data; name="enos-message"
{
"method": "integration.event.post",
"id": "123",
"version": "1.1",
"params":[
{
"productKey": "productKey1",
"deviceKey": "deviceKey1",
"time": 1579580182824,
"events": {
"eventId1":{
"intParam1": 123,
"fileParam1":"local://filename1"
}
}
},
{
"assetId": "assetId2",
"time": 1579580182824,
"events": {
"eventId2":{
"intParam2": 123,
"fileParam2":"local://filename2"
}
}
}
],
"files": {
"filename1": {
"featureId": "eventId1",
"produckKey": "productKey1",
"deviceKey": "deviceKey1",
"originalFilename": "test.txt",
"fileExt": ".txt",
"md5": "0e202f9b67323d11df8a79b319a3d4f6"
},
"filename2": {
"featureId": "eventId2",
"assetId": "assetId2",
"md5": "aa8ea05bdbcbadfcda7300c65c40859f",
"fileLength": 1024000
}
}
}
File form-data
Content-Disposition: form-data; name="enos-file"; filename="filename1";
Content-Length: 1024000
<Content of file filename1>
File form-data
Content-Disposition: form-data; name="enos-file"; filename="filename2";
Content-Length: 1024000
<Content of file filename2>
Response Sample¶
{
"code":200,
"msg":"OK",
"requestId":"0b754708-5661-482e-8a9a-bc5916326d18",
"data":{}
}