To build the SDKs for Azure Device Registry, simply install AutoRest via npm (npm install -g autorest) and then run:
autorest readme.md
To see additional help and options, run:
autorest --help
For other options on installation see Installing AutoRest on the AutoRest github page.
These are the global settings for the Azure Device Registry.
openapi-type: arm
openapi-subtype: rpaas
tag: package-2026-04modelerfour:
flatten-models: falseThese settings apply only when --tag=package-2026-04 is specified on the command line.
input-file:
- Microsoft.DeviceRegistry/stable/2026-04-01/deviceregistry.json
suppressions:
- code: AvoidAdditionalProperties
from:
- deviceregistry.json
where:
- $.definitions.NamespaceAssetProperties.properties.eventGroups
- $.definitions.NamespaceAssetUpdateProperties.properties.eventGroups
- $.definitions.NamespaceDiscoveredAssetProperties.properties.eventGroups
- $.definitions.NamespaceDiscoveredAssetUpdateProperties.properties.eventGroups
reason: These are customer defined properties with variables keys but well defined value structure.
- code: AvoidAdditionalProperties
from:
- deviceregistry.json
where:
- $.definitions.Management.properties.endpoints
- $.definitions.Messaging.properties.endpoints
- $.definitions.NamespaceAssetProperties.properties.attributes
- $.definitions.NamespaceAssetUpdateProperties.properties.attributes
- $.definitions.NamespaceAssetExecuteActionRequest.properties.payload
- $.definitions.NamespaceDiscoveredAssetProperties.properties.attributes
- $.definitions.NamespaceDiscoveredAssetUpdateProperties.properties.attributes
- $.definitions.NamespaceDeviceProperties.properties.attributes
- $.definitions.NamespaceDeviceUpdateProperties.properties.attributes
reason: attributes is a customer-defined property of any shape and custom keys for other properties
- code: AvoidAdditionalProperties
from:
- deviceregistry.json
where:
- $.definitions.Management.properties.endpoints
- $.definitions.Messaging.properties.endpoints
- $.definitions.MessagingEndpoints.properties.inbound
- $.definitions.MessagingEndpointsUpdate.properties.inbound
- $.definitions.OutboundEndpoints.properties.assigned
- $.definitions.OutboundEndpointsUpdate.properties.assigned
- $.definitions.OutboundEndpoints.properties.unassigned
- $.definitions.OutboundEndpointsUpdate.properties.unassigned
- $.definitions.NamespaceDiscoveredDeviceProperties.properties.attributes
- $.definitions.NamespaceDiscoveredDeviceUpdateProperties.properties.attributes
- $.definitions.DiscoveredMessagingEndpoints.properties.inbound
- $.definitions.DiscoveredMessagingEndpointsUpdate.properties.inbound
- $.definitions.DiscoveredOutboundEndpoints.properties.assigned
- $.definitions.DiscoveredOutboundEndpointsUpdate.properties.assigned
- $.definitions.DeviceStatusEndpoints.properties.inbound
reason: These are customer defined properties with variables keys but well defined value structure.
- code: OperationIdNounVerb
from:
- deviceregistry.json
reason: An existing resource type is called 'schemas'
where:
- $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DeviceRegistry/schemaRegistries/{schemaRegistryName}/schemas"].get.operationIdThese settings apply only when --tag=package-preview-2026-11 is specified on the command line.
input-file:
- Microsoft.DeviceRegistry/preview/2026-11-01-preview/deviceregistry.json
suppressions:
- code: AvoidAdditionalProperties
from:
- deviceregistry.json
where:
- $.definitions.NamespaceAssetProperties.properties.eventGroups
- $.definitions.NamespaceAssetUpdateProperties.properties.eventGroups
- $.definitions.NamespaceDiscoveredAssetProperties.properties.eventGroups
- $.definitions.NamespaceDiscoveredAssetUpdateProperties.properties.eventGroups
reason: These are customer defined properties with variables keys but well defined value structure.
- code: AvoidAdditionalProperties
from:
- deviceregistry.json
where:
- $.definitions.Management.properties.endpoints
- $.definitions.Messaging.properties.endpoints
- $.definitions.NamespaceAssetProperties.properties.attributes
- $.definitions.NamespaceAssetUpdateProperties.properties.attributes
- $.definitions.NamespaceAssetExecuteActionRequest.properties.payload
- $.definitions.NamespaceDiscoveredAssetProperties.properties.attributes
- $.definitions.NamespaceDiscoveredAssetUpdateProperties.properties.attributes
- $.definitions.NamespaceDeviceProperties.properties.attributes
- $.definitions.NamespaceDeviceUpdateProperties.properties.attributes
reason: attributes is a customer-defined property of any shape and custom keys for other properties
- code: AvoidAdditionalProperties
from:
- deviceregistry.json
where:
- $.definitions.Management.properties.endpoints
- $.definitions.Messaging.properties.endpoints
- $.definitions.MessagingEndpoints.properties.inbound
- $.definitions.MessagingEndpointsUpdate.properties.inbound
- $.definitions.OutboundEndpoints.properties.assigned
- $.definitions.OutboundEndpointsUpdate.properties.assigned
- $.definitions.OutboundEndpoints.properties.unassigned
- $.definitions.OutboundEndpointsUpdate.properties.unassigned
- $.definitions.NamespaceDiscoveredDeviceProperties.properties.attributes
- $.definitions.NamespaceDiscoveredDeviceUpdateProperties.properties.attributes
- $.definitions.DiscoveredMessagingEndpoints.properties.inbound
- $.definitions.DiscoveredMessagingEndpointsUpdate.properties.inbound
- $.definitions.DiscoveredOutboundEndpoints.properties.assigned
- $.definitions.DiscoveredOutboundEndpointsUpdate.properties.assigned
- $.definitions.DeviceStatusEndpoints.properties.inbound
reason: These are customer defined properties with variables keys but well defined value structure.
- code: OperationIdNounVerb
from:
- deviceregistry.json
reason: An existing resource type is called 'schemas'
where:
- $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DeviceRegistry/schemaRegistries/{schemaRegistryName}/schemas"].get.operationIdThese settings apply only when --tag=package-preview-2026-03 is specified on the command line.
input-file:
- Microsoft.DeviceRegistry/preview/2026-03-01-preview/deviceregistry.json
suppressions:
- code: AvoidAdditionalProperties
from:
- deviceregistry.json
where:
- $.definitions.NamespaceAssetProperties.properties.eventGroups
- $.definitions.NamespaceAssetUpdateProperties.properties.eventGroups
- $.definitions.NamespaceDiscoveredAssetProperties.properties.eventGroups
- $.definitions.NamespaceDiscoveredAssetUpdateProperties.properties.eventGroups
reason: These are customer defined properties with variables keys but well defined value structure.
- code: AvoidAdditionalProperties
from:
- deviceregistry.json
where:
- $.definitions.Messaging.properties.endpoints
- $.definitions.NamespaceAssetProperties.properties.attributes
- $.definitions.NamespaceAssetUpdateProperties.properties.attributes
- $.definitions.NamespaceDiscoveredAssetProperties.properties.attributes
- $.definitions.NamespaceDiscoveredAssetUpdateProperties.properties.attributes
- $.definitions.NamespaceDeviceProperties.properties.attributes
- $.definitions.NamespaceDeviceUpdateProperties.properties.attributes
reason: attributes is a customer-defined property of any shape and custom keys for other properties
- code: AvoidAdditionalProperties
from:
- deviceregistry.json
where:
- $.definitions.Messaging.properties.endpoints
- $.definitions.MessagingEndpoints.properties.inbound
- $.definitions.MessagingEndpointsUpdate.properties.inbound
- $.definitions.OutboundEndpoints.properties.assigned
- $.definitions.OutboundEndpointsUpdate.properties.assigned
- $.definitions.OutboundEndpoints.properties.unassigned
- $.definitions.OutboundEndpointsUpdate.properties.unassigned
- $.definitions.NamespaceDiscoveredDeviceProperties.properties.attributes
- $.definitions.NamespaceDiscoveredDeviceUpdateProperties.properties.attributes
- $.definitions.DiscoveredMessagingEndpoints.properties.inbound
- $.definitions.DiscoveredMessagingEndpointsUpdate.properties.inbound
- $.definitions.DiscoveredOutboundEndpoints.properties.assigned
- $.definitions.DiscoveredOutboundEndpointsUpdate.properties.assigned
- $.definitions.DeviceStatusEndpoints.properties.inbound
reason: These are customer defined properties with variables keys but well defined value structure.
- code: OperationIdNounVerb
from:
- deviceregistry.json
reason: An existing resource type is called 'schemas'
where:
- $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DeviceRegistry/schemaRegistries/{schemaRegistryName}/schemas"].get.operationIdThese settings apply only when --tag=package-preview-2025-11 is specified on the command line.
input-file:
- Microsoft.DeviceRegistry/preview/2025-11-01-preview/deviceregistry.json
suppressions:
- code: AvoidAdditionalProperties
from:
- deviceregistry.json
where:
- $.definitions.NamespaceAssetProperties.properties.eventGroups
- $.definitions.NamespaceAssetUpdateProperties.properties.eventGroups
- $.definitions.NamespaceDiscoveredAssetProperties.properties.eventGroups
- $.definitions.NamespaceDiscoveredAssetUpdateProperties.properties.eventGroups
reason: These are customer defined properties with variables keys but well defined value structure.
- code: AvoidAdditionalProperties
from:
- deviceregistry.json
where:
- $.definitions.Messaging.properties.endpoints
- $.definitions.NamespaceAssetProperties.properties.attributes
- $.definitions.NamespaceAssetUpdateProperties.properties.attributes
- $.definitions.NamespaceDiscoveredAssetProperties.properties.attributes
- $.definitions.NamespaceDiscoveredAssetUpdateProperties.properties.attributes
- $.definitions.NamespaceDeviceProperties.properties.attributes
- $.definitions.NamespaceDeviceUpdateProperties.properties.attributes
reason: attributes is a customer-defined property of any shape and custom keys for other properties
- code: AvoidAdditionalProperties
from:
- deviceregistry.json
where:
- $.definitions.Messaging.properties.endpoints
- $.definitions.MessagingEndpoints.properties.inbound
- $.definitions.MessagingEndpointsUpdate.properties.inbound
- $.definitions.OutboundEndpoints.properties.assigned
- $.definitions.OutboundEndpointsUpdate.properties.assigned
- $.definitions.OutboundEndpoints.properties.unassigned
- $.definitions.OutboundEndpointsUpdate.properties.unassigned
- $.definitions.NamespaceDiscoveredDeviceProperties.properties.attributes
- $.definitions.NamespaceDiscoveredDeviceUpdateProperties.properties.attributes
- $.definitions.DiscoveredMessagingEndpoints.properties.inbound
- $.definitions.DiscoveredMessagingEndpointsUpdate.properties.inbound
- $.definitions.DiscoveredOutboundEndpoints.properties.assigned
- $.definitions.DiscoveredOutboundEndpointsUpdate.properties.assigned
- $.definitions.DeviceStatusEndpoints.properties.inbound
reason: These are customer defined properties with variables keys but well defined value structure.
- code: OperationIdNounVerb
from:
- deviceregistry.json
reason: An existing resource type is called 'schemas'
where:
- $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DeviceRegistry/schemaRegistries/{schemaRegistryName}/schemas"].get.operationIdThese settings apply only when --tag=package-2025-10 is specified on the command line.
input-file:
- Microsoft.DeviceRegistry/stable/2025-10-01/deviceregistry.json
suppressions:
- code: AvoidAdditionalProperties
from:
- deviceregistry.json
where:
- $.definitions.NamespaceAssetProperties.properties.eventGroups
- $.definitions.NamespaceAssetUpdateProperties.properties.eventGroups
- $.definitions.NamespaceDiscoveredAssetProperties.properties.eventGroups
- $.definitions.NamespaceDiscoveredAssetUpdateProperties.properties.eventGroups
reason: These are customer defined properties with variables keys but well defined value structure.
- code: AvoidAdditionalProperties
from:
- deviceregistry.json
where:
- $.definitions.Messaging.properties.endpoints
- $.definitions.NamespaceAssetProperties.properties.attributes
- $.definitions.NamespaceAssetUpdateProperties.properties.attributes
- $.definitions.NamespaceDiscoveredAssetProperties.properties.attributes
- $.definitions.NamespaceDiscoveredAssetUpdateProperties.properties.attributes
- $.definitions.NamespaceDeviceProperties.properties.attributes
- $.definitions.NamespaceDeviceUpdateProperties.properties.attributes
reason: attributes is a customer-defined property of any shape and custom keys for other properties
- code: AvoidAdditionalProperties
from:
- deviceregistry.json
where:
- $.definitions.Messaging.properties.endpoints
- $.definitions.MessagingEndpoints.properties.inbound
- $.definitions.MessagingEndpointsUpdate.properties.inbound
- $.definitions.OutboundEndpoints.properties.assigned
- $.definitions.OutboundEndpointsUpdate.properties.assigned
- $.definitions.OutboundEndpoints.properties.unassigned
- $.definitions.OutboundEndpointsUpdate.properties.unassigned
- $.definitions.NamespaceDiscoveredDeviceProperties.properties.attributes
- $.definitions.NamespaceDiscoveredDeviceUpdateProperties.properties.attributes
- $.definitions.DiscoveredMessagingEndpoints.properties.inbound
- $.definitions.DiscoveredMessagingEndpointsUpdate.properties.inbound
- $.definitions.DiscoveredOutboundEndpoints.properties.assigned
- $.definitions.DiscoveredOutboundEndpointsUpdate.properties.assigned
- $.definitions.DeviceStatusEndpoints.properties.inbound
reason: These are customer defined properties with variables keys but well defined value structure.
- code: OperationIdNounVerb
from:
- deviceregistry.json
reason: An existing resource type is called 'schemas'
where:
- $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DeviceRegistry/schemaRegistries/{schemaRegistryName}/schemas"].get.operationIdThese settings apply only when --tag=package-preview-2025-07 is specified on the command line.
input-file:
- Microsoft.DeviceRegistry/preview/2025-07-01-preview/deviceregistry.json
suppressions:
- code: AvoidAdditionalProperties
from:
- deviceregistry.json
where:
- $.definitions.Messaging.properties.endpoints
- $.definitions.NamespaceAssetProperties.properties.attributes
- $.definitions.NamespaceAssetUpdateProperties.properties.attributes
- $.definitions.NamespaceDiscoveredAssetProperties.properties.attributes
- $.definitions.NamespaceDiscoveredAssetUpdateProperties.properties.attributes
- $.definitions.NamespaceDeviceProperties.properties.attributes
- $.definitions.NamespaceDeviceUpdateProperties.properties.attributes
- $.definitions.Messaging.properties.endpoints
- $.definitions.MessagingEndpoints.properties.inbound
- $.definitions.MessagingEndpointsUpdate.properties.inbound
- $.definitions.OutboundEndpoints.properties.assigned
- $.definitions.OutboundEndpointsUpdate.properties.assigned
- $.definitions.OutboundEndpoints.properties.unassigned
- $.definitions.OutboundEndpointsUpdate.properties.unassigned
- $.definitions.NamespaceDiscoveredDeviceProperties.properties.attributes
- $.definitions.NamespaceDiscoveredDeviceUpdateProperties.properties.attributes
- $.definitions.DiscoveredMessagingEndpoints.properties.inbound
- $.definitions.DiscoveredMessagingEndpointsUpdate.properties.inbound
- $.definitions.DiscoveredOutboundEndpoints.properties.assigned
- $.definitions.DiscoveredOutboundEndpointsUpdate.properties.assigned
- $.definitions.DeviceStatusEndpoints.properties.inbound
reason: attributes is a customer-defined property of any shape and custom keys for other properties
- code: OperationIdNounVerb
from:
- deviceregistry.json
reason: An existing resource type is called 'schemas'
where:
- $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DeviceRegistry/schemaRegistries/{schemaRegistryName}/schemas"].get.operationIdThese settings apply only when --tag=package-2024-11 is specified on the command line.
input-file:
- Microsoft.DeviceRegistry/stable/2024-11-01/deviceregistry.jsonThese settings apply only when --tag=package-preview-2024-09 is specified on the command line.
input-file:
- Microsoft.DeviceRegistry/preview/2024-09-01-preview/deviceregistry.jsonThese settings apply only when --tag=package-preview-2023-11 is specified on the command line.
input-file:
- Microsoft.DeviceRegistry/preview/2023-11-01-preview/deviceregistry.jsonThis section describes what SDK should be generated by the automatic system. This is not used by Autorest itself.
swagger-to-sdk:
- repo: azure-sdk-for-python
- repo: azure-sdk-for-java
- repo: azure-sdk-for-go
- repo: azure-sdk-for-js