Update Product


更新产品。

操作权限

需授权的资源 所需操作权限
设备管理 Full Access

请求格式

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

请求参数(URI)

名称 位置(Path/Query) 必需/可选 数据类型 描述
orgId Query 必需 String 资产所属的组织 ID。如何获取 orgId 信息>>
productKey Query 必需 String Product Key

请求参数(Body)

名称 必需/可选 数据类型 描述
productDesc 可选 String 产品的描述。
biDirectionalAuth 可选 Boolean
  • true:支持双向认证。
  • false (默认):不支持双向认证。
dynamicActivateEnabled 可选 Boolean
  • true:支持动态激活。
  • false (默认):不支持动态激活。
productName 可选 StringI18n 产品名称,如果没填 productName 将不更新。结构参见 国际化名称结构体
productTags 可选 Map 产品标签。更多信息,参见 标签的作用与表示方法
defaultValidDay 可选 Integer 此参数在该产品下的设备申请证书时使用。当设备申请证书但未指定有效期时,此参数将作为证书有效期。范围为 1 到 3650,默认值为 730。
maxValidDay 可选 Integer 当该产品下的设备申请证书时,作为设备的最大证书有效期。若超出有效期则报错,申请证书失败。范围为 1 到 3650,默认值为 1095。

响应参数

名称 数据类型 描述
data String 更新的产品的 key。

示例

请求示例

url: https://{apigw-address}/connect-service/v2.1/products?action=update&orgId=yourOrgId&productKey=yourProductKey
method: POST
requestBody:
{
        "productDesc":"test_sdk_update",
        "biDirectionalAuth":true,
        "dynamicActivateEnabled":true,
        "productName": {
                "defaultValue":"AlterTest0615_Product",
                "i18nValue":{}
        }
}

返回示例

{
        "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.UpdateProductRequset;
import com.envisioniot.enos.connect_service.v2_1.product.UpdateProductResponse;

public class UpdateProduct {

    public static void main(String[] args) {
        String appKey = "yourAppKey";
        String appSecret = "yourAppSecret";
        String serverUrl = "yourServerUrl";
        String orgId = "yourOrgId";
        UpdateProductRequset request = new UpdateProductRequset();
        request.setOrgId(orgId);
        request.setProductKey("yourProductKey");
        StringI18n productName = new StringI18n("yourProductName");
        request.setProductName(productName);
        request.setBiDirectionalAuth(true);
        request.setDynamicActivateEnabled(true);

        UpdateProductResponse response = Poseidon.config(PConfig.init().appKey(appKey).appSecret(appSecret).debug())
                .url(serverUrl)
                .getResponse(request, UpdateProductResponse.class);
    }
}