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
Header Parameters
  • 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.
Body ()
Root Schema : Product_create
Type: object
Show Source
Nested Schema : attributes
Type: array
Custom attributes provided by the user as {name, type, value} tuples.
Show Source
Nested Schema : Attribute_create
Type: object
Show Source
  • Following types are supported: {"BOOLEAN", "INTEGER", "NUMBER", "STRING", "URI", "DATETIME"}.One of [STRING, NUMBER, BOOLEAN, INTEGER, DATETIME, URI, DATE].
  • The device model URN, applicable and must be specified when attribute type is 'device', 'sensor', 'alert'.
  • The name of the attribute.
  • The type of the attribute.One of [STRING, NUMBER, BOOLEAN, DATE, BINARY, DEVICE, SENSOR, ALERT, URI].
Back to Top

Response

Supported Media Types

201 Response

Successfully processed.
Body ()
Root Schema : Product_receive
Type: object
Show Source
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
  • A map of the following type: Map<String, String>
The machine's external entity properties as key, value pairs.
Show Source
Nested Schema : routing
Type: array
The list of routing tasks for the product.
Show Source
Nested Schema : Attribute_receive
Type: object
Show Source
  • The device model URN, applicable and must be specified when attribute type is 'device', 'sensor', 'alert'.
  • The name of the attribute.
  • 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.
Back to Top

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.
Back to Top