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

IoT Platform:CreateDataSourceItem

最終更新日:Apr 17, 2025

ルールエンジン内のデータソースに Topic を追加します。

使用上の注意

CreateDataSourceItem 操作を呼び出す前に、データソースを作成する必要があります。 詳細については、「データソースの作成」トピックの「ステップ 1 ~ ステップ 6」をご参照ください。 次に、以下の手順を実行してデータソースの ID を確認します。IoT Platform コンソールにログインし、データソースが属するインスタンスの名前をクリックします。 [ルールエンジン] > [データ転送] を選択します。 [データソース] タブで、[データソースの ID] を確認します。

QPS 制限

各 Alibaba Cloud アカウントは、最大 10 クエリ/秒(QPS)を実行できます。

説明 Alibaba Cloud アカウントの RAM ユーザーは、Alibaba Cloud アカウントのクォータを共有します。

デバッグ

OpenAPI Explorer は署名値を自動的に計算します。便宜上、OpenAPI Explorer でこの操作を呼び出すことをお勧めします。 OpenAPI Explorer は、さまざまな SDK の操作のサンプルコードを動的に生成します。

リクエストパラメーター

パラメーター タイプ 必須 説明
Action String Yes CreateDataSourceItem

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

DataSourceId Long Yes 1002

データソースの ID。

Topic String Yes /as/mqtt/status/gy***z/+

ルールエンジン内のデータソースに追加する Topic。形式: /${productKey}/${deviceName}/topicShortName${productKey} は、デバイスが属するプロダクトの ProductKey を指定します。${deviceName} は、デバイスの名前を指定します。topicShortName は、Topic のカスタム名を指定します。

  • 基本通信トピックまたは TSL 通信トピックの形式は、/${productKey}/${deviceName}/topicShortName です。${deviceName} をワイルドカード + に置き換えることができます。ワイルドカードは、トピックがプロダクト内のすべてのデバイスに適用されることを指定します。topicShortName の有効な値:
    • /thing/event/property/post: デバイスのプロパティデータを送信します。
    • /thing/event/${tsl.event.identifier}/post: デバイスのイベントデータを送信します。${tsl.event.identifier} は、TSL モデルのイベントの識別子を指定します。
    • /thing/lifecycle: デバイスのライフサイクルの変更を送信します。
    • /thing/downlink/reply/message: IoT Platform からのリクエストに応答を送信します。
    • /thing/list/found: ゲートウェイが新しいサブデバイスを検出したときにデータを送信します。
    • /thing/topo/lifecycle: デバイスのトポロジーの変更を送信します。
    • /thing/event/property/history/post: デバイスの履歴プロパティデータを送信します。
    • /thing/event/${tsl.event.identifier}/post: デバイスの履歴イベントデータを送信します。${tsl.event.identifier} は、TSL のイベントの識別子を指定します。
    • /ota/upgrade: ファームウェアアップデートのステータスを送信します。
    • /ota/version/post: OTA モジュールバージョンを送信します。
    • /thing/deviceinfo/update: デバイスタグの変更を送信します。

      ${packageId}/${jobId}/ota/job/status: 各ファームウェアアップデートバッチのステータスを送信します。このトピックは基本的な通信トピックです。${packageId} は、アップデートパッケージの ID を指定します。${jobId} は、アップデートバッチの ID を指定します。

  • カスタムトピックの形式は、/${productKey}/${deviceName}/user/# です。例: /${productKey}/${deviceName}/user/get

    QueryProductTopic 操作を呼び出して、プロダクトのすべてのカスタムトピックを表示できます。

    カスタムトピックを指定する場合、+ および # ワイルドカードを使用できます。

    • ${deviceName} をワイルドカード + に置き換えることができます。ワイルドカードは、トピックがプロダクト内のすべてのデバイスに適用されることを指定します。
    • ${deviceName} の後にあるフィールドを /user/# に置き換えることができます。# ワイルドカードは、/user の後にあるすべてのフィールドにトピックが適用されることを指定します。
  • デバイスのステータス変更の送信に使用されるトピックの形式は、/as/mqtt/status/${productKey}/${deviceName} です。

    + ワイルドカードを使用できます。この場合、プロダクト内のすべてのデバイスのステータス変更が送信されます。

ワイルドカードの使用方法の詳細については、「トピックのワイルドカード」をご参照ください。

トピックのデータ形式の詳細については、「データ形式」をご参照ください。

IotInstanceId String No iot-0pp1n8t***

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

重要
  • インスタンスに ID がある場合は、このパラメーターに ID を指定する必要があります。そうでない場合、呼び出しは失敗します。
  • インスタンスに対して [概要] ページまたは ID が生成されない場合は、このパラメーターを設定する必要はありません。

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

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

レスポンスパラメーター

パラメーター タイプ 説明
Code String iot.system.SystemException

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

ErrorMessage String A system exception occurred.

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

RequestId String E4C0FF92-2A86-41DB-92D3-73B60310D25E

リクエストの ID。

Success Boolean true

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

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

リクエストの例

http(s)://iot.cn-shanghai.aliyuncs.com/?Action=CreateDataSourceItem
&DataSourceId=1002
&Topic=/as/mqtt/status/gy***z/+
&<Common request parameters>

成功レスポンスの例

XML 形式

<CreateDataSourceItemResponse>
  <RequestId>E4C0FF92-2A86-41DB-92D3-73B60310D25E</RequestId>
  <Success>true</Success>
</CreateDataSourceItemResponse>

JSON 形式

{
    "RequestId": "E4C0FF92-2A86-41DB-92D3-73B60310D25E",
    "Success": true
}

エラーコード

HttpCode エラーコード エラーメッセージ 説明
400 iot.prod.NotExistedProduct The specified product does not exist. 指定されたプロダクトが存在しないために返されるエラーメッセージ。
400 iot.system.SystemException An internal error occurred. Try again later. システム例外が発生したために返されるエラーメッセージ。
400 iot.common.InvalidFormattedParameter The parameter format is invalid. パラメーター形式が無効なために返されるエラーメッセージ。

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