Device Update - Import Update

Zaimportuj nową wersję aktualizacji. Jest to długotrwała operacja; użyj Operation-Location wartości nagłówka odpowiedzi, aby sprawdzić stan operacji.

POST https://{endpoint}/deviceUpdate/{instanceId}/updates:import?api-version=2026-06-01

Parametry identyfikatora URI

Nazwa W Wymagane Typ Opis
endpoint
path True

string (url)

Punkt końcowy konta usługi Device Update dla usługi IoT Hub (tylko nazwa hosta, brak protokołu).

instanceId
path True

string

Identyfikator wystąpienia konta usługi IoT Hub w usłudze Device Update.

api-version
query True

string

minLength: 1

Wersja interfejsu API do użycia dla tej operacji.

Treść żądania

Nazwa Typ Opis
updateToImport

ImportUpdateInputItem[]

Aktualizacja do zaimportowania (zobacz https://json.schemastore.org/azure-deviceupdate-import-manifest-5.0.json schematu, aby uzyskać szczegółowe informacje).

Odpowiedzi

Nazwa Typ Opis
200 OK

Update

Żądanie zakończyło się pomyślnie.

202 Accepted

Żądanie zostało zaakceptowane do przetwarzania, ale przetwarzanie nie zostało jeszcze ukończone.

Nagłówki

Operation-Location: string

Other Status Codes

ErrorResponse

Nieoczekiwana odpowiedź na błąd.

Zabezpieczenia

OAuth2Auth

Typ: oauth2
Flow: implicit
Adres URL autoryzacji: https://login.microsoftonline.com/common/oauth2/authorize

Zakresy

Nazwa Opis
https://api.adu.microsoft.com/.default

Przykłady

DeviceUpdate_ImportUpdate

Przykładowe żądanie

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"
      }
    ]
  }
]

Przykładowa odpowiedź

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\""
}

Definicje

Nazwa Opis
Error

Szczegóły błędu.

ErrorResponse

Typowa odpowiedź na błąd.

FileImportMetadata

Metadane opisujące plik aktualizacji.

ImportManifestMetadata

Metadane opisujące manifest importu, dokument opisujący pliki i inne metadane dotyczące wersji aktualizacji.

ImportUpdateInputItem

Zaimportuj metadane elementu wejściowego aktualizacji.

InnerError

Obiekt zawierający bardziej szczegółowe informacje niż bieżący obiekt o błędzie.

Instructions

Aktualizacja instrukcji instalacji kontener.

Step

Aktualizowanie kroku instrukcji instalacji.

StepType

Typ kroku.

Update

Aktualizowanie metadanych.

UpdateId

Aktualizowanie identyfikatora.

Error

Szczegóły błędu.

Nazwa Typ Opis
code

string

Kod błędu zdefiniowany przez serwer.

details

Error[]

Tablica błędów, które doprowadziły do zgłoszonego błędu.

innererror

InnerError

Obiekt zawierający bardziej szczegółowe informacje niż bieżący obiekt o błędzie.

message

string

Czytelna dla człowieka reprezentacja błędu.

occurredDateTime

string (date-time)

Data i godzina w formacie UTC, kiedy wystąpił błąd.

target

string

Element docelowy błędu.

ErrorResponse

Typowa odpowiedź na błąd.

Nazwa Typ Opis
error

Error

Szczegóły błędu.

FileImportMetadata

Metadane opisujące plik aktualizacji.

Nazwa Typ Opis
filename

string

Zaktualizuj nazwę pliku zgodnie z określonymi w manifeście importu.

url

string

Lokalizacja obiektu blob platformy Azure, z której można pobrać plik aktualizacji przez usługę Device Update dla usługi IoT Hub. Zazwyczaj jest to adres URL obiektu blob chronionego tylko do odczytu z wygaśnięciem ustawionym na co najmniej 4 godziny.

ImportManifestMetadata

Metadane opisujące manifest importu, dokument opisujący pliki i inne metadane dotyczące wersji aktualizacji.

Nazwa Typ Opis
hashes

object

Obiekt JSON zawierający skrót (es) pliku. Wymagany jest co najmniej skrót SHA256. Ten obiekt można traktować jako zestaw par klucz-wartość, w których klucz jest algorytmem wyznaczania wartości skrótu, a wartość jest skrótem pliku obliczanego przy użyciu tego algorytmu.

sizeInBytes

integer (int64)

Rozmiar pliku w liczbie bajtów.

url

string

Lokalizacja obiektu blob platformy Azure, z której manifest importu można pobrać za pomocą usługi Device Update dla usługi IoT Hub. Zazwyczaj jest to adres URL obiektu blob chronionego tylko do odczytu z wygaśnięciem ustawionym na co najmniej 4 godziny.

ImportUpdateInputItem

Zaimportuj metadane elementu wejściowego aktualizacji.

Nazwa Typ Opis
files

FileImportMetadata[]

Co najmniej jedna właściwości pliku aktualizacji, takie jak nazwa pliku i adres URL źródła.

friendlyName

string

minLength: 1
maxLength: 512

Przyjazna nazwa aktualizacji.

importManifest

ImportManifestMetadata

Zaimportuj metadane manifestu, takie jak adres URL źródła, rozmiar pliku/skróty itp.

InnerError

Obiekt zawierający bardziej szczegółowe informacje niż bieżący obiekt o błędzie.

Nazwa Typ Opis
code

string

Bardziej szczegółowy kod błędu niż podany przez błąd zawierający.

errorDetail

string

Wewnętrzny komunikat o błędzie lub wyjątku.

innerError

InnerError

Obiekt zawierający bardziej szczegółowe informacje niż bieżący obiekt o błędzie.

message

string

Czytelna dla człowieka reprezentacja błędu.

Instructions

Aktualizacja instrukcji instalacji kontener.

Nazwa Typ Opis
steps

Step[]

Kolekcja kroków instalacji.

Step

Aktualizowanie kroku instrukcji instalacji.

Nazwa Typ Domyślna wartość Opis
description

string

minLength: 1
maxLength: 64

Opis kroku.

files

string[]

Kolekcja nazw plików, które mają zostać przekazane do programu obsługi podczas wykonywania. Wymagane, jeśli typ kroku jest wbudowany.

handler

string

minLength: 1
maxLength: 32

Tożsamość programu obsługi, która wykona ten krok. Wymagane, jeśli typ kroku jest wbudowany.

handlerProperties

Parametry, które mają być przekazywane do programu obsługi podczas wykonywania.

type

StepType

inline

Typ kroku.

updateId

UpdateId

Przywołyliśmy tożsamość aktualizacji podrzędnej. Wymagane, jeśli typ kroku jest odwołaniem.

StepType

Typ kroku.

Wartość Opis
inline

Typ kroku, który wykonuje wykonywanie kodu.

reference

Typ kroku, który instaluje kolejną aktualizację.

Update

Aktualizowanie metadanych.

Nazwa Typ Domyślna wartość Opis
compatibility

object[]

Lista informacji o zgodności aktualizacji.

createdDateTime

string (date-time)

Data i godzina w formacie UTC utworzenia aktualizacji.

description

string

minLength: 1
maxLength: 512

Opis aktualizacji określony przez twórcę.

etag

string

Zaktualizuj element ETag.

friendlyName

string

minLength: 1
maxLength: 512

Przyjazna nazwa aktualizacji określona przez importera.

importedDateTime

string (date-time)

Data i godzina w formacie UTC podczas importowania aktualizacji.

installedCriteria

string

Ciąg interpretowany przez klienta usługi Device Update w celu określenia, czy aktualizacja jest zainstalowana na urządzeniu. Przestarzałe w najnowszym schemacie manifestu importu.

instructions

Instructions

Aktualizowanie instrukcji instalacji.

isDeployable

boolean

True

Czy aktualizację można wdrożyć na urządzeniu samodzielnie.

manifestVersion

string

Wersja schematu manifestu używana do importowania aktualizacji.

referencedBy

UpdateId[]

Lista tożsamości aktualizacji odwołujących się do tej aktualizacji.

scanResult

string

Aktualizuj wynik skanowania agregacji (obliczony na podstawie wyników skanowania pliku ładunku).

updateId

UpdateId

Aktualizowanie tożsamości.

updateType

string

Typ aktualizacji. Przestarzałe w najnowszym schemacie manifestu importu.

UpdateId

Aktualizowanie identyfikatora.

Nazwa Typ Opis
name

string

Zaktualizuj nazwę.

provider

string

Dostawca aktualizacji.

version

string

Zaktualizuj wersję.