すべてのプロダクト
Search
ドキュメントセンター

IoT Platform:UpdateThingModel

最終更新日:Apr 17, 2025

指定されたプロダクトの Thing Specification Language(TSL)機能を更新します。機能に関する拡張情報も更新できます。

制限

  • プロダクトが公開されている場合は、この操作を呼び出す前に CancelReleaseProduct 操作を呼び出して、プロダクトの公開を停止する必要があります。
  • この操作を呼び出すときは、json-schema ライブラリを使用して、ThingModelJson の入力パラメーターを確認できます。詳細については、「ThingModelJson のデータ構造」をご参照ください。
  • この操作を呼び出して、1 つの機能のみを更新できます。TSL 機能には、プロパティ、サービス、イベントが含まれます。
  • 各 Alibaba Cloud アカウントは、最大 5 クエリ/秒(QPS)を実行できます。
    説明 Alibaba Cloud アカウントの RAM ユーザーは、アカウントのクォータを共有します。

デバッグ

Alibaba Cloud は、API の使用を簡素化するために OpenAPI Explorer を提供しています。OpenAPI Explorer は、署名値を自動的に計算します。便宜上、OpenAPI Explorer でこの操作を呼び出すことをお勧めします。OpenAPI Explorer は、さまざまな SDK 用の操作のサンプルコードを動的に生成します。

リクエストパラメーター

パラメータータイプ必須説明
ActionStringはいUpdateThingModel

実行する操作。値を UpdateThingModel に設定します。

ProductKeyStringはいa1BwAGV****

プロダクトの ProductKey

ProductKey は、IoT Platform コンソールの [プロダクトの詳細] ページで確認できます。QueryProductList 操作を呼び出すことによっても ProductKey を取得できます。

IotInstanceIdStringいいえiot-cn-0pp1n8t****

インスタンスの ID。インスタンス ID は、IoT Platform コンソールの 概要 ページで確認できます。

重要
  • インスタンスに ID がある場合は、このパラメーターを設定する必要があります。このパラメーターを設定しないと、呼び出しは失敗します。
  • インスタンスに 概要 ページまたは ID がない場合は、このパラメーターを設定する必要はありません。

詳細については、「概要」をご参照ください。

IdentifierStringいいえTemperature

機能の識別子。

GetThingModelTsl 操作を呼び出して、TslStr レスポンスパラメーターで識別子を確認できます。

ThingModelJsonStringいいえ{ "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" } ] }

機能の更新された詳細。

  • Identifier パラメーターを指定する場合は、機能の識別子のみを定義できます。
  • Identifier パラメーターを指定しない場合は、サービスまたはイベントに対して最大 50 の入力パラメーターと出力パラメーターを定義できます。

このパラメーターの指定方法の詳細については、「ThingModelJson のデータ構造」をご参照ください。

FunctionBlockIdStringいいえBatteryModule

カスタム TSL モジュールの識別子。各識別子は、プロダクト内で一意です。

このパラメーターまたは FunctionBlockName パラメーターを指定しない場合、システムはデフォルトモジュールの機能を更新します。

FunctionBlockNameStringいいえBattery_Module

カスタムモジュールの名前。名前は 4 ~ 30 文字で、文字、数字、アンダースコア(_)を含めることができます。

  • このパラメーターまたは FunctionBlockId パラメーターを指定しない場合、システムはデフォルトモジュールの機能を更新します。
  • このパラメーターを指定する場合は、FunctionBlockId パラメーターと組み合わせて使用する必要があります。指定されたカスタムモジュールの名前を変更できます。名前は、FunctionBlockId パラメーターの値に対応します。
説明 デフォルトモジュールの名前は変更できません。

上記の操作固有のリクエストパラメーターに加えて、この操作を呼び出すときは、共通のリクエストパラメーターを指定する必要があります。詳細については、「共通リクエストパラメーター」をご参照ください。

レスポンスパラメーター

パラメータータイプ説明
CodeStringiot.system.SystemException

呼び出しが失敗した場合に返されるエラーコード。詳細については、「エラーコード」をご参照ください。

ErrorMessageStringシステム例外が発生しました。

呼び出しが失敗した場合に返されるエラーメッセージ。

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

リクエストの ID。

SuccessBooleantrue

呼び出しが成功したかどうかを示します。

  • true: 呼び出しは成功しました。
  • false: 呼び出しは失敗しました。

リクエストの例

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
&<共通リクエストパラメーター>

成功レスポンスの例

XML 形式

<UpdateThingModelResponse>
  <RequestId>5573D217-8E3E-47AD-9331-2083B88E64B2</RequestId>
  <Success>true</Success>
</UpdateThingModelResponse>

JSON 形式

{
  "RequestId": "5573D217-8E3E-47AD-9331-2083B88E64B2",
  "Success": true
}

エラーコード

エラーコードのリストについては、API エラーセンターをご覧ください。