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);
    }
}