Device Update - Import Update
Neue Updateversion importieren. Dies ist ein lang andauernder Vorgang; verwenden Sie Operation-Location Antwortheaderwert, um den Vorgangsstatus zu überprüfen.
POST https://{endpoint}/deviceUpdate/{instanceId}/updates:import?api-version=2026-06-01
URI-Parameter
| Name | In | Erforderlich | Typ | Beschreibung |
|---|---|---|---|---|
|
endpoint
|
path | True |
string (url) |
Geräteupdate für IoT Hub-Kontoendpunkt (nur Hostname, kein Protokoll). |
|
instance
|
path | True |
string |
Der Geräteupdate für IoT Hub-Kontoinstanzbezeichner. |
|
api-version
|
query | True |
string minLength: 1 |
Die API-Version, die für diesen Vorgang verwendet werden soll. |
Anforderungstext
| Name | Typ | Beschreibung |
|---|---|---|
| updateToImport |
Das zu importierende Update (details finden Sie unter Schema https://json.schemastore.org/azure-deviceupdate-import-manifest-5.0.json). |
Antworten
| Name | Typ | Beschreibung |
|---|---|---|
| 200 OK |
Die Anforderung ist erfolgreich. |
|
| 202 Accepted |
Die Anforderung wurde zur Verarbeitung akzeptiert, die Verarbeitung wurde jedoch noch nicht abgeschlossen. Header Operation-Location: string |
|
| Other Status Codes |
Unerwartete Fehlerantwort. |
Sicherheit
OAuth2Auth
Typ:
oauth2
Ablauf:
implicit
Autorisierungs-URL:
https://login.microsoftonline.com/common/oauth2/authorize
Bereiche
| Name | Beschreibung |
|---|---|
| https://api.adu.microsoft.com/.default |
Beispiele
DeviceUpdate_ImportUpdate
Beispielanforderung
POST https://contoso.api.adu.microsoft.com/deviceUpdate/blue/updates:import?api-version=2026-06-01
[
{
"importManifest": {
"url": "http://test.blob.core.windows.net/test/uploadimportMan.json",
"sizeInBytes": 816,
"hashes": {
"sha256": "O19LyyncPe1AGstOdkcmozLV8pSbBdqrE18HdYVohRc="
}
},
"files": [
{
"filename": "file1.bin",
"url": "http://test.blob.core.windows.net/test/upload1v5uww1q"
},
{
"filename": "file2.bin",
"url": "http://test.blob.core.windows.net/test/uploadkrmn5yw0"
},
{
"filename": "file3.bin",
"url": "http://test.blob.core.windows.net/test/uploaddq52ky5m"
}
]
}
]
Beispiel für eine Antwort
Operation-Location: /deviceUpdate/blue/updates/operations/e4491c54-916f-443d-9094-bcca546ace2f?api-version=2026-06-01
{
"updateId": {
"provider": "microsoft",
"name": "adu",
"version": "1.0.0.0"
},
"friendlyName": "Lab Sensor Update v1",
"description": "Fix for critical vulnerability",
"compatibility": [
{
"deviceManufacturer": "Microsoft",
"deviceModel": "Toaster"
}
],
"instructions": {
"steps": [
{
"description": "pre-install script",
"handler": "microsoft/script:1",
"handlerProperties": {
"arguments": "--pre-install"
},
"files": [
"configure.sh"
]
},
{
"type": "reference",
"updateId": {
"provider": "microsoft",
"name": "sensor",
"version": "1.0"
}
}
]
},
"manifestVersion": "5.0",
"importedDateTime": "2020-04-22T14:01:43.8408797-07:00",
"createdDateTime": "2019-09-11T17:00:00-07:00",
"etag": "\"3fed3378-0c67-47d2-b796-296962c66cbb\""
}
Definitionen
| Name | Beschreibung |
|---|---|
| Error |
Fehlerdetails. |
|
Error |
Häufige Fehlerantwort. |
|
File |
Metadaten, die eine Aktualisierungsdatei beschreiben. |
|
Import |
Metadaten, die das Importmanifest beschreiben, ein Dokument, das die Dateien und andere Metadaten zu einer Updateversion beschreibt. |
|
Import |
Importieren von Aktualisierungseingabeelementmetadaten. |
|
Inner |
Ein Objekt, das spezifischere Informationen enthält als das aktuelle Objekt über den Fehler. |
| Instructions |
Update der Installationsanweisungen-Container. |
| Step |
Schritt der Installationsanweisung aktualisieren. |
|
Step |
Schritttyp. |
| Update |
Aktualisieren von Metadaten. |
|
Update |
Updatebezeichner. |
Error
Fehlerdetails.
| Name | Typ | Beschreibung |
|---|---|---|
| code |
string |
Serverdefinierter Fehlercode. |
| details |
Error[] |
Ein Array von Fehlern, die zu dem gemeldeten Fehler geführt haben. |
| innererror |
Ein Objekt, das spezifischere Informationen enthält als das aktuelle Objekt über den Fehler. |
|
| message |
string |
Eine normal lesbare Darstellung des Fehlers. |
| occurredDateTime |
string (date-time) |
Datum und Uhrzeit in UTC, wenn der Fehler aufgetreten ist. |
| target |
string |
Das Ziel des Fehlers. |
ErrorResponse
Häufige Fehlerantwort.
| Name | Typ | Beschreibung |
|---|---|---|
| error |
Die Fehlerdetails. |
FileImportMetadata
Metadaten, die eine Aktualisierungsdatei beschreiben.
| Name | Typ | Beschreibung |
|---|---|---|
| filename |
string |
Aktualisieren Sie den Dateinamen wie im Importmanifest angegeben. |
| url |
string |
Azure Blob-Speicherort, von dem die Updatedatei vom Geräteupdate für IoT Hub heruntergeladen werden kann. Dies ist in der Regel eine schreibgeschützte SAS-geschützte BLOB-URL mit einem Ablaufsatz auf mindestens 4 Stunden. |
ImportManifestMetadata
Metadaten, die das Importmanifest beschreiben, ein Dokument, das die Dateien und andere Metadaten zu einer Updateversion beschreibt.
| Name | Typ | Beschreibung |
|---|---|---|
| hashes |
object |
Ein JSON-Objekt, das den Hash(en) der Datei enthält. Mindestens SHA256-Hash ist erforderlich. Dieses Objekt kann als eine Reihe von Schlüsselwertpaaren betrachtet werden, bei denen der Schlüssel der Hashalgorithmus ist, und der Wert ist der Hash der Datei, die mit diesem Algorithmus berechnet wird. |
| sizeInBytes |
integer (int64) |
Dateigröße in Bytezahl. |
| url |
string |
Azure Blob-Speicherort, von dem das Importmanifest von Device Update für IoT Hub heruntergeladen werden kann. Dies ist in der Regel eine schreibgeschützte SAS-geschützte BLOB-URL mit einem Ablaufsatz auf mindestens 4 Stunden. |
ImportUpdateInputItem
Importieren von Aktualisierungseingabeelementmetadaten.
| Name | Typ | Beschreibung |
|---|---|---|
| files |
Mindestens eine Aktualisierung von Dateieigenschaften wie Dateiname und Quell-URL. |
|
| friendlyName |
string minLength: 1maxLength: 512 |
Anzeigeaktualisierungsname. |
| importManifest |
Importieren von Manifestmetadaten wie Quell-URL, Dateigröße/Hashes usw. |
InnerError
Ein Objekt, das spezifischere Informationen enthält als das aktuelle Objekt über den Fehler.
| Name | Typ | Beschreibung |
|---|---|---|
| code |
string |
Ein spezifischerer Fehlercode als das, was vom enthaltenden Fehler bereitgestellt wurde. |
| errorDetail |
string |
Die interne Fehlermeldung oder Ausnahmemeldung. |
| innerError |
Ein Objekt, das spezifischere Informationen enthält als das aktuelle Objekt über den Fehler. |
|
| message |
string |
Eine normal lesbare Darstellung des Fehlers. |
Instructions
Update der Installationsanweisungen-Container.
| Name | Typ | Beschreibung |
|---|---|---|
| steps |
Step[] |
Sammlung der Installationsschritte. |
Step
Schritt der Installationsanweisung aktualisieren.
| Name | Typ | Standardwert | Beschreibung |
|---|---|---|---|
| description |
string minLength: 1maxLength: 64 |
Schrittbeschreibung. |
|
| files |
string[] |
Sammlung von Dateinamen, die während der Ausführung an den Handler übergeben werden sollen. Erforderlich, wenn der Schritttyp inline ist. |
|
| handler |
string minLength: 1maxLength: 32 |
Die Identität des Handlers, der diesen Schritt ausführt. Erforderlich, wenn der Schritttyp inline ist. |
|
| handlerProperties |
Parameter, die während der Ausführung an den Handler übergeben werden sollen. |
||
| type | inline |
Schritttyp. |
|
| updateId |
Referenzierte untergeordnete Updateidentität. Erforderlich, wenn der Schritttyp referenziert ist. |
StepType
Schritttyp.
| Wert | Beschreibung |
|---|---|
| inline |
Schritttyp, der die Codeausführung durchführt. |
| reference |
Schritttyp, der ein weiteres Update installiert. |
Update
Aktualisieren von Metadaten.
| Name | Typ | Standardwert | Beschreibung |
|---|---|---|---|
| compatibility |
object[] |
Liste der Updatekompatibilitätsinformationen. |
|
| createdDateTime |
string (date-time) |
Datum und Uhrzeit in UTC, wann das Update erstellt wurde. |
|
| description |
string minLength: 1maxLength: 512 |
Aktualisieren Sie die vom Ersteller angegebene Beschreibung. |
|
| etag |
string |
ETag aktualisieren. |
|
| friendlyName |
string minLength: 1maxLength: 512 |
Anzeigeaktualisierungsname, der vom Importeur angegeben wird. |
|
| importedDateTime |
string (date-time) |
Datum und Uhrzeit in UTC, zu dem das Update importiert wurde. |
|
| installedCriteria |
string |
Vom Geräteupdateclient interpretierte Zeichenfolge, um festzustellen, ob das Update auf dem Gerät installiert ist. Veraltet im neuesten Importmanifestschema. |
|
| instructions |
Installationsanweisungen aktualisieren. |
||
| isDeployable |
boolean |
True |
Gibt an, ob das Update eigenständig auf einem Gerät bereitgestellt werden kann. |
| manifestVersion |
string |
Schemaversion des Manifests, das zum Importieren des Updates verwendet wird. |
|
| referencedBy |
Update |
Liste der Updateidentitäten, die auf dieses Update verweisen. |
|
| scanResult |
string |
Aktualisieren des aggregierten Scanergebnisses (berechnet aus Ergebnissen der Nutzlastdateiüberprüfung). |
|
| updateId |
Identität aktualisieren. |
||
| updateType |
string |
Updatetyp. Veraltet im neuesten Importmanifestschema. |
UpdateId
Updatebezeichner.
| Name | Typ | Beschreibung |
|---|---|---|
| name |
string |
Updatename. |
| provider |
string |
Updateanbieter. |
| version |
string |
Updateversion. |