Microsoft Azure · Capability

Microsoft Azure iotHubClient — POST

Microsoft Azure iotHubClient — POST. 8 operations. Lead operation: Microsoft Azure Check If An Iot Hub Name Is Available. Self-contained Naftiko capability covering one Microsoft Azure business surface.

Run with Naftiko Microsoft AzurePOST

What You Can Do

POST
Microsoftazureiothubresourcechecknameavailability — Microsoft Azure Check If An Iot Hub Name Is Available
/v1/subscriptions/{subscriptionid}/providers/microsoft-devices/checknameavailability
POST
Microsoftazureiothubmanualfailover — Microsoft Azure Manually Initiate A Failover For The Iot Hub To Its Secondary Region
/v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-devices/iothubs/{iothubname}/failover
POST
Microsoftazureiothubresourcetestallroutes — Microsoft Azure Test All Routes
/v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-devices/iothubs/{iothubname}/routing/routes/testall
POST
Microsoftazureiothubresourcetestroute — Microsoft Azure Test The New Route
/v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-devices/iothubs/{iothubname}/routing/routes/testnew
POST
Microsoftazureiothubresourcegetkeysforkeyname — Microsoft Azure Get A Shared Access Policy By Name From An Iot Hub For More Information, See: Https: Docs Microsoft Com Azure Iot Hub Iot Hub Devguide Security
/v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-devices/iothubs/{resourcename}/iothubkeys/{keyname}/listkeys
POST
Microsoftazureiothubresourceexportdevices — Microsoft Azure Exports All The Device Identities In The Iot Hub Identity Registry To An Azure Storage Blob Container For More Information, See: Https: Docs Microsoft Com Azure Iot Hub Iot Hub Devguide Identity Registry#import And Export De
/v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-devices/iothubs/{resourcename}/exportdevices
POST
Microsoftazureiothubresourceimportdevices — Microsoft Azure Import, Update, Or Delete Device Identities In The Iot Hub Identity Registry From A Blob For More Information, See: Https: Docs Microsoft Com Azure Iot Hub Iot Hub Devguide Identity Registry#import And Export Device Identiti
/v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-devices/iothubs/{resourcename}/importdevices
POST
Microsoftazureiothubresourcelistkeys — Microsoft Azure Get The Security Metadata For An Iot Hub For More Information, See: Https: Docs Microsoft Com Azure Iot Hub Iot Hub Devguide Security
/v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-devices/iothubs/{resourcename}/listkeys

MCP Tools

microsoft-azure-check-if-iot

Microsoft Azure Check If An Iot Hub Name Is Available

read-only
microsoft-azure-manually-initiate-failover

Microsoft Azure Manually Initiate A Failover For The Iot Hub To Its Secondary Region

microsoft-azure-test-all-routes

Microsoft Azure Test All Routes

read-only
microsoft-azure-test-new-route

Microsoft Azure Test The New Route

read-only
microsoft-azure-get-shared-access

Microsoft Azure Get A Shared Access Policy By Name From An Iot Hub For More Information, See: Https: Docs Microsoft Com Azure Iot Hub Iot Hub Devguide Security

read-only
microsoft-azure-exports-all-device

Microsoft Azure Exports All The Device Identities In The Iot Hub Identity Registry To An Azure Storage Blob Container For More Information, See: Https: Docs Microsoft Com Azure Iot Hub Iot Hub Devguide Identity Registry#import And Export De

microsoft-azure-import-update-delete

Microsoft Azure Import, Update, Or Delete Device Identities In The Iot Hub Identity Registry From A Blob For More Information, See: Https: Docs Microsoft Com Azure Iot Hub Iot Hub Devguide Identity Registry#import And Export Device Identiti

microsoft-azure-get-security-metadata

Microsoft Azure Get The Security Metadata For An Iot Hub For More Information, See: Https: Docs Microsoft Com Azure Iot Hub Iot Hub Devguide Security

read-only

Capability Spec

iothubclient-post.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Microsoft Azure iotHubClient — POST
  description: 'Microsoft Azure iotHubClient — POST. 8 operations. Lead operation: Microsoft Azure Check If An Iot Hub Name
    Is Available. Self-contained Naftiko capability covering one Microsoft Azure business surface.'
  tags:
  - Microsoft Azure
  - POST
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    MICROSOFT_AZURE_API_KEY: MICROSOFT_AZURE_API_KEY
capability:
  consumes:
  - type: http
    namespace: iothubclient-post
    baseUri: https://management.azure.com
    description: Microsoft Azure iotHubClient — POST business capability. Self-contained, no shared references.
    resources:
    - name: subscriptions-subscriptionId-providers-Microsoft.Devices-checkNameAvailability
      path: /subscriptions/{subscriptionId}/providers/Microsoft.Devices/checkNameAvailability
      operations:
      - name: microsoftazureiothubresourcechecknameavailability
        method: POST
        description: Microsoft Azure Check If An Iot Hub Name Is Available
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: operationInputs
          in: body
          type: string
          description: Set the name parameter in the OperationInputs structure to the name of the IoT hub to check.
          required: true
    - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof
      path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/failover
      operations:
      - name: microsoftazureiothubmanualfailover
        method: POST
        description: Microsoft Azure Manually Initiate A Failover For The Iot Hub To Its Secondary Region
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: iotHubName
          in: path
          type: string
          description: Name of the IoT hub to failover
          required: true
        - name: failoverInput
          in: body
          type: string
          description: Region to failover to. Must be the Azure paired region. Get the value from the secondary location in
            the locations property. To learn more, see https://aka.ms/m
          required: true
        - name: resourceGroupName
          in: path
          type: string
          description: Name of the resource group containing the IoT hub resource
          required: true
    - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof
      path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routing/routes/$testall
      operations:
      - name: microsoftazureiothubresourcetestallroutes
        method: POST
        description: Microsoft Azure Test All Routes
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: input
          in: body
          type: string
          description: Input for testing all routes
          required: true
        - name: iotHubName
          in: path
          type: string
          description: IotHub to be tested
          required: true
        - name: resourceGroupName
          in: path
          type: string
          description: resource group which Iot Hub belongs to
          required: true
    - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof
      path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routing/routes/$testnew
      operations:
      - name: microsoftazureiothubresourcetestroute
        method: POST
        description: Microsoft Azure Test The New Route
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: input
          in: body
          type: string
          description: Route that needs to be tested
          required: true
        - name: iotHubName
          in: path
          type: string
          description: IotHub to be tested
          required: true
        - name: resourceGroupName
          in: path
          type: string
          description: resource group which Iot Hub belongs to
          required: true
    - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof
      path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/IotHubKeys/{keyName}/listkeys
      operations:
      - name: microsoftazureiothubresourcegetkeysforkeyname
        method: POST
        description: 'Microsoft Azure Get A Shared Access Policy By Name From An Iot Hub For More Information, See: Https:
          Docs Microsoft Com Azure Iot Hub Iot Hub Devguide Security'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: keyName
          in: path
          type: string
          description: The name of the shared access policy.
          required: true
    - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof
      path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/exportDevices
      operations:
      - name: microsoftazureiothubresourceexportdevices
        method: POST
        description: 'Microsoft Azure Exports All The Device Identities In The Iot Hub Identity Registry To An Azure Storage
          Blob Container For More Information, See: Https: Docs Microsoft Com Azure Iot Hub Iot Hub Devguide Identity Registry#import
          And Export De'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: exportDevicesParameters
          in: body
          type: string
          description: The parameters that specify the export devices operation.
          required: true
    - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof
      path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/importDevices
      operations:
      - name: microsoftazureiothubresourceimportdevices
        method: POST
        description: 'Microsoft Azure Import, Update, Or Delete Device Identities In The Iot Hub Identity Registry From A
          Blob For More Information, See: Https: Docs Microsoft Com Azure Iot Hub Iot Hub Devguide Identity Registry#import
          And Export Device Identiti'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: importDevicesParameters
          in: body
          type: string
          description: The parameters that specify the import devices operation.
          required: true
    - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof
      path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/listkeys
      operations:
      - name: microsoftazureiothubresourcelistkeys
        method: POST
        description: 'Microsoft Azure Get The Security Metadata For An Iot Hub For More Information, See: Https: Docs Microsoft
          Com Azure Iot Hub Iot Hub Devguide Security'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    namespace: iothubclient-post-rest
    port: 8080
    description: REST adapter for Microsoft Azure iotHubClient — POST. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/subscriptions/{subscriptionid}/providers/microsoft-devices/checknameavailability
      name: subscriptions-subscriptionid-providers-microsoft-devices-checknameavailability
      description: REST surface for subscriptions-subscriptionId-providers-Microsoft.Devices-checkNameAvailability.
      operations:
      - method: POST
        name: microsoftazureiothubresourcechecknameavailability
        description: Microsoft Azure Check If An Iot Hub Name Is Available
        call: iothubclient-post.microsoftazureiothubresourcechecknameavailability
        with:
          operationInputs: rest.operationInputs
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-devices/iothubs/{iothubname}/failover
      name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof
      description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof.
      operations:
      - method: POST
        name: microsoftazureiothubmanualfailover
        description: Microsoft Azure Manually Initiate A Failover For The Iot Hub To Its Secondary Region
        call: iothubclient-post.microsoftazureiothubmanualfailover
        with:
          iotHubName: rest.iotHubName
          failoverInput: rest.failoverInput
          resourceGroupName: rest.resourceGroupName
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-devices/iothubs/{iothubname}/routing/routes/testall
      name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof
      description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof.
      operations:
      - method: POST
        name: microsoftazureiothubresourcetestallroutes
        description: Microsoft Azure Test All Routes
        call: iothubclient-post.microsoftazureiothubresourcetestallroutes
        with:
          input: rest.input
          iotHubName: rest.iotHubName
          resourceGroupName: rest.resourceGroupName
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-devices/iothubs/{iothubname}/routing/routes/testnew
      name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof
      description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof.
      operations:
      - method: POST
        name: microsoftazureiothubresourcetestroute
        description: Microsoft Azure Test The New Route
        call: iothubclient-post.microsoftazureiothubresourcetestroute
        with:
          input: rest.input
          iotHubName: rest.iotHubName
          resourceGroupName: rest.resourceGroupName
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-devices/iothubs/{resourcename}/iothubkeys/{keyname}/listkeys
      name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof
      description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof.
      operations:
      - method: POST
        name: microsoftazureiothubresourcegetkeysforkeyname
        description: 'Microsoft Azure Get A Shared Access Policy By Name From An Iot Hub For More Information, See: Https:
          Docs Microsoft Com Azure Iot Hub Iot Hub Devguide Security'
        call: iothubclient-post.microsoftazureiothubresourcegetkeysforkeyname
        with:
          keyName: rest.keyName
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-devices/iothubs/{resourcename}/exportdevices
      name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof
      description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof.
      operations:
      - method: POST
        name: microsoftazureiothubresourceexportdevices
        description: 'Microsoft Azure Exports All The Device Identities In The Iot Hub Identity Registry To An Azure Storage
          Blob Container For More Information, See: Https: Docs Microsoft Com Azure Iot Hub Iot Hub Devguide Identity Registry#import
          And Export De'
        call: iothubclient-post.microsoftazureiothubresourceexportdevices
        with:
          exportDevicesParameters: rest.exportDevicesParameters
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-devices/iothubs/{resourcename}/importdevices
      name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof
      description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof.
      operations:
      - method: POST
        name: microsoftazureiothubresourceimportdevices
        description: 'Microsoft Azure Import, Update, Or Delete Device Identities In The Iot Hub Identity Registry From A
          Blob For More Information, See: Https: Docs Microsoft Com Azure Iot Hub Iot Hub Devguide Identity Registry#import
          And Export Device Identiti'
        call: iothubclient-post.microsoftazureiothubresourceimportdevices
        with:
          importDevicesParameters: rest.importDevicesParameters
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-devices/iothubs/{resourcename}/listkeys
      name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof
      description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof.
      operations:
      - method: POST
        name: microsoftazureiothubresourcelistkeys
        description: 'Microsoft Azure Get The Security Metadata For An Iot Hub For More Information, See: Https: Docs Microsoft
          Com Azure Iot Hub Iot Hub Devguide Security'
        call: iothubclient-post.microsoftazureiothubresourcelistkeys
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: iothubclient-post-mcp
    port: 9090
    transport: http
    description: MCP adapter for Microsoft Azure iotHubClient — POST. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: microsoft-azure-check-if-iot
      description: Microsoft Azure Check If An Iot Hub Name Is Available
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: iothubclient-post.microsoftazureiothubresourcechecknameavailability
      with:
        operationInputs: tools.operationInputs
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-manually-initiate-failover
      description: Microsoft Azure Manually Initiate A Failover For The Iot Hub To Its Secondary Region
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: iothubclient-post.microsoftazureiothubmanualfailover
      with:
        iotHubName: tools.iotHubName
        failoverInput: tools.failoverInput
        resourceGroupName: tools.resourceGroupName
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-test-all-routes
      description: Microsoft Azure Test All Routes
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: iothubclient-post.microsoftazureiothubresourcetestallroutes
      with:
        input: tools.input
        iotHubName: tools.iotHubName
        resourceGroupName: tools.resourceGroupName
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-test-new-route
      description: Microsoft Azure Test The New Route
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: iothubclient-post.microsoftazureiothubresourcetestroute
      with:
        input: tools.input
        iotHubName: tools.iotHubName
        resourceGroupName: tools.resourceGroupName
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-get-shared-access
      description: 'Microsoft Azure Get A Shared Access Policy By Name From An Iot Hub For More Information, See: Https: Docs
        Microsoft Com Azure Iot Hub Iot Hub Devguide Security'
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: iothubclient-post.microsoftazureiothubresourcegetkeysforkeyname
      with:
        keyName: tools.keyName
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-exports-all-device
      description: 'Microsoft Azure Exports All The Device Identities In The Iot Hub Identity Registry To An Azure Storage
        Blob Container For More Information, See: Https: Docs Microsoft Com Azure Iot Hub Iot Hub Devguide Identity Registry#import
        And Export De'
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: iothubclient-post.microsoftazureiothubresourceexportdevices
      with:
        exportDevicesParameters: tools.exportDevicesParameters
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-import-update-delete
      description: 'Microsoft Azure Import, Update, Or Delete Device Identities In The Iot Hub Identity Registry From A Blob
        For More Information, See: Https: Docs Microsoft Com Azure Iot Hub Iot Hub Devguide Identity Registry#import And Export
        Device Identiti'
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: iothubclient-post.microsoftazureiothubresourceimportdevices
      with:
        importDevicesParameters: tools.importDevicesParameters
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-get-security-metadata
      description: 'Microsoft Azure Get The Security Metadata For An Iot Hub For More Information, See: Https: Docs Microsoft
        Com Azure Iot Hub Iot Hub Devguide Security'
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: iothubclient-post.microsoftazureiothubresourcelistkeys
      outputParameters:
      - type: object
        mapping: $.