Todos os produtos
Search
Central de documentação

IoT Platform:CreateThingModel

Última atualização: Jun 26, 2026

Adiciona um recurso da Thing Specification Language (TSL) a um produto especificado. Você pode especificar informações estendidas sobre o recurso.

Limites

  • Se o produto estiver publicado, chame a operação CancelReleaseProduct para cancelar a publicação antes de executar esta operação.

  • Antes de chamar a operação, use a biblioteca json-schema para validar os parâmetros de entrada em ThingModelJson. Para mais informações, consulte Estrutura de dados do ThingModelJson.

  • Esta operação permite adicionar até 10 recursos TSL, incluindo propriedades, serviços e eventos.

  • Cada conta Alibaba Cloud pode executar no máximo 5 consultas por segundo (QPS).

    Nota

    Usuários RAM de uma conta Alibaba Cloud compartilham a cota dessa conta.

Depuração

O OpenAPI Explorer calcula automaticamente o valor da assinatura. Recomendamos usar o OpenAPI Explorer para facilitar a depuração. A ferramenta gera dinamicamente códigos de exemplo da operação para diferentes SDKs.

Parâmetros da solicitação

ParâmetroTipoObrigatórioExemploDescrição
ActionStringSimCreateThingModel

A operação a ser executada. Defina o valor como CreateThingModel.

ProductKeyStringSima1BwAGV****

A ProductKey do produto.

Visualize a ProductKey na página Product Details do console IoT Platform ou obtenha-a chamando a operação QueryProductList.

IotInstanceIdStringNãoiot-cn-0pp1n8t****

O ID da instância. Visualize o ID da instância na página Overview do console IoT Platform.

Importante
  • Se a instância tiver um ID, configure este parâmetro obrigatoriamente. A chamada falhará se ele não for definido.
  • Se a instância não tiver uma página Overview ou ID, ignore este parâmetro.

Para mais informações, consulte Visão geral.

ThingModelJsonStringNão{ "properties":[ { "identifier": "SimCardType", "extendConfig":"{...}", "dataSpecs": { "max": "1", "dataType": "INT", "unit": "mmHg", "min": "0", "step": "1" }, "std": false, "custom": true, "dataType": "INT", "rwFlag": "READ_ONLY", "productKey": "a1bPo9p****", "required": false, "customFlag": true, "name": "SIM card type" } ], "services":[...], "events":[...] }

Detalhes dos novos recursos.

Nota Especifique no máximo 10 recursos.

Exemplo:


{
  "properties": [
    {
      "custom": true,
      "dataSpecsList": [
        {
          "childDataType": "TEXT",
          "childName": "CCID number of the device SIM card",
          "dataSpecs": {
            "custom": true,
            "dataType": "TEXT",
            "length": 20
          },
          "dataType": "STRUCT",
          "identifier": "CCID",
          "name": "CCID number of the device SIM card"
        },
        {
          "childDataType": "INT",
          "childName": "Battery power",
          "dataSpecs": {
            "custom": true,
            "dataType": "INT",
            "max": "60000",
            "min": "0",
            "step": "1"
          },
          "dataType": "STRUCT",
          "identifier": "battery",
          "name": "Battery power"
        },
        {
          "childDataType": "TEXT",
          "childName": "Other information",
          "dataSpecs": {
            "custom": true,
            "dataType": "TEXT",
            "length": 1024
          },
          "dataType": "STRUCT",
          "identifier": "other_info",
          "name": "Other information"
        }
      ],
      "dataType": "STRUCT",
      "identifier": "DEV_INFO",
      "name": "Device information",
      "productKey": "a1T***",
      "propertyId": 18786548,
      "required": false,
      "rwFlag": "READ_ONLY"
    },
    {
      "custom": true,
      "dataSpecs": {
        "childDataType": "INT",
        "custom": true,
        "dataType": "ARRAY",
        "size": 1,
        "dataSpecs": {
          "custom": true,
          "dataType": "INT",
          "max": "65535",
          "min": "0",
          "step": "1",
          "unit": "ppm",
          "unitName": "Parts per million"
        }
      },
      "dataType": "ARRAY",
      "identifier": "airRH_SR",
      "name": "Dehumidifier humidity",
      "productKey": "a1T***",
      "propertyId": 18786551,
      "required": false,
      "rwFlag": "READ_ONLY"
    }
  ],
  "services": [...],
  "events": [...]
}
                                

Na estrutura properties do parâmetro ThingModelJson, use o parâmetro extendConfig para definir informações estendidas do modelo TSL. Para mais informações, consulte Estrutura de dados do ThingModelJson.

FunctionBlockIdStringNãoBatteryModule

Identificador do módulo TSL personalizado. Deve ser único no produto, ter de 1 a 30 caracteres e conter apenas letras, dígitos e sublinhados (_).

Use este parâmetro em conjunto com FunctionBlockName. Se omitido, o sistema importa o módulo padrão.

FunctionBlockNameStringNãoBattery_Module

Nome do módulo personalizado. Deve ter de 4 a 30 caracteres e conter apenas letras, dígitos e sublinhados (_).

Use este parâmetro em conjunto com FunctionBlockId. Se omitido, o sistema importa o módulo padrão.

Além dos parâmetros específicos listados acima, especifique também os parâmetros de solicitação comuns. Para mais informações, consulte Parâmetros comuns.

Parâmetros de resposta

ParâmetroTipoExemploDescrição
CodeStringiot.system.SystemException

Código de erro retornado em caso de falha. Para mais informações, consulte Códigos de erro.

ErrorMessageStringA system exception occurred.

Mensagem de erro retornada em caso de falha.

RequestIdStringE55E50B7-40EE-4B6B-8BBE-D3ED55CCF565

ID da solicitação.

SuccessBooleantrue

Indica se a chamada foi bem-sucedida.

  • true: Chamada bem-sucedida.
  • false: Falha na chamada.

Exemplos

Exemplo de solicitação

https://iot.cn-shanghai.aliyuncs.com/?Action=CreateThingModel
&ProductKey=a1bPo9p****
&ThingModelJson={"properties":[{"identifier": "SimCardType","dataSpecs": {"max": "1", "dataType": "INT","unit": "mmHg","min": "0","step": "1"},"std": false,"custom": true,"dataType": "INT","rwFlag": "READ_ONLY","productKey": "a1bPo9p****","required": false,"customFlag": true, "name": "SIM card type"}]}
&<Common request parameters>

Exemplo de resposta de sucesso

Formato XML

<CreateThingModelResponse>
  <RequestId>9E76053E-26ED-4AB4-AE58-8AFC3F1E7E8E</RequestId>
  <Success>true</Success>
</CreateThingModelResponse>

Formato JSON

{
  "RequestId": "9E76053E-26ED-4AB4-AE58-8AFC3F1E7E8E",
  "Success": true
}

Códigos de erro

Para obter uma lista de códigos de erro, visite o API Error Center.