Ajoute une fonctionnalité du langage de spécification des objets (TSL) à un produit donné. Vous pouvez également spécifier les informations étendues relatives à cette fonctionnalité.
Limites
Si le produit est publié, appelez l'opération CancelReleaseProduct pour annuler sa publication avant d'appeler la présente opération.
Avant d'appeler l'opération, utilisez la bibliothèque json-schema pour valider les paramètres d'entrée contenus dans ThingModelJson. Pour plus d'informations, consultez la rubrique Structure des données de ThingModelJson.
Cette opération permet d'ajouter au maximum 10 fonctionnalités TSL, qui incluent les propriétés, les services et les événements.
-
Chaque compte Alibaba Cloud peut effectuer au maximum 5 requêtes par seconde (QPS).
RemarqueLes utilisateurs RAM d'un compte Alibaba Cloud partagent le quota de ce compte.
Débogage
OpenAPI Explorer calcule automatiquement la valeur de signature. Pour plus de commodité, nous vous recommandons d'appeler cette opération dans OpenAPI Explorer. OpenAPI Explorer génère dynamiquement un exemple de code pour différents SDK.
Paramètres de requête
| Paramètre | Type | Obligatoire | Exemple | Description |
| Action | String | Oui | CreateThingModel | Opération à exécuter. Définissez la valeur sur CreateThingModel. |
| ProductKey | String | Oui | a1BwAGV**** | Le ProductKey du produit. Vous pouvez afficher le ProductKey sur la page Détails du produit de la console IoT Platform. Vous pouvez également obtenir le ProductKey en appelant l'opération QueryProductList. |
| IotInstanceId | String | Non | iot-cn-0pp1n8t**** | ID de l'instance. Vous pouvez consulter l'ID de l'instance sur la page Overview de la console IoT Platform. Important
Pour plus d'informations, consultez la rubrique Overview. |
| ThingModelJson | String | Non | { "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":[...] } | Détails des nouvelles fonctionnalités. Remarque Vous pouvez spécifier au maximum 10 fonctionnalités. Exemple : Dans la structure properties du paramètre ThingModelJson, vous pouvez utiliser le paramètre extendConfig pour définir les informations étendues du modèle TSL. Pour plus d'informations, consultez la rubrique Data structure of ThingModelJson. |
| FunctionBlockId | String | Non | BatteryModule | Identifiant du module TSL personnalisé. Chaque identifiant doit être unique au sein d'un produit. Il doit contenir entre 1 et 30 caractères et peut inclure des lettres, des chiffres et des traits de soulignement (_). Ce paramètre doit être utilisé conjointement avec le paramètre FunctionBlockName. Si vous ne spécifiez pas ce paramètre, le système importe le module par défaut. |
| FunctionBlockName | String | Non | Battery_Module | Nom du module personnalisé. Il doit contenir entre 4 et 30 caractères et peut inclure des lettres, des chiffres et des traits de soulignement (_). Ce paramètre doit être utilisé conjointement avec le paramètre FunctionBlockId. Si vous ne spécifiez pas ce paramètre, le système importe le module par défaut. |
Outre les paramètres de requête spécifiques à l'opération présentés ci-dessus, vous devez spécifier les paramètres de requête communs lors de l'appel à cette opération. Pour plus d'informations sur les paramètres de requête communs, consultez la rubrique Paramètres communs.
Paramètres de réponse
| Paramètre | Type | Exemple | Description |
| Code | String | iot.system.SystemException | Code d'erreur renvoyé en cas d'échec de l'appel. Pour plus d'informations, consultez la rubrique Codes d'erreur. |
| ErrorMessage | String | A system exception occurred. | Message d'erreur renvoyé en cas d'échec de l'appel. |
| RequestId | String | E55E50B7-40EE-4B6B-8BBE-D3ED55CCF565 | ID de la requête. |
| Success | Boolean | true | Indique si l'appel a réussi.
|
Exemples
Exemple de requête
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>
Exemple de réponse en cas de succès
Format XML
<CreateThingModelResponse>
<RequestId>9E76053E-26ED-4AB4-AE58-8AFC3F1E7E8E</RequestId>
<Success>true</Success>
</CreateThingModelResponse>
Format JSON
{
"RequestId": "9E76053E-26ED-4AB4-AE58-8AFC3F1E7E8E",
"Success": true
}
Codes d'erreur
Pour obtenir la liste des codes d'erreur, consultez le Centre d'erreurs de l'API.