リソース プロバイダー REST API を使用して IoT Hub を作成する (.NET)

IoT Hub Resource REST API を使って、Azure IoT ハブをプログラム的に作成、管理できます。 この記事では、IoT Hub Resource を使い、Postman を使って IoT ハブを作成する方法について説明します。 また、cURL を使うこともできます。 これらの REST コマンドのいずれかが失敗した場合は、「IoT Hub API の一般的なエラー コード」でヘルプを検索してください。

注意

Azure を操作するには、Azure Az PowerShell モジュールを使用することをお勧めします。 作業を開始するには、Azure PowerShell のインストールに関する記事を参照してください。 Az PowerShell モジュールに移行する方法については、「AzureRM から Az への Azure PowerShell の移行」を参照してください。

前提条件

Azure アクセス トークンを取得する

  1. Azure PowerShell コマンドレットまたは Azure Cloud Shell でサインインし、次のコマンドを使ってトークンを取得します。 Cloud Shell を使っている場合は、既にサインインしているので、この手順はスキップしてください。

    az account get-access-token --resource https://management.azure.com
    

    この JSON のような応答がコンソールに表示されるます (ただし、アクセス トークンが長いことを除きます)。

    {
        "accessToken": "eyJ ... pZA",
        "expiresOn": "2022-09-16 20:57:52.000000",
        "subscription": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
        "tenant": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
        "tokenType": "Bearer"
    }
    
  2. 新しい Postman 要求で、[認証] タブから [種類] ドロップダウン リストを選び、[ベアラー トークン] を選びます。

    **Postman** で認可の種類としてベアラー トークンを選ぶ方法を示すスクリーンショット。

  3. アクセス トークンを [トークン] というフィールドに貼り付けます。

アクセス トークンは 5 から 60 分後に失効するので、状況に応じて別のトークンを生成する必要があることに注意してください。

IoT ハブを作成する

  1. REST コマンド ドロップダウン リストを選び、PUT コマンドを選びます。 次の URL をコピーし、{} の値を実際の値に置き換えます。 {resourceName} の値は、新しい IoT ハブに付ける名前です。 PUT コマンドの横のフィールドに URL を貼り付けます。

    PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}?api-version=2021-04-12
    

    Postman で PUT コマンドを追加する方法を示すスクリーンショット。

    IoT Hub リソースの PUT コマンドに関する記事を参照してください。

  2. [本文] タブのドロップダウン リストから [生][JSON] を選びます。

    Postman の要求の本文に JSON を追加する方法を示すスクリーンショット。

  3. 次の JSON をコピーし、<> の値を実際の値に置き換えます。 Postman[本文] タブのボックスに JSON を貼り付けます。IoT ハブ名は PUT URL の値と必ず同じにします。 場所を実際の場所 (リソース グループに割り当てる場所) に変更します。

    {
        "name": "<my-iot-hub>",
        "location": "<region>",
        "tags": {},
        "properties": {},
        "sku": {
            "name": "S1",
            "tier": "Standard",
            "capacity": 1
        }
    }
    

    IoT Hub リソースの PUT コマンドに関する記事を参照してください。

  4. [送信] を選んで要求を送信し、新しい IoT ハブを作成します。 要求が成功すると、201 Created 応答が返され、IoT ハブの仕様が JSON 形式で出力されます。 Postman を使っている場合は、要求を保存できます。

IoT ハブを表示する

新しい IoT ハブのすべての仕様を表示するには、GET 要求を使います。 PUT 要求で使ったものと同じ URL を使用できますが、GET 要求には本文を含めることができないため、その要求の本文を消去する必要があります (まだ空白でない場合)。 GET 要求のテンプレートは次のとおりです。

GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}?api-version=2018-04-01

IoT Hub リソースの GET コマンドに関する記事を参照してください。

IoT ハブを更新する

IoT ハブを作成したときと同じ PUT 要求を使って、JSON 本文に任意のパラメーターを含めるように編集するだけで、簡単に更新できます。 tags プロパティを追加して要求の本文を編集し、PUT 要求を実行します。

{
    "name": "<my-iot-hub>",
    "location": "westus2",
    "tags": {
        "Animal": "Cat"
    },
    "properties": {},
    "sku": {
        "name": "S1",
        "tier": "Standard",
        "capacity": 1
    }
}
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}?api-version=2018-04-01

コンソールの応答には、追加した新しいタグが表示されます。 最後にアクセス トークンを生成してから時間が経ちすぎている場合は、状況に応じてアクセス トークンを更新する必要があることに注意してください。

IoT Hub リソースの PUT コマンドに関する記事を参照してください。

また、IoT Hub リソースの PATCH コマンドを使ってタグを更新することもできます。

IoT ハブを削除する

テストのみを行う場合は、DELETE 要求を送信して、リソースをクリーンし、新しい IoT ハブを削除することをお勧めします。 {} の値は実際の値に置き換えてください。 {resourceName} の値は IoT ハブの名前です。

DELETE https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}?api-version=2018-04-01

IoT Hub リソースの DELETE コマンドに関する記事を参照してください。

次のステップ

リソース プロバイダー REST API を使用して IoT ハブをデプロイしたので、次の手順に進んでください。

IoT Hub の開発に関する詳細については、以下の記事をご覧ください。

IoT Hub の機能を詳しく調べるには、次のリンクを使用してください。