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

IoT Platform:CreateDestination

最終更新日:Apr 17, 2025

データを転送する宛先を作成します。

QPS 制限

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

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

デバッグ

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

リクエストパラメーター

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

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

Name String Yes DataPurpose

宛先の名前。

Type String Yes REPUBLISH

宛先のデータに対して実行する操作。有効な値:

  • REPUBLISH: パーサースクリプトによって処理されたトピックデータを IoT Platform 通信トピックに転送します。
  • AMQP: パーサースクリプトによって処理されたトピックデータを Advanced Message Queuing Protocol(AMQP)コンシューマーグループに転送します。
  • DATAHUB: パーサースクリプトによって処理されたトピックデータをストリームコンピューティングのために Alibaba Cloud DataHub に転送します。
  • ONS: パーサースクリプトによって処理されたトピックデータをメッセージ配信のために Message Queue for Apache RocketMQ に転送します。
  • MNS: パーサースクリプトによって処理されたトピックデータをメッセージ送信のために Message Service(MNS)に転送します。
  • FC: パーサースクリプトによって処理されたトピックデータをイベントコンピューティングのために Function Compute に転送します。
  • OTS: パーサースクリプトによって処理されたトピックデータを NoSQL データストレージのために Tablestore(OTS)に転送します。
Configuration String Yes {"topic":"/a1POX0c****/device1/user/get","topicType":1}

宛先の構成。値を JSON 文字列に設定します。構成はルールアクションのタイプによって異なります。次の表に、必要な構文と関連する例を示します。

IotInstanceId String No iot-2w****

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

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

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

Description String No The data that you want to forward to a database.

宛先の説明を入力します。

REPUBLISH タイプの構成

パラメーター

説明

productKey

宛先トピックが属するプロダクトの ProductKey。


{
    "productKey":"hf****3xn"
}
AMQP タイプの構成

パラメーター

説明

groupId

コンシューマーグループの ID。


{
    "groupId":"ZTh1JmuZcUfv44p4z00****"
}
OTS タイプの構成

パラメーター

説明

instanceName

データの受信に使用する Tablestore インスタンスの名前。

regionName

Tablestore がデプロイされているリージョンのコード。例: cn-shanghai。

tableName

データの受信に使用するテーブルの名前。

role

RAM ロールの情報。IoT Platform にサービスロールを割り当てることで、IoT Platform に Tablestore へのアクセス権を付与できます。RAM ロールの構文:

{"roleName":"AliyunIOTAccessingOTSRole","roleArn":"acs:ram::${uid}:role/aliyuniotaccessingotsrole"}

${uid} は Alibaba Cloud アカウントの ID を指定します。Alibaba Cloud 管理コンソールにログインし、セキュリティ設定ページでアカウント ID を確認できます。

AliyunIOTAccessingOTSRole は、RAM で定義されているサービスロールを示します。このロールは、Tablestore に対するアクセス権限を IoT Platform に付与するために使用されます。RAM ロールの管理は、Resource Access Management(RAM)コンソールの RAM ロールページで行うことができます。


{
    "instanceName":"${instanceName}",
    "regionName":"cn-shanghai",
    "tableName":"test_table",
    "role":{
        "roleName":"AliyunIOTAccessingOTSRole",
        "roleArn":"acs:ram::${uid}:role/aliyuniotaccessingotsrole"
    }
}
DATAHUB タイプの構成

パラメーター

説明

projectName

データの受信に使用する DataHub プロジェクトの名前。

topicName

データの受信に使用する DataHub トピックの名前。

regionName

DataHub がデプロイされているリージョンのコード。例: cn-shanghai。

role

RAM ロールの情報。IoT Platform にサービスロールを割り当てることで、IoT Platform に DataHub へのアクセス権を付与できます。RAM ロールの構文:

{"roleArn":"acs:ram::${uid}:role/aliyuniotaccessingdatahubrole","roleName": "AliyunIOTAccessingDataHubRole"}

${uid} は Alibaba Cloud アカウントの ID を指定します。Alibaba Cloud 管理コンソールにログインし、セキュリティ設定ページでアカウント ID を確認できます。

AliyunIOTAccessingDataHubRole は、RAM で定義されているサービスロールを示します。このロールは、DataHub に対するアクセス権限を IoT Platform に付与するために使用されます。RAM ロールの管理は、RAM コンソールの RAM ロールページで行うことができます。


{
    "role":{
        "roleArn": "acs:ram::${uid}:role/aliyuniotaccessingdatahubrole",
        "roleName": "AliyunIOTAccessingDataHubRole"
    },
    "ProjectName": "test_project_name",
    "RegionName": "cn-shanghai",
    "TopicName": "test_topic"
}
MNS タイプの構成

パラメーター

説明

themeName

データの受信に使用する MNS トピックの名前。

regionName

MNS がデプロイされているリージョンのコード。例: cn-shanghai。

role

RAM ロールの情報。IoT Platform に MNS へのアクセス権を付与するには、IoT Platform にサービスロールを割り当てることができます。RAM ロールの構文:

{"roleArn":"acs:ram::${uid}:role/aliyuniotaccessingmnsrole","roleName": "AliyunIOTAccessingMNSRole"}

${uid} は Alibaba Cloud アカウントの ID を指定します。Alibaba Cloud 管理コンソールにログインし、セキュリティ設定ページでアカウント ID を確認できます。

AliyunIOTAccessingMNSRole は、RAM で定義されているサービスロールを示します。このロールは、MNS に対するアクセス権限を IoT Platform に付与するために使用されます。RAM ロールの管理は、RAM コンソールの RAM ロールページで行うことができます。


{
    "themeName": "test_name",
    "role":{
        "roleArn": "acs:ram::${uid}:role/aliyuniotaccessingmnsrole",
        "roleName": "AliyunIOTAccessingMNSRole"
    },
    "regionName": "cn-shanghai"
}
ONS タイプの構成
説明 Message Queue for Apache RocketMQ に対する権限を IoT Platform に付与するには、SDK を呼び出すか、Message Queue for Apache RocketMQ コンソールにログインします。IoT Platform は、Message Queue for Apache RocketMQ にメッセージをパブリッシュする権限を持っている必要があります。その後、サービスにデータを転送するルールアクションを作成できます。

パラメーター

説明

instanceId

データの受信に使用する Message Queue for Apache RocketMQ インスタンスの ID。

topic

データの受信に使用する Message Queue for Apache RocketMQ トピックの名前。

regionName

Message Queue for Apache RocketMQ がデプロイされているリージョンのコード。例: cn-shanghai。

同じリージョン内でのみデータを転送できます。

role

RAM ロールの情報。IoT Platform にサービスロールを割り当てることで、IoT Platform に Message Queue for Apache RocketMQ へのアクセス権を付与できます。RAM ロールの構文:

{"roleArn":"acs:ram::${uid}:role/aliyuniotaccessingmqrole","roleName": "AliyunIOTAccessingMQRole"}

${uid} は Alibaba Cloud アカウントの ID を指定します。Alibaba Cloud 管理コンソールにログインし、セキュリティ設定ページでアカウント ID を確認できます。

AliyunIOTAccessingFCRole は、RAM コンソールで定義されているサービスロールです。このロールは、Message Queue for Apache RocketMQ に対するアクセス権限を IoT Platform に付与するために使用されます。RAM ロールの管理は、RAM コンソールの RAM ロールページで行うことができます。


{
    "instanceId": "${MQ_INST_ID}",
    "role":
    {
        "roleArn": "acs:ram::${uid}:role/aliyuniotaccessingmqrole",
        "roleName": "AliyunIOTAccessingMQRole"
    },
    "regionName": "cn-shanghai",
    "topic": "test_topic"
}
FC タイプの構成

パラメーター

説明

functionName

データの受信に使用する関数の名前。

serviceName

データの受信に使用するサービスの名前。

regionName

Function Compute がデプロイされているリージョンの ID。例: cn-shanghai。

role

RAM ロールの情報。IoT Platform にサービスロールを割り当てることで、IoT Platform に Function Compute へのアクセス権を付与できます。RAM ロールの構文:

{"roleArn":"acs:ram::${uid}:role/aliyuniotaccessingfcrole","roleName": "AliyunIOTAccessingFCRole"}

${uid} は Alibaba Cloud アカウントの ID を指定します。Alibaba Cloud 管理コンソールにログインし、セキュリティ設定ページでアカウント ID を確認できます。

AliyunIOTAccessingFCRole は、RAM で定義されているサービスロールです。このロールは、Function Compute に対するアクセス権限を IoT Platform に付与するために使用されます。RAM ロールの管理は、RAM コンソールの RAM ロールページで行うことができます。


{
    "role":
    {
        "roleArn": "acs:ram::${uid}:role/aliyuniotaccessingfcrole",
        "roleName": "AliyunIOTAccessingFCRole"
    },
    "functionName": "${function_name}",
    "serviceName": "${service_name}",
    "regionName": "cn-shanghai"
}

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

レスポンスパラメーター

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

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

Destination Struct

宛先が作成された後に返される宛先の情報。

Configuration String {"topic":"/a1POX0c****/device1/user/get","topicType":1}

宛先の構成データ。

DestinationId Long 1003

宛先の ID。

IsFailover Boolean false

エラー操作データを転送するように宛先が構成されているかどうかを示します。エラー操作データは、転送に失敗し、他の Alibaba Cloud サービスに再転送されたデータを示します。

  • true: エラー操作データが転送されます。
  • false: エラー操作データではなく通常のデータが転送されます。

デフォルト値:false

Name String DataPurpose

宛先の名前。

Type String REPUBLISH

宛先のデータに対して実行される操作。

UtcCreated String 2022-03-27T12:45:43.000Z

宛先が作成された時刻。時刻は UTC で表示されます。フォーマット:yyyy-MM-dd'T'HH:mm:ss.SSS'Z'

ErrorMessage String A system exception occurred.

リクエストが失敗した場合に返されるエラーメッセージ。

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

リクエストの ID。ID はこのリクエストを一意に識別します。

Success Boolean true

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

  • true: 呼び出しは成功しました。
  • false: リクエストは失敗しました。

リクエストの例

http(s)://iot.cn-shanghai.aliyuncs.com/?Action=CreateDestination
&Configuration={"topic":"/a1POX0c****/device1/user/get","topicType":1}
&Name=DataPurpose
&Type=REPUBLISH
&<Common request parameters>

成功レスポンスの例

XML 形式

<CreateDestinationResponse>
  <Destination>
        <Type>REPUBLISH</Type>
        <UtcCreated>2022-03-27T12:45:43.000Z</UtcCreated>
        <Configuration>{"topic":"/a1POX0c****/device1/user/get","topicType":1}</Configuration>
        <IsFailover>false</IsFailover>
        <DestinationId>1003</DestinationId>
        <Name>DataPurpose</Name>
  </Destination>
  <RequestId>E4C0FF92-2A86-41DB-92D3-73B60310D25E</RequestId>
  <Success>true</Success>
</CreateDestinationResponse>

JSON 形式

{
    "Destination": {
        "Type": "REPUBLISH",
        "UtcCreated": "2022-03-27T12:45:43.000Z",
        "Configuration": "{\"topic\":\"/a1POX0c****/device1/user/get\",\"topicType\":1}",
        "IsFailover": false,
        "DestinationId": 1003,
        "Name": "DataPurpose"
    },
    "RequestId": "E4C0FF92-2A86-41DB-92D3-73B60310D25E",
    "Success": true
}

エラーコード

HttpCode エラーコード エラーメッセージ 説明
400 iot.system.SystemException An internal error occurred. Try again later. システム例外が発生したために返されたエラーメッセージ。
400 iot.system.IllegalRequest The request parameter is invalid. リクエストパラメーターが無効なために返されたエラーメッセージ。
400 iot.ruleng.NullRuleActionConfig The rule action configuration is empty. ルールアクションが構成されていないために返されたエラーメッセージ。
400 iot.ruleng.NullRuleActionType The specified rule action is invalid or the rule action type is unspecified. ルールアクションの Type パラメーターを構成する必要があります。

エラーコードの一覧については、API エラーセンターをご参照ください。