Device Update - Import Update
Importe a nova versão de atualização. Trata-se de uma operação de longa duração; 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 do URI
| Name | Em | Obrigatório | Tipo | Descrição |
|---|---|---|---|---|
|
endpoint
|
path | True |
string (url) |
O ponto de extremidade da conta da Atualização de Dispositivo para o Hub IoT (somente nome do host, sem protocolo). |
|
instance
|
path | True |
string |
O identificador de instância da conta da Atualização de Dispositivo para o Hub IoT. |
|
api-version
|
query | True |
string minLength: 1 |
A versão da API a utilizar para esta operação. |
Corpo do Pedido
| Name | Tipo | Descrição |
|---|---|---|
| updateToImport |
A atualização a ser importada (consulte o esquema https://json.schemastore.org/azure-deviceupdate-import-manifest-5.0.json para obter detalhes). |
Respostas
| Name | Tipo | Descrição |
|---|---|---|
| 200 OK |
O pedido foi bem-sucedido. |
|
| 202 Accepted |
O pedido foi aceite para processamento, mas o processamento ainda não foi concluído. Cabeçalhos Operation-Location: string |
|
| Other Status Codes |
Uma resposta de erro inesperada. |
Segurança
OAuth2Auth
Tipo:
oauth2
Fluxo:
implicit
URL de Autorização:
https://login.microsoftonline.com/common/oauth2/authorize
Âmbitos
| Name | Descrição |
|---|---|
| https://api.adu.microsoft.com/.default |
Exemplos
DeviceUpdate_ImportUpdate
Pedido de amostra
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 da amostra
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
| Name | Descrição |
|---|---|
| Error |
Detalhes do erro. |
|
Error |
Resposta de erro comum. |
|
File |
Metadados que descrevem um arquivo de atualização. |
|
Import |
Metadados que descrevem o manifesto de importação, um documento que descreve os arquivos e outros metadados sobre uma versão de atualização. |
|
Import |
Importar metadados do item de entrada de atualização. |
|
Inner |
Um objeto que contém informações mais específicas do que o objeto atual sobre o erro. |
| Instructions |
Atualizar o contentor de instruções de instalação. |
| Step |
Etapa de instruções de instalação da atualização. |
|
Step |
Tipo de passo. |
| Update |
Atualizar metadados. |
|
Update |
Atualizar identificador. |
Error
Detalhes do erro.
| Name | Tipo | Descrição |
|---|---|---|
| code |
string |
Código de erro definido pelo servidor. |
| details |
Error[] |
Uma matriz de erros que levaram ao erro relatado. |
| innererror |
Um objeto que contém informações mais específicas do que o objeto atual sobre o erro. |
|
| message |
string |
Uma representação legível por humanos do erro. |
| occurredDateTime |
string (date-time) |
Data e hora em UTC quando o erro ocorreu. |
| target |
string |
O alvo do erro. |
ErrorResponse
Resposta de erro comum.
| Name | Tipo | Descrição |
|---|---|---|
| error |
Os detalhes do erro. |
FileImportMetadata
Metadados que descrevem um arquivo de atualização.
| Name | Tipo | Descrição |
|---|---|---|
| filename |
string |
Atualize o nome do arquivo conforme especificado dentro do manifesto de importação. |
| url |
string |
Local do Blob do Azure a partir do qual o arquivo de atualização pode ser baixado pela Atualização de Dispositivo para Hub IoT. Normalmente, trata-se de um URL de blob protegido por SAS somente leitura com uma expiração definida para 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.
| Name | Tipo | Descrição |
|---|---|---|
| hashes |
object |
Um objeto JSON contendo o(s) hash(es) do arquivo. Pelo menos SHA256 hash é necessário. Este objeto pode ser pensado como um conjunto de pares chave-valor onde a chave é o algoritmo de hash e o valor é o hash do arquivo calculado usando esse algoritmo. |
| sizeInBytes |
integer (int64) |
Tamanho do ficheiro em número de bytes. |
| url |
string |
Local do Blob do Azure a partir do qual o manifesto de importação pode ser baixado pela Atualização de Dispositivo para o Hub IoT. Normalmente, trata-se de um URL de blob protegido por SAS somente leitura com uma expiração definida para pelo menos 4 horas. |
ImportUpdateInputItem
Importar metadados do item de entrada de atualização.
| Name | Tipo | Descrição |
|---|---|---|
| files |
Uma ou mais propriedades do arquivo de atualização, como nome do arquivo e URL de origem. |
|
| friendlyName |
string minLength: 1maxLength: 512 |
Nome de atualização amigável. |
| importManifest |
Importe 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.
| Name | Tipo | Descrição |
|---|---|---|
| code |
string |
Um código de erro mais específico do que o fornecido pelo erro contido. |
| errorDetail |
string |
A mensagem interna de erro ou exceção. |
| innerError |
Um objeto que contém informações mais específicas do que o objeto atual sobre o erro. |
|
| message |
string |
Uma representação legível por humanos do erro. |
Instructions
Atualizar o contentor de instruções de instalação.
| Name | Tipo | Descrição |
|---|---|---|
| steps |
Step[] |
Conjunto de etapas de instalação. |
Step
Etapa de instruções de instalação da atualização.
| Name | Tipo | Valor predefinido | Descrição |
|---|---|---|---|
| description |
string minLength: 1maxLength: 64 |
Descrição do passo. |
|
| 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: 1maxLength: 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 | inline |
Tipo de passo. |
|
| updateId |
Identidade de atualização de filho referenciada. Obrigatório se o tipo de etapa for referência. |
StepType
Tipo de passo.
| Valor | Descrição |
|---|---|
| inline |
Tipo de passo que executa código. |
| reference |
Tipo de passo que instala outra atualização. |
Update
Atualizar metadados.
| Name | Tipo | Valor predefinido | Descrição |
|---|---|---|---|
| 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: 1maxLength: 512 |
Descrição da atualização especificada pelo criador. |
|
| etag |
string |
Atualizar ETag. |
|
| friendlyName |
string minLength: 1maxLength: 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 |
String 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 |
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 do esquema do manifesto usado para importar a atualização. |
|
| referencedBy |
Update |
Lista de identidades de atualização que fazem referência a esta atualização. |
|
| scanResult |
string |
Atualize o resultado da verificação agregada (calculado a partir dos resultados da verificação do arquivo de carga útil). |
|
| updateId |
Atualizar identidade. |
||
| updateType |
string |
Tipo de atualização. Preterido no esquema de manifesto de importação mais recente. |
UpdateId
Atualizar identificador.
| Name | Tipo | Descrição |
|---|---|---|
| name |
string |
Nome da atualização. |
| provider |
string |
Provedor de atualização. |
| version |
string |
Versão de atualização. |