Bulk Registry - Update Registry

Membuat, memperbarui, atau menghapus identitas beberapa perangkat dari registri identitas IoT Hub. Identitas perangkat hanya dapat ditentukan sekali dalam daftar. Operasi yang berbeda (membuat, memperbarui, menghapus) pada perangkat yang berbeda diizinkan. Maksimal 100 perangkat dapat ditentukan per pemanggilan. Untuk operasi skala besar, gunakan fitur impor menggunakan penyimpanan 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

Parameter URI

Nama Dalam Diperlukan Jenis Deskripsi
api-version
query True

string

Versi Api.

Isi Permintaan

Nama Jenis Deskripsi
devices

ExportImportDevice[]

Operasi registri yang akan dilakukan.

Respons

Nama Jenis Deskripsi
200 OK

BulkRegistryOperationResult

OK.

400 Bad Request

BulkRegistryOperationResult

Permintaan Buruk.

Definisi

Nama Deskripsi
AuthenticationMechanism
BulkRegistryOperationResult

Hasil operasi registri massal.

DeviceCapabilities

Status kemampuan yang diaktifkan pada perangkat.

DeviceRegistryOperationError

Detail kesalahan operasi registri perangkat.

DeviceRegistryOperationWarning

Detail peringatan operasi registri perangkat.

ExportImportDevice
PropertyContainer

Properti kembar yang diinginkan dan dilaporkan. Kedalaman maksimum objek adalah 10.

SymmetricKey
X509Thumbprint

AuthenticationMechanism

Nama Jenis Deskripsi
symmetricKey

SymmetricKey

Kunci primer dan sekunder yang digunakan untuk autentikasi berbasis SAS.

type enum:
  • certificateAuthority
  • none
  • sas
  • selfSigned

Jenis autentikasi yang digunakan untuk menyambungkan ke layanan.

x509Thumbprint

X509Thumbprint

Thumbprint x509 primer dan sekunder yang digunakan untuk autentikasi berbasis x509.

BulkRegistryOperationResult

Hasil operasi registri massal.

Nama Jenis Deskripsi
errors

DeviceRegistryOperationError[]

Kesalahan operasi registri perangkat.

isSuccessful

boolean

Hasil operasi.

warnings

DeviceRegistryOperationWarning[]

Peringatan operasi registri perangkat.

DeviceCapabilities

Status kemampuan yang diaktifkan pada perangkat.

Nama Jenis Deskripsi
iotEdge

boolean

Properti yang menentukan apakah perangkat adalah perangkat edge atau tidak.

DeviceRegistryOperationError

Detail kesalahan operasi registri perangkat.

Nama Jenis Deskripsi
deviceId

string

Pengidentifikasi unik perangkat.

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

Kode kesalahan.

errorStatus

string

Detail kesalahan.

moduleId

string

Pengidentifikasi unik modul, jika berlaku.

operation

string

Jenis operasi yang gagal.

DeviceRegistryOperationWarning

Detail peringatan operasi registri perangkat.

Nama Jenis Deskripsi
deviceId

string

Pengidentifikasi unik perangkat.

warningCode enum:

DeviceRegisteredWithoutTwin

Kode peringatan.

warningStatus

string

Detail peringatan.

ExportImportDevice

Nama Jenis Deskripsi
authentication

AuthenticationMechanism

Mekanisme autentikasi yang digunakan oleh modul. Parameter ini bersifat opsional dan default ke SAS jika tidak disediakan. Dalam hal ini, kunci akses primer/sekunder dibuat secara otomatis.

capabilities

DeviceCapabilities

Status kemampuan yang diaktifkan pada perangkat.

deviceScope

string

Cakupan perangkat.

eTag

string

String yang mewakili ETag lemah untuk perangkat RFC7232. Nilai hanya digunakan jika mode impor adalah updateIfMatchETag, dalam hal ini operasi impor dilakukan hanya jika ETag ini cocok dengan nilai yang dikelola oleh server.

id

string

Pengidentifikasi unik perangkat.

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

Jenis operasi registri dan preferensi ETag.

moduleId

string

Pengidentifikasi unik modul, jika berlaku.

properties

PropertyContainer

Properti yang diinginkan dan dilaporkan untuk perangkat.

status enum:
  • disabled
  • enabled

Status modul. Jika dinonaktifkan, modul tidak dapat tersambung ke layanan.

statusReason

string

String sepanjang 128 karakter yang menyimpan alasan status identitas perangkat. Semua karakter UTF-8 diperbolehkan.

tags

object

Dokumen JSON dibaca dan ditulis oleh back end solusi. Tag tidak terlihat oleh aplikasi perangkat.

twinETag

string

String yang mewakili ETag lemah untuk perangkat kembar RFC7232. Nilai hanya digunakan jika mode impor adalah updateIfMatchETag, dalam hal ini operasi impor dilakukan hanya jika ETag ini cocok dengan nilai yang dikelola oleh server.

PropertyContainer

Properti kembar yang diinginkan dan dilaporkan. Kedalaman maksimum objek adalah 10.

Nama Jenis Deskripsi
desired

object

Kumpulan pasangan kunci-nilai properti yang diinginkan. Kuncinya adalah UTF-8 yang dikodekan, peka huruf besar/kecil, dan panjangnya hingga 1KB. Karakter yang diizinkan mengecualikan karakter kontrol UNICODE (segmen C0 dan C1), '.', '$' dan spasi. Nilai porperty yang diinginkan adalah objek JSON, panjangnya hingga 4KB.

reported

object

Kumpulan pasangan kunci-nilai properti yang dilaporkan. Kuncinya adalah UTF-8 yang dikodekan, peka huruf besar/kecil, dan panjangnya hingga 1KB. Karakter yang diizinkan mengecualikan karakter kontrol UNICODE (segmen C0 dan C1), '.', '$' dan spasi. Nilai properti yang dilaporkan adalah objek JSON, panjangnya hingga 4KB.

SymmetricKey

Nama Jenis Deskripsi
primaryKey

string

Kunci primer perangkat yang dikodekan base64.

secondaryKey

string

Kunci sekunder yang dikodekan base64 dari perangkat.

X509Thumbprint

Nama Jenis Deskripsi
primaryThumbprint

string

Thumbprint utama sertifikat klien X509.

secondaryThumbprint

string

Thumbprint sekunder sertifikat klien X509.