Create product
post
/productionMonitoring/clientapi/v2/products
This operation creates a new instance of a product. This method supports the request header with name 'X-ORACLE-IOT-ORG', which allows targeting requests to different organizations. The value of this request header should contain the organization identifier.
Request
Supported Media Types
- application/json
Header Parameters
-
X-ORACLE-IOT-ORG: string
This method supports the request header with name 'X-ORACLE-IOT-ORG', which allows targeting requests to different organizations. The value of this request header should contain the organization identifier.
Root Schema : Product_create
Type:
Show Source
object
-
attributes(optional):
array attributes
Custom attributes provided by the user as {name, type, value} tuples.
-
category(optional):
string
Category for the product (for a product = car, this value could be SUV, sedan, etc.).
-
code(optional):
string
The optional unique id/code for the product provided by the user.
-
description(optional):
string
The description of the product.
-
extId(optional):
string
The external identifier representing the external product imported
-
id:
string
The unique identifier of the product.
-
name(optional):
string
The unique name of the product.
Nested Schema : attributes
Type:
array
Custom attributes provided by the user as {name, type, value} tuples.
Show Source
Nested Schema : Attribute_create
Type:
Show Source
object
-
dataType(optional):
string
Following types are supported: {"BOOLEAN", "INTEGER", "NUMBER", "STRING", "URI", "DATETIME"}.One of [STRING, NUMBER, BOOLEAN, INTEGER, DATETIME, URI, DATE].
-
deviceModel(optional):
string
The device model URN, applicable and must be specified when attribute type is 'device', 'sensor', 'alert'.
-
name:
string
The name of the attribute.
-
type:
string
The type of the attribute.One of [STRING, NUMBER, BOOLEAN, DATE, BINARY, DEVICE, SENSOR, ALERT, URI].
Response
Supported Media Types
- application/json
- application/vnd.oracle.resource+json;type=singular
201 Response
Successfully processed.
Root Schema : Product_receive
Type:
Show Source
object
-
attributes:
array attributes
Custom attributes provided by the user as {name, type, value} tuples.
-
category:
string
Category for the product (for a product = car, this value could be SUV, sedan, etc.).
-
code(optional):
string
The optional unique id/code for the product provided by the user.
-
description:
string
The description of the product.
-
extId:
string
The external identifier representing the external product imported
-
id:
string
The unique identifier of the product.
-
integrationId:
string
The integration identifier that imported the product
-
lastModifiedTime:
integer
The time when the product definition was last updated as milliseconds since the epoch.
-
lastModifiedTimeAsString:
integer
The time when the product definition was last updated as an ISO-8601 formatted string.
-
modifiedBy:
string
The name of the user who last modified the definition of the product.
-
name(optional):
string
The unique name of the product.
-
properties:
object properties
Additional Properties Allowed: additionalPropertiesThe machine's external entity properties as key, value pairs.
-
registeredBy:
string
The name of the user who registered this product
-
registrationTime:
integer
The time when the product was registered with the app as an epoch milliseconds.
-
registrationTimeAsString:
integer
The time when the product was registered with the app as an ISO-8601 formatted string.
-
routing:
array routing
The list of routing tasks for the product.
Nested Schema : attributes
Type:
array
Custom attributes provided by the user as {name, type, value} tuples.
Show Source
Nested Schema : properties
Type:
object
Additional Properties Allowed
Show Source
-
string
A map of the following type: Map<String, String>
The machine's external entity properties as key, value pairs.
Show Source
Nested Schema : Attribute_receive
Type:
Show Source
object
-
deviceModel:
string
The device model URN, applicable and must be specified when attribute type is 'device', 'sensor', 'alert'.
-
name:
string
The name of the attribute.
-
type:
string
The type of the attribute. One of [STRING, NUMBER, BOOLEAN, DATE, BINARY, DEVICE, SENSOR, ALERT].
400 Response
Bad Request. The request could not be understood by the server due to malformed syntax. The client SHOULD NOT repeat the request without modifications.
401 Response
Unauthorized. The request requires user authentication.
403 Response
Forbidden. The server understood the request, but is refusing to fulfill it. Authorization will not help and the request SHOULD NOT be repeated.
Examples
curl -X POST
-u <username>:<password>
-H 'Accept: application/json'
-H 'Content-Type: application/json'
https://iotserver/productionMonitoring/clientapi/v2/products
Example of Request Body
The following example shows the content of the request body in JSON format:
{
"attributes":[
{
"dataType":"Following types are supported: {'BOOLEAN', 'INTEGER', 'NUMBER', 'STRING', 'URI', 'DATETIME'}.One of [STRING, NUMBER, BOOLEAN, INTEGER, DATETIME, URI, DATE].",
"deviceModel":"The device model URN, applicable and must be specified when attribute type is 'device', 'sensor', 'alert'.",
"name":"The name of the attribute.",
"type":"The type of the attribute.One of [STRING, NUMBER, BOOLEAN, DATE, BINARY, DEVICE, SENSOR, ALERT, URI]."
}
],
"category":"Category for the product (for a product = car, this value could be SUV, sedan, etc.).",
"code":"The optional unique id/code for the product provided by the user.",
"description":"The description of the product.",
"extId":"2bc72f968bb-46b9",
"id":"16dd17c67706-4312",
"name":"The unique name of the product."
}
Example of Response Body
The following example shows the content of the response body in JSON format:
{
"attributes":[
{
"dataType":"Following types are supported: {'BOOLEAN', 'INTEGER', 'NUMBER', 'STRING', 'URI', 'DATETIME'}.One of [STRING, NUMBER, BOOLEAN, INTEGER, DATETIME, URI, DATE].",
"deviceModel":"The device model URN, applicable and must be specified when attribute type is 'device', 'sensor', 'alert'.",
"name":"The name of the attribute.",
"type":"The type of the attribute.One of [STRING, NUMBER, BOOLEAN, DATE, BINARY, DEVICE, SENSOR, ALERT, URI]."
}
],
"category":"Category for the product (for a product = car, this value could be SUV, sedan, etc.).",
"code":"The optional unique id/code for the product provided by the user.",
"description":"The description of the product.",
"extId":"2fcc2eaf1864-19d4",
"id":"1b4d2a505bc4-4cad",
"integrationId":"ebe795f162c-162",
"lastModifiedTime":1469184297746,
"lastModifiedTimeAsString":1469184297746,
"modifiedBy":"The name of the user who last modified the definition of the product.",
"name":"The unique name of the product.",
"properties":{
"properties_key1":"properties_value1",
"properties_key2":"properties_value2",
"properties_key3":"properties_value3"
},
"registeredBy":"The name of the user who registered this product",
"registrationTime":1469184297746,
"registrationTimeAsString":1469184297746,
"routing":[
"routing_1",
"routing_2",
"routing_3"
]
}
Complete cURL Example
The following example shows a complete cURL command that you can use to perform the described operation:
curl -X POST
-u <username>:<password>
-H 'Accept: application/json'
-H 'Content-Type: application/json'
-d '{"attributes":[{"dataType":"Following types are supported: {'BOOLEAN', 'INTEGER', 'NUMBER', 'STRING', 'URI', 'DATETIME'}.One of [STRING, NUMBER, BOOLEAN, INTEGER, DATETIME, URI, DATE].","deviceModel":"The device model URN, applicable and must be specified when attribute type is 'device', 'sensor', 'alert'.","name":"The name of the attribute.","type":"The type of the attribute.One of [STRING, NUMBER, BOOLEAN, DATE, BINARY, DEVICE, SENSOR, ALERT, URI]."}],"category":"Category for the product (for a product = car, this value could be SUV, sedan, etc.).","code":"The optional unique id/code for the product provided by the user.","description":"The description of the product.","extId":"2bc72f968bb-46b9","id":"16dd17c67706-4312","name":"The unique name of the product."}'
https://iotserver/productionMonitoring/clientapi/v2/products
Note that in the request,
https://iotserver
will be replaced by the name and port of your assigned IoT Cloud Service instance. The format of the Cloud Service instance is
https://myinstance-myidentitydomain.iot.us.oraclecloud.com
and the default port is 443.