Create Product

Create a product.

Operation Permissions

Required Authorization

Required Operation Permission

Device Management

Full Access

Request Format

POST https://{apigw-address}/connect-service/v2.1/products?action=create

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 (Body)

Name

Mandatory/Optional

Data Type

Description

productDesc

Optional

String

The product description.

biDirectionalAuth

Mandatory

Boolean

  • true = supports two-way authentication
  • false = does not support two-way authentication

modelId

Mandatory

String

The model ID which the asset belongs to. How to get modelID>>

dataFormat

Mandatory

String

Supports only two values: “Custom” and “Json”.

  • "Custom" represents the user-defined data type.
  • "Json" represents the JSON data type.

productName

Mandatory

StringI18n

The product name. For more details on the structure and locales supported, see Internationalized name struct.

productType

Mandatory

String

Supports only two values: “Device” and “Gateway”.

  • "Device" represents common product types.
  • "Gateway" represents gateway types.

dynamicActivateEnabled

Optional

Boolean

  • true = able to activate dynamically
  • false (default) = not able to activate dynamically

productTags

Optional

Map

The tags of the product. For details, see How to use tags.

Response Parameters

Name

Data Type

Description

data

String

The key of the created product.

Error Codes

Code

Description

11699

The modelId does not exist.

Samples

Request Sample

url: https://{apigw-address}/connect-service/v2.1/products?action=create&orgId=yourOrgId
method: POST
requestBody:
{
    "productDesc":"openapi_sdk_create_test",
    "biDirectionalAuth":false,
    "modelId":"AlterTest0615",
    "dataFormat":"Custom",
    "productName":{
        "defaultValue":"AlterTest0615_Product",
        "i18nValue":{}
    },
    "productType":"Device",
    "dynamicActivateEnabled":"false",
    "productTags": {
        "key1": "v1"
    }
}

Return Sample

{
    "code":0,
    "msg":"OK",
    "requestId":"522d0269-445d-4f13-be04-1424e0e2893e",
    "data":"2zp6A70r"
}

Java SDK调用示例

package com.envisioniot.enos.api.sample.connect_service.product;

import com.envision.apim.poseidon.config.PConfig;
import com.envision.apim.poseidon.core.Poseidon;
import com.envisioniot.enos.api.common.constant.common.StringI18n;
import com.envisioniot.enos.connect_service.v2_1.product.CreateProductRequest;
import com.envisioniot.enos.connect_service.v2_1.product.CreateProductResponse;

public class CreateProduct {

    public static void main(String[] args) {
        String appKey = "yourAppKey";
        String appSecret = "yourAppSecret";
        String serverUrl = "yourSeverUrl";

        String orgId = "yourOrgId";
        CreateProductRequest request = new CreateProductRequest();
        request.setOrgId(orgId);
        StringI18n productName = new StringI18n("yourProductName");
        request.setProductName(productName);
        request.setProductDesc("yourProductDesc");
        request.setBiDirectionalAuth(false);
        request.setDataFormat("Custom");
        request.setProductType("Device");
        request.setModelId("yourModelId");
        CreateProductResponse response = Poseidon.config(PConfig.init().appKey(appKey).appSecret(appSecret).debug())
                .url(serverUrl)
                .getResponse(request, CreateProductResponse.class);
    }
}