Bulk Registry - Update Registry

Cria, atualiza ou exclui as identidades de vários dispositivos do registro de identidade Hub IoT. Uma identidade de dispositivo pode ser especificada apenas uma vez na lista. Diferentes operações (criar, atualizar, excluir) em dispositivos diferentes são permitidas. Um máximo de 100 dispositivos pode ser especificado por invocação. Para operações de grande escala, use o recurso de importação usando o armazenamento de blobs (https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities).

POST https://fully-qualified-iothubname.azure-devices.net/devices?api-version=2020-05-31-preview

Parâmetros de URI

Name In Required Type Description
api-version
query True
  • string

Versão da API.

Corpo da solicitação

Name Type Description
devices

As operações do Registro a serem executadas.

Respostas

Name Type Description
200 OK

OK.

400 Bad Request

Solicitação inválida.

Definições

AuthenticationMechanism
BulkRegistryOperationResult

O resultado da operação de registro em massa.

DeviceCapabilities

O status dos recursos habilitados no dispositivo.

DeviceRegistryOperationError

Os detalhes do erro de operação do registro do dispositivo.

DeviceRegistryOperationWarning

Os detalhes de aviso da operação do registro de dispositivo.

ExportImportDevice
PropertyContainer

As propriedades desejadas e relatadas do gêmeo. A profundidade máxima do objeto é 10.

SymmetricKey
X509Thumbprint

AuthenticationMechanism

Name Type Description
symmetricKey

As chaves primárias e secundárias usadas para autenticação baseada em SAS.

type enum:
  • certificateAuthority
  • none
  • sas
  • selfSigned

O tipo de autenticação usado para se conectar ao serviço.

x509Thumbprint

As impressões digitais x509 primárias e secundárias usadas para autenticação baseada em x509.

BulkRegistryOperationResult

O resultado da operação de registro em massa.

Name Type Description
errors

Os erros de operação do registro de dispositivo.

isSuccessful
  • boolean

O resultado da operação.

warnings

Os avisos de operação do registro de dispositivo.

DeviceCapabilities

O status dos recursos habilitados no dispositivo.

Name Type Description
iotEdge
  • boolean

A propriedade que determina se o dispositivo é um dispositivo de borda ou não.

DeviceRegistryOperationError

Os detalhes do erro de operação do registro do dispositivo.

Name Type Description
deviceId
  • string

O identificador exclusivo do dispositivo.

errorCode enum:
  • AmqpAddressNotFound
  • ApplyConfigurationAlreadyInProgressOnDevice
  • ArgumentInvalid
  • ArgumentNull
  • AsyncOperationNotFound
  • AzureStorageTimeout
  • AzureTableStoreError
  • AzureTableStoreNotFound
  • BackupTimedOut
  • BlobContainerValidationError
  • BulkAddDevicesNotSupported
  • BulkRegistryOperationFailure
  • CallbackSubscriptionConflict
  • CannotModifyImmutableConfigurationContent
  • CannotRegisterModuleToModule
  • CertificateAuthorityConflict
  • CertificateAuthorityNotFound
  • CertificateNotFound
  • CheckpointStoreNotFound
  • ClientClosedRequest
  • ConfigReadFailed
  • ConfigurationAlreadyExists
  • ConfigurationCountLimitExceeded
  • ConfigurationNotAvailable
  • ConfigurationNotFound
  • ConnectionForcefullyClosed
  • ConnectionForcefullyClosedOnFaultInjection
  • ConnectionForcefullyClosedOnNewConnection
  • ConnectionRejectedOnFaultInjection
  • ConnectionUnavailable
  • CustomAllocationFailed
  • CustomAllocationIotHubNotSpecified
  • CustomAllocationUnauthorizedAccess
  • DefaultStorageEndpointNotConfigured
  • DeserializationError
  • DeviceAlreadyExists
  • DeviceConnectionClosedRemotely
  • DeviceDefinedMultipleTimes
  • DeviceGroupConflict
  • DeviceGroupNotFound
  • DeviceInvalidResultCount
  • DeviceJobAlreadyExists
  • DeviceLocked
  • DeviceMaximumActiveFileUploadLimitExceeded
  • DeviceMaximumQueueDepthExceeded
  • DeviceMaximumQueueSizeExceeded
  • DeviceMessageLockLost
  • DeviceModelMaxIndexablePropertiesExceeded
  • DeviceModelMaxPropertiesExceeded
  • DeviceNotFound
  • DeviceNotOnline
  • DeviceRecordConflict
  • DeviceRecordNotFound
  • DeviceRegistrationNotFound
  • DeviceStorageEntitySerializationError
  • DeviceThrottlingLimitExceeded
  • DeviceUnavailable
  • DigitalTwinInterfaceNotFound
  • DigitalTwinModelAlreadyExists
  • DigitalTwinModelCountLimitExceeded
  • DigitalTwinModelExistsWithOtherModelType
  • DigitalTwinModelNotFound
  • DocumentDbInvalidReturnValue
  • ElasticPoolNotFound
  • ElasticPoolTenantHubNotFound
  • EnrollmentConflict
  • EnrollmentGroupConflict
  • EnrollmentGroupNotFound
  • EnrollmentNotFound
  • EtagDoesNotMatch
  • EventHubLinkAlreadyClosed
  • ExpiredFileUploadCorrelationId
  • FeatureNotSupported
  • GatewayTimeout
  • GenericBadGateway
  • GenericBadRequest
  • GenericConflict
  • GenericForbidden
  • GenericGatewayTimeout
  • GenericMethodNotAllowed
  • GenericNotFound
  • GenericPreconditionFailed
  • GenericRequestEntityTooLarge
  • GenericServerError
  • GenericServiceUnavailable
  • GenericTimeout
  • GenericTooManyRequests
  • GenericUnauthorized
  • GenericUnsupportedMediaType
  • GroupNotAvailable
  • GroupNotFound
  • GroupRecordConflict
  • GroupRecordNotFound
  • HostingServiceNotAvailable
  • ImportDevicesNotSupported
  • ImportWarningExistsError
  • IncompatibleDataType
  • InflightMessagesInLink
  • InterfaceNameCompressionModelCountLimitExceeded
  • InterfaceNameModelAlreadyExists
  • InterfaceNameModelNotFound
  • InvalidBlobState
  • InvalidConfigurationContent
  • InvalidConfigurationCustomMetricsQuery
  • InvalidConfigurationTargetCondition
  • InvalidContainerReceiveLink
  • InvalidContentEncodingOrType
  • InvalidDeviceScope
  • InvalidDigitalTwinJsonPatch
  • InvalidDigitalTwinPatch
  • InvalidDigitalTwinPatchPath
  • InvalidDigitalTwinPayload
  • InvalidEndorsementKey
  • InvalidEndpointAuthenticationType
  • InvalidEnrollmentGroupId
  • InvalidErrorCode
  • InvalidFileUploadCompletionStatus
  • InvalidFileUploadCorrelationId
  • InvalidMessageExpiryTime
  • InvalidMessagingEndpoint
  • InvalidOperation
  • InvalidPartitionEpoch
  • InvalidPnPDesiredProperties
  • InvalidPnPInterfaceDefinition
  • InvalidPnPReportedProperties
  • InvalidPnPWritableReportedProperties
  • InvalidProtocolVersion
  • InvalidRegistrationId
  • InvalidResponseWhileProxying
  • InvalidRouteTestInput
  • InvalidSchemaVersion
  • InvalidSourceOnRoute
  • InvalidStorageEndpoint
  • InvalidStorageEndpointOrBlob
  • InvalidStorageEndpointProperty
  • InvalidStorageRootKey
  • InvalidThrottleParameter
  • IotDpsSuspended
  • IotDpsSuspending
  • IotHubActivationFailed
  • IotHubFailingOver
  • IotHubFormatError
  • IotHubMaxCbsTokenExceeded
  • IotHubNotFound
  • IotHubQuotaExceeded
  • IotHubRestoring
  • IotHubSuspended
  • IotHubUnauthorized
  • IotHubUnauthorizedAccess
  • JobAlreadyExists
  • JobCancelled
  • JobNotFound
  • JobQuotaExceeded
  • JobRunPreconditionFailed
  • KeyEncryptionKeyRevoked
  • LinkCreationConflict
  • LinkedHubConflict
  • LinkedHubNotFound
  • ManagedIdentityNotEnabled
  • MessageTooLarge
  • ModelAlreadyExists
  • ModelRepoEndpointError
  • ModuleAlreadyExistsOnDevice
  • ModuleNotFound
  • NullMessage
  • OperationNotAllowedInCurrentState
  • OperationNotAvailableInCurrentTier
  • OrchestrationOperationFailed
  • OrphanDiscoveryDocument
  • PartitionNotFound
  • PreconditionFailed
  • ProvisioningRecordConflict
  • ProvisioningRecordNotFound
  • ProvisioningSettingsConflict
  • ProvisioningSettingsNotFound
  • QueryStoreClusterNotFound
  • QuotaMetricNotFound
  • ReceiveLinkOpensThrottled
  • RegistrationIdDefinedMultipleTimes
  • RegistrationStatusConflict
  • ReliableBlobStoreError
  • ReliableBlobStoreTimeoutError
  • ReliableDocDbStoreStoreError
  • RequestCanceled
  • RequestTimedOut
  • ResolutionError
  • RestoreTimedOut
  • RetryAttemptsExhausted
  • RoutingEndpointResponseForbidden
  • RoutingEndpointResponseNotFound
  • RoutingNotEnabled
  • SerializationError
  • ServerBusy
  • ServerError
  • ServiceUnavailable
  • StatisticsRetrievalError
  • StreamReservationFailure
  • SystemModuleModifyUnauthorizedAccess
  • SystemPropertyNotFound
  • TenantHubRoutingNotEnabled
  • ThrottleBacklogLimitExceeded
  • ThrottlingBacklogTimeout
  • ThrottlingException
  • ThrottlingMaxActiveJobCountExceeded
  • TooManyDevices
  • TooManyEnrollments
  • TooManyModulesOnDevice
  • UnableToCompressComponentInfo
  • UnableToCompressDiscoveryInfo
  • UnableToExpandComponentInfo
  • UnableToExpandDiscoveryInfo
  • UnableToFetchCredentials
  • UnableToFetchTenantInfo
  • UnableToShareIdentity
  • UnexpectedPropertyValue
  • UnsupportedOperationOnReplica

O código de erro.

errorStatus
  • string

Os detalhes do erro.

moduleId
  • string

O identificador exclusivo do módulo, se aplicável.

operation
  • string

O tipo da operação que falhou.

DeviceRegistryOperationWarning

Os detalhes de aviso da operação do registro de dispositivo.

Name Type Description
deviceId
  • string

O identificador exclusivo do dispositivo.

warningCode enum:
  • DeviceRegisteredWithoutTwin

O código de aviso.

warningStatus
  • string

Os detalhes do aviso.

ExportImportDevice

Name Type Description
authentication

O mecanismo de autenticação usado pelo módulo. Esse parâmetro é opcional e é padrão para SAS se não for fornecido. Nesse caso, as chaves de acesso primário/secundário são geradas automaticamente.

capabilities

O status dos recursos habilitados no dispositivo.

deviceScope
  • string

O escopo do dispositivo.

eTag
  • string

A cadeia de caracteres que representa uma ETag fraca para o dispositivo RFC7232. O valor só será usado se o modo de importação for updateIfMatchETag, nesse caso, a operação de importação será executada somente se essa ETag corresponder ao valor mantido pelo servidor.

id
  • string

O identificador exclusivo do dispositivo.

importMode enum:
  • create
  • delete
  • deleteIfMatchETag
  • update
  • updateIfMatchETag
  • updateTwin
  • updateTwinIfMatchETag

O tipo de operação do Registro e as preferências de ETag.

moduleId
  • string

O identificador exclusivo do módulo, se aplicável.

properties

As propriedades desejadas e relatadas para o dispositivo.

status enum:
  • disabled
  • enabled

O status do módulo. Se estiver desabilitado, o módulo não poderá se conectar ao serviço.

statusReason
  • string

A cadeia de caracteres de 128 caracteres que armazena o motivo do status de identidade do dispositivo. Todos os caracteres UTF-8 são permitidos.

tags
  • object

O documento JSON lido e escrito pelo back-end da solução. As marcas não são visíveis para aplicativos de dispositivo.

twinETag
  • string

A cadeia de caracteres que representa uma ETag fraca para o dispositivo gêmeo RFC7232. O valor só será usado se o modo de importação for updateIfMatchETag, nesse caso, a operação de importação será executada somente se essa ETag corresponder ao valor mantido pelo servidor.

PropertyContainer

As propriedades desejadas e relatadas do gêmeo. A profundidade máxima do objeto é 10.

Name Type Description
desired
  • object

A coleção de pares chave-valor de propriedade desejados. As chaves são codificadas em UTF-8, diferenciam maiúsculas de minúsculas e até 1KB de comprimento. Os caracteres permitidos excluem caracteres de controle UNICODE (segmentos C0 e C1), '.', '$' e espaço. Os valores porperty desejados são objetos JSON, com até 4KB de comprimento.

reported
  • object

A coleção de pares chave-valor da propriedade relatada. As chaves são codificadas em UTF-8, diferenciam maiúsculas de minúsculas e até 1KB de comprimento. Os caracteres permitidos excluem caracteres de controle UNICODE (segmentos C0 e C1), '.', '$' e espaço. Os valores de propriedade relatados são objetos JSON, com até 4KB de comprimento.

SymmetricKey

Name Type Description
primaryKey
  • string

A chave primária codificada em base64 do dispositivo.

secondaryKey
  • string

A chave secundária codificada em base64 do dispositivo.

X509Thumbprint

Name Type Description
primaryThumbprint
  • string

A impressão digital primária do certificado do cliente X509.

secondaryThumbprint
  • string

A impressão digital secundária do certificado do cliente X509.