Bulk Registry - Update Registry

Crée, met à jour ou supprime les identités de plusieurs appareils du registre d’identités IoT Hub. Une identité d’appareil ne peut être spécifiée qu’une seule fois dans la liste. Différentes opérations (créer, mettre à jour, supprimer) sur différents appareils sont autorisées. Un maximum de 100 appareils peuvent être spécifiés par appel. Pour les opérations à grande échelle, utilisez la fonctionnalité d’importation à l’aide du stockage blob (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

Paramètres URI

Nom Dans Obligatoire Type Description
api-version
query True

string

Version de l’API.

Corps de la demande

Nom Type Description
devices

ExportImportDevice[]

Opérations de Registre à effectuer.

Réponses

Nom Type Description
200 OK

BulkRegistryOperationResult

OK.

400 Bad Request

BulkRegistryOperationResult

Demande incorrecte.

Définitions

Nom Description
AuthenticationMechanism
BulkRegistryOperationResult

Résultat de l’opération de registre en bloc.

DeviceCapabilities

Status des fonctionnalités activées sur l’appareil.

DeviceRegistryOperationError

Détails de l’erreur d’opération de registre d’appareils.

DeviceRegistryOperationWarning

Détails de l’avertissement de l’opération de registre d’appareils.

ExportImportDevice
PropertyContainer

Propriétés souhaitées et signalées du jumeau. La profondeur maximale de l’objet est de 10.

SymmetricKey
X509Thumbprint

AuthenticationMechanism

Nom Type Description
symmetricKey

SymmetricKey

Clés primaires et secondaires utilisées pour l’authentification basée sur SAS.

type enum:
  • certificateAuthority
  • none
  • sas
  • selfSigned

Type d’authentification utilisé pour se connecter au service.

x509Thumbprint

X509Thumbprint

Empreintes x509 principales et secondaires utilisées pour l’authentification basée sur x509.

BulkRegistryOperationResult

Résultat de l’opération de registre en bloc.

Nom Type Description
errors

DeviceRegistryOperationError[]

Erreurs d’opération du registre d’appareils.

isSuccessful

boolean

Le résultat d'opération.

warnings

DeviceRegistryOperationWarning[]

Avertissements de l’opération de registre d’appareils.

DeviceCapabilities

Status des fonctionnalités activées sur l’appareil.

Nom Type Description
iotEdge

boolean

Propriété qui détermine si l’appareil est un périphérique ou non.

DeviceRegistryOperationError

Détails de l’erreur d’opération de registre d’appareils.

Nom Type Description
deviceId

string

Identificateur unique de l’appareil.

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

Code d'erreur.

errorStatus

string

Détails de l’erreur.

moduleId

string

Identificateur unique du module, le cas échéant.

operation

string

Type de l’opération qui a échoué.

DeviceRegistryOperationWarning

Détails de l’avertissement de l’opération de registre d’appareils.

Nom Type Description
deviceId

string

Identificateur unique de l’appareil.

warningCode enum:

DeviceRegisteredWithoutTwin

Code d’avertissement.

warningStatus

string

Détails de l’avertissement.

ExportImportDevice

Nom Type Description
authentication

AuthenticationMechanism

Mécanisme d’authentification utilisé par le module. Ce paramètre est facultatif et est défini par défaut sur SAP s’il n’est pas fourni. Dans ce cas, les clés d’accès primaires/secondaires sont générées automatiquement.

capabilities

DeviceCapabilities

Status des fonctionnalités activées sur l’appareil.

deviceScope

string

Portée de l’appareil.

eTag

string

Chaîne représentant un ETag faible pour l’appareil RFC7232. La valeur est utilisée uniquement si le mode d’importation est updateIfMatchETag. Dans ce cas, l’opération d’importation est effectuée uniquement si cet ETag correspond à la valeur gérée par le serveur.

id

string

Identificateur unique de l’appareil.

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

Type d’opération de registre et préférences ETag.

moduleId

string

Identificateur unique du module, le cas échéant.

properties

PropertyContainer

Propriétés souhaitées et signalées pour l’appareil.

status enum:
  • disabled
  • enabled

Status du module. S’il est désactivé, le module ne peut pas se connecter au service.

statusReason

string

Chaîne de 128 caractères qui stocke la raison de l’identité de l’appareil status. Tous les caractères UTF-8 sont autorisés.

tags

object

Document JSON lu et écrit par le back-end de la solution. Les étiquettes ne sont pas visibles pour les applications d’appareil.

twinETag

string

Chaîne représentant un ETag faible pour le jumeau d’appareil RFC7232. La valeur est utilisée uniquement si le mode d’importation est updateIfMatchETag. Dans ce cas, l’opération d’importation est effectuée uniquement si cet ETag correspond à la valeur gérée par le serveur.

PropertyContainer

Propriétés souhaitées et signalées du jumeau. La profondeur maximale de l’objet est de 10.

Nom Type Description
desired

object

Collection de paires clé-valeur de propriété souhaitées. Les clés sont encodées en UTF-8, respectant la casse et d’une longueur maximale de 1 Ko. Les caractères autorisés excluent les caractères de contrôle UNICODE (segments C0 et C1), '.', '$' et space. Les valeurs souhaitées sont des objets JSON, d’une longueur maximale de 4 Ko.

reported

object

Collection de paires clé-valeur de propriété signalées. Les clés sont encodées en UTF-8, respectant la casse et d’une longueur maximale de 1 Ko. Les caractères autorisés excluent les caractères de contrôle UNICODE (segments C0 et C1), '.', '$' et space. Les valeurs de propriété signalées sont des objets JSON, d’une longueur maximale de 4 Ko.

SymmetricKey

Nom Type Description
primaryKey

string

Clé primaire codée en base64 de l’appareil.

secondaryKey

string

Clé secondaire codée en base64 de l’appareil.

X509Thumbprint

Nom Type Description
primaryThumbprint

string

Empreinte numérique principale du certificat client X509.

secondaryThumbprint

string

Empreinte secondaire du certificat client X509.