Device Update - Import Update

Importar nova versão de atualização. Esta é uma operação de execução prolongada; use Operation-Location valor do cabeçalho de resposta para verificar o status da operação.

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

Parâmetros de URI

Nome Em Obrigatório Tipo Description
endpoint
path True

string (url)

O ponto de extremidade da conta da Atualização de Dispositivo para Hub IoT (somente nome do host, sem protocolo).

instanceId
path True

string

O identificador da instância da conta do Device Update para Hub IoT.

api-version
query True

string

minLength: 1

A versão da API a ser usada para esta operação.

Corpo da solicitação

Nome Tipo Description
updateToImport

ImportUpdateInputItem[]

A atualização a ser importada (consulte https://json.schemastore.org/azure-deviceupdate-import-manifest-5.0.json de esquema para obter detalhes).

Respostas

Nome Tipo Description
200 OK

Update

A solicitação foi bem-sucedida.

202 Accepted

A solicitação foi aceita para processamento, mas o processamento ainda não foi concluído.

Cabeçalhos

Operation-Location: string

Other Status Codes

ErrorResponse

Uma resposta de erro inesperada.

Segurança

OAuth2Auth

Tipo: oauth2
Flow: implicit
URL de Autorização: https://login.microsoftonline.com/common/oauth2/authorize

Escopos

Nome Description
https://api.adu.microsoft.com/.default

Exemplos

DeviceUpdate_ImportUpdate

Solicitação de exemplo

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

Resposta de exemplo

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

Definições

Nome Description
Error

Detalhes do erro.

ErrorResponse

Resposta de erro comum.

FileImportMetadata

Metadados que descrevem um arquivo de atualização.

ImportManifestMetadata

Metadados que descrevem o manifesto de importação, um documento que descreve os arquivos e outros metadados sobre uma versão de atualização.

ImportUpdateInputItem

Importar metadados de item de entrada de atualização.

InnerError

Um objeto que contém informações mais específicas do que o objeto atual sobre o erro.

Instructions

Atualizar o contêiner de instruções de instalação.

Step

Atualizar a etapa de instrução de instalação.

StepType

Tipo de etapa.

Update

Atualizar metadados.

UpdateId

Identificador de atualização.

Error

Detalhes do erro.

Nome Tipo Description
code

string

Código de erro definido pelo servidor.

details

Error[]

Uma matriz de erros que levou ao erro relatado.

innererror

InnerError

Um objeto que contém informações mais específicas do que o objeto atual sobre o erro.

message

string

Uma representação do erro em formato legível por humanos.

occurredDateTime

string (date-time)

Data e hora em UTC quando o erro ocorreu.

target

string

O destino do erro.

ErrorResponse

Resposta de erro comum.

Nome Tipo Description
error

Error

Os detalhes do erro.

FileImportMetadata

Metadados que descrevem um arquivo de atualização.

Nome Tipo Description
filename

string

Atualize o nome do arquivo conforme especificado dentro do manifesto de importação.

url

string

Local do Blob do Azure do qual o arquivo de atualização pode ser baixado pela Atualização de Dispositivo para Hub IoT. Normalmente, essa é uma URL de blob protegida por SAS somente leitura com uma expiração definida como pelo menos 4 horas.

ImportManifestMetadata

Metadados que descrevem o manifesto de importação, um documento que descreve os arquivos e outros metadados sobre uma versão de atualização.

Nome Tipo Description
hashes

object

Um objeto JSON que contém o hash(es) do arquivo. Pelo menos o hash SHA256 é necessário. Esse objeto pode ser considerado como um conjunto de pares chave-valor em que a chave é o algoritmo de hash e o valor é o hash do arquivo calculado usando esse algoritmo.

sizeInBytes

integer (int64)

Tamanho do arquivo em número de bytes.

url

string

Local do Blob do Azure do qual o manifesto de importação pode ser baixado pela Atualização de Dispositivo para Hub IoT. Normalmente, essa é uma URL de blob protegida por SAS somente leitura com uma expiração definida como pelo menos 4 horas.

ImportUpdateInputItem

Importar metadados de item de entrada de atualização.

Nome Tipo Description
files

FileImportMetadata[]

Uma ou mais propriedades de arquivo de atualização, como nome de arquivo e URL de origem.

friendlyName

string

minLength: 1
maxLength: 512

Nome da atualização amigável.

importManifest

ImportManifestMetadata

Importar metadados de manifesto, como URL de origem, tamanho do arquivo/hashes, etc.

InnerError

Um objeto que contém informações mais específicas do que o objeto atual sobre o erro.

Nome Tipo Description
code

string

Um código de erro mais específico do que o fornecido pelo erro que contém.

errorDetail

string

O erro interno ou a mensagem de exceção.

innerError

InnerError

Um objeto que contém informações mais específicas do que o objeto atual sobre o erro.

message

string

Uma representação do erro em formato legível por humanos.

Instructions

Atualizar o contêiner de instruções de instalação.

Nome Tipo Description
steps

Step[]

Coleção de etapas de instalação.

Step

Atualizar a etapa de instrução de instalação.

Nome Tipo Valor padrão Description
description

string

minLength: 1
maxLength: 64

Descrição da etapa.

files

string[]

Coleção de nomes de arquivo a serem passados para o manipulador durante a execução. Obrigatório se o tipo de etapa estiver embutido.

handler

string

minLength: 1
maxLength: 32

Identidade do manipulador que executará esta etapa. Obrigatório se o tipo de etapa estiver embutido.

handlerProperties

Parâmetros a serem passados para o manipulador durante a execução.

type

StepType

inline

Tipo de etapa.

updateId

UpdateId

Identidade de atualização filho referenciada. Obrigatório se o tipo de etapa for referência.

StepType

Tipo de etapa.

Valor Description
inline

Tipo de passo que executa código.

reference

Tipo de passo que instala outra atualização.

Update

Atualizar metadados.

Nome Tipo Valor padrão Description
compatibility

object[]

Lista de informações de compatibilidade de atualização.

createdDateTime

string (date-time)

Data e hora em UTC quando a atualização foi criada.

description

string

minLength: 1
maxLength: 512

Descrição da atualização especificada pelo criador.

etag

string

Atualizar eTag.

friendlyName

string

minLength: 1
maxLength: 512

Nome de atualização amigável especificado pelo importador.

importedDateTime

string (date-time)

Data e hora em UTC quando a atualização foi importada.

installedCriteria

string

Cadeia de caracteres interpretada pelo cliente de Atualização de Dispositivo para determinar se a atualização está instalada no dispositivo. Preterido no esquema de manifesto de importação mais recente.

instructions

Instructions

Atualize as instruções de instalação.

isDeployable

boolean

True

Se a atualização pode ser implantada em um dispositivo por conta própria.

manifestVersion

string

Versão de esquema do manifesto usada para importar a atualização.

referencedBy

UpdateId[]

Lista de identidades de atualização que fazem referência a essa atualização.

scanResult

string

Atualizar o resultado da verificação agregada (calculado com base nos resultados da verificação de arquivo de conteúdo).

updateId

UpdateId

Atualizar identidade.

updateType

string

Tipo de atualização. Preterido no esquema de manifesto de importação mais recente.

UpdateId

Identificador de atualização.

Nome Tipo Description
name

string

Nome da atualização.

provider

string

Atualizar o provedor.

version

string

Atualizar versão.