Met à jour une fonctionnalité du langage de spécification des objets (TSL) pour un produit donné. Vous pouvez également mettre à jour les informations étendues associées à cette fonctionnalité.
Limites
Si le produit est déjà publié, appelez l'opération CancelReleaseProduct pour annuler sa publication avant d'appeler la présente opération.
Lors de l'appel à cette opération, utilisez la bibliothèque json-schema afin de valider les paramètres d'entrée figurant dans ThingModelJson. Pour plus d'informations, consultez la rubrique Structure des données de ThingModelJson.
Cette opération permet de mettre à jour une seule fonctionnalité à la fois. Les fonctionnalités TSL incluent les propriétés, les services et les événements.
-
Chaque compte Alibaba Cloud est limité à 5 requêtes par seconde (QPS).
RemarqueLes utilisateurs RAM d'un compte Alibaba Cloud partagent le quota de ce compte.
Débogage
Alibaba Cloud met à votre disposition OpenAPI Explorer pour simplifier l'utilisation des API. Cet outil calcule automatiquement la valeur de signature. Nous vous recommandons de l'utiliser pour appeler cette opération. OpenAPI Explorer génère également dynamiquement des exemples de code pour différents SDK.
Paramètres de requête
| Paramètre | Type | Obligatoire | Exemple | Description |
| Action | String | Oui | UpdateThingModel | Nom de l'opération à effectuer. Définissez la valeur sur UpdateThingModel. |
| ProductKey | String | Oui | a1BwAGV**** | ProductKey du produit. Consultez le ProductKey sur la page des détails du produit dans 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. Consultez l'Overview dans la console IoT Platform. Important
Pour plus d'informations, consultez la rubrique Overview. |
| Identifier | String | Non | Temperature | Identifiant de la fonctionnalité. Appelez l'opération GetThingModelTsl et consultez l'identifiant dans le paramètre de réponse TslStr. |
| 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": "a1Jw4i****", "required": false, "customFlag": true, "name": "SIM card type" } ] } | Détails mis à jour de la fonctionnalité.
Pour savoir comment spécifier ce paramètre, consultez la rubrique Structure des données de ThingModelJson. |
| FunctionBlockId | String | Non | BatteryModule | Identifiant du module TSL personnalisé. Chaque identifiant est unique au sein d'un produit. Si vous ne spécifiez ni ce paramètre ni le paramètre FunctionBlockName, le système mettra à jour les fonctionnalités du module par défaut. |
| FunctionBlockName | String | Non | Battery_Module | Nom du module personnalisé. Le nom doit comporter entre 4 et 30 caractères et peut contenir des lettres, des chiffres et des traits de soulignement (_).
Remarque Vous ne pouvez pas modifier le nom du module par défaut. |
En plus des paramètres de requête spécifiques à cette opération, vous devez indiquer les paramètres de requête communs lors de l'appel. Pour plus d'informations, consultez la rubrique Paramètres de requête 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=UpdateThingModel
&ProductKey=a1Jw4id****
&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": "a1Jw4id****","required": false,"customFlag": true, "name": "SIM card type"}]}
&Identifier=SimCardType
&<Common request parameters>
Exemple de réponse en cas de succès
Format XML
<UpdateThingModelResponse>
<RequestId>5573D217-8E3E-47AD-9331-2083B88E64B2</RequestId>
<Success>true</Success>
</UpdateThingModelResponse>
Format JSON
{
"RequestId": "5573D217-8E3E-47AD-9331-2083B88E64B2",
"Success": true
}
Codes d'erreur
Pour obtenir la liste des codes d'erreur, consultez le Centre d'erreurs de l'API.