Freigeben über


Bulk Registry - Update Registry

Erstellt, aktualisiert oder löscht die Identitäten mehrerer Geräte aus der IoT Hub-Identitätsregistrierung. Eine Geräteidentität kann nur einmal in der Liste angegeben werden. Unterschiedliche Vorgänge (Erstellen, Aktualisieren, Löschen) auf verschiedenen Geräten sind zulässig. Pro Aufruf können maximal 100 Geräte angegeben werden. Verwenden Sie für große Vorgänge das Importfeature mithilfe von BLOB-Speicher (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=2021-04-12

URI-Parameter

Name In Erforderlich Typ Beschreibung
api-version
query True

string

Version der API.

Anforderungstext

Name Typ Beschreibung
devices

ExportImportDevice[]

Die auszuführenden Registrierungsvorgänge.

Antworten

Name Typ Beschreibung
200 OK

BulkRegistryOperationResult

OKAY.

400 Bad Request

BulkRegistryOperationResult

Ungültige Anforderung;

Definitionen

Name Beschreibung
AuthenticationMechanism
BulkRegistryOperationResult

Das Ergebnis des Massenregistrierungsvorgangs.

DeviceCapabilities

Der Status der auf dem Gerät aktivierten Funktionen.

DeviceRegistryOperationError

Fehlerdetails des Geräteregistrierungsvorgangs.

DeviceRegistryOperationWarning

Die Warnung des Geräteregistrierungsvorgangs.

ExportImportDevice
PropertyContainer

Die gewünschten und gemeldeten Eigenschaften des Zwillings. Die maximale Tiefe des Objekts beträgt 10.

SymmetricKey
X509Thumbprint

AuthenticationMechanism

Name Typ Beschreibung
symmetricKey

SymmetricKey

Die primären und sekundären Schlüssel, die für die SAS-basierte Authentifizierung verwendet werden.

type enum:
  • certificateAuthority
  • none
  • sas
  • selfSigned

Der Typ der Authentifizierung, die zum Herstellen einer Verbindung mit dem Dienst verwendet wird.

x509Thumbprint

X509Thumbprint

Die primären und sekundären x509-Fingerabdrucke, die für die x509-basierte Authentifizierung verwendet werden.

BulkRegistryOperationResult

Das Ergebnis des Massenregistrierungsvorgangs.

Name Typ Beschreibung
errors

DeviceRegistryOperationError[]

Fehler beim Geräteregistrierungsvorgang.

isSuccessful

boolean

Das Vorgangsergebnis.

warnings

DeviceRegistryOperationWarning[]

Warnungen beim Geräteregistrierungsvorgang.

DeviceCapabilities

Der Status der auf dem Gerät aktivierten Funktionen.

Name Typ Beschreibung
iotEdge

boolean

Die Eigenschaft, die bestimmt, ob das Gerät ein Edgegerät ist oder nicht.

DeviceRegistryOperationError

Fehlerdetails des Geräteregistrierungsvorgangs.

Name Typ Beschreibung
deviceId

string

Der eindeutige Bezeichner des Geräts.

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
  • DeviceDisabled
  • 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

Der Fehlercode.

errorStatus

string

Die Details des Fehlers.

moduleId

string

Der eindeutige Bezeichner des Moduls, falls zutreffend.

operation

string

Der Typ des fehlgeschlagenen Vorgangs.

DeviceRegistryOperationWarning

Die Warnung des Geräteregistrierungsvorgangs.

Name Typ Beschreibung
deviceId

string

Der eindeutige Bezeichner des Geräts.

warningCode enum:

DeviceRegisteredWithoutTwin

Der Warncode.

warningStatus

string

Die Details der Warnung.

ExportImportDevice

Name Typ Beschreibung
authentication

AuthenticationMechanism

Der vom Modul verwendete Authentifizierungsmechanismus. Dieser Parameter ist optional und wird standardmäßig auf SAS festgelegt, falls nicht angegeben. In diesem Fall werden primär/sekundäre Zugriffstasten automatisch generiert.

capabilities

DeviceCapabilities

Der Status der auf dem Gerät aktivierten Funktionen.

deviceScope

string

Der Bereich des Geräts.

eTag

string

Die Zeichenfolge, die ein schwaches ETag für das Gerät RFC7232 darstellt. Der Wert wird nur verwendet, wenn der Importmodus updateIfMatchETag ist, in diesem Fall wird der Importvorgang nur ausgeführt, wenn dieses ETag mit dem vom Server verwalteten Wert übereinstimmt.

id

string

Der eindeutige Bezeichner des Geräts.

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

Der Typ des Registrierungsvorgangs und der ETag-Einstellungen.

moduleId

string

Der eindeutige Bezeichner des Moduls, falls zutreffend.

parentScopes

string[]

Die Bereiche der Edgegeräte der oberen Ebene, falls zutreffend. Nur für Edgegeräte verfügbar.

properties

PropertyContainer

Die gewünschten und gemeldeten Eigenschaften für das Gerät.

status enum:
  • disabled
  • enabled

Der Status des Moduls. Wenn sie deaktiviert ist, kann das Modul keine Verbindung mit dem Dienst herstellen.

statusReason

string

Die 128 zeichen lange Zeichenfolge, die den Grund für den Geräteidentitätsstatus speichert. Alle UTF-8-Zeichen sind zulässig.

tags

object

Das JSON-Dokument wird vom Back-End der Lösung gelesen und geschrieben. Die Tags sind für Geräte-Apps nicht sichtbar.

twinETag

string

Die Zeichenfolge, die ein schwaches ETag für das Gerät twin RFC7232 darstellt. Der Wert wird nur verwendet, wenn der Importmodus updateIfMatchETag ist, in diesem Fall wird der Importvorgang nur ausgeführt, wenn dieses ETag mit dem vom Server verwalteten Wert übereinstimmt.

PropertyContainer

Die gewünschten und gemeldeten Eigenschaften des Zwillings. Die maximale Tiefe des Objekts beträgt 10.

Name Typ Beschreibung
desired

object

Die Auflistung der gewünschten Eigenschaftsschlüssel-Wert-Paare. Die Schlüssel sind UTF-8-codiert, groß- und up-to 1 KB lang. Zulässige Zeichen schließen UNICODE-Steuerzeichen (Segmente C0 und C1), ".", "$" und Leerzeichen aus. Die gewünschten Porpertywerte sind JSON-Objekte, up-to 4 KB lang.

reported

object

Die Auflistung der gemeldeten Eigenschaftsschlüssel-Wert-Paare. Die Schlüssel sind UTF-8-codiert, groß- und up-to 1 KB lang. Zulässige Zeichen schließen UNICODE-Steuerzeichen (Segmente C0 und C1), ".", "$" und Leerzeichen aus. Die gemeldeten Eigenschaftswerte sind JSON-Objekte, up-to 4 KB länge.

SymmetricKey

Name Typ Beschreibung
primaryKey

string

Der base64-codierte Primärschlüssel des Geräts.

secondaryKey

string

Der base64-codierte Sekundärschlüssel des Geräts.

X509Thumbprint

Name Typ Beschreibung
primaryThumbprint

string

Der primäre Fingerabdruck des X509-Clientzertifikats.

secondaryThumbprint

string

Sekundärer Fingerabdruck des X509-Clientzertifikats.