Device Update - Import Update
Importe la nueva versión de actualización. Se trata de una operación de larga duración; use Operation-Location valor del encabezado de respuesta para comprobar el estado de la operación.
POST https://{endpoint}/deviceUpdate/{instanceId}/updates:import?api-version=2022-10-01
Parámetros de identificador URI
Nombre | En | Requerido | Tipo | Description |
---|---|---|---|---|
endpoint
|
path | True |
string url |
Device Update para IoT Hub punto de conexión de la cuenta (solo nombre de host, sin protocolo). |
instance
|
path | True |
string |
Device Update para IoT Hub identificador de instancia de cuenta. |
api-version
|
query | True |
string |
Versión de la API que se va a usar con la solicitud de cliente. |
Cuerpo de la solicitud
Nombre | Tipo | Description |
---|---|---|
updateToImport |
La actualización que se va a importar (consulte el esquema https://json.schemastore.org/azure-deviceupdate-import-manifest-5.0.json para obtener más información). |
Respuestas
Nombre | Tipo | Description |
---|---|---|
200 OK |
La versión de actualización solicitada. |
|
202 Accepted |
Solicitud de importación de actualización aceptada; La ubicación de la operación en segundo plano para realizar un seguimiento del estado se especifica en Operation-Location encabezado de respuesta. Headers Operation-Location: string |
|
Other Status Codes |
Respuesta predeterminada. |
Seguridad
azure_auth
Flujo OAuth2 de Azure Active Directory
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Nombre | Description |
---|---|
https://api.adu.microsoft.com/.default | Ámbito de autorización predeterminado. |
Ejemplos
DeviceUpdate_ImportUpdate
Sample Request
POST https://contoso.api.adu.microsoft.com/deviceUpdate/blue/updates:import?api-version=2022-10-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"
}
]
}
]
Sample Response
Operation-Location: /deviceUpdate/blue/updates/operations/e4491c54-916f-443d-9094-bcca546ace2f?api-version=2022-10-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-22T21:01:43.8408797+00:00",
"createdDateTime": "2019-09-12T00:00:00.0000000+00:00",
"etag": "\"3fed3378-0c67-47d2-b796-296962c66cbb\""
}
Definiciones
Nombre | Description |
---|---|
Error |
Detalles del error. |
Error |
Respuesta de error común. |
File |
Metadatos que describen un archivo de actualización. |
Import |
Metadatos que describen el manifiesto de importación, un documento que describe los archivos y otros metadatos sobre una versión de actualización. |
Import |
Importe los metadatos de los elementos de entrada de actualización. |
Inner |
Objeto que contiene información más específica que el objeto actual sobre el error. |
Instructions | |
Step |
Actualice el paso de instrucciones de instalación. |
Step |
Tipo de paso. |
Update |
Actualizar metadatos. |
Update |
Identificador de actualización. |
Error
Detalles del error.
Nombre | Tipo | Description |
---|---|---|
code |
string |
Código de error definido por el servidor. |
details |
Error[] |
Matriz de errores que provocó el error notificado. |
innererror |
Objeto que contiene información más específica que el objeto actual sobre el error. |
|
message |
string |
Representación legible del error. |
occurredDateTime |
string |
Fecha y hora en UTC cuando se produjo el error. |
target |
string |
Destino del error. |
ErrorResponse
Respuesta de error común.
Nombre | Tipo | Description |
---|---|---|
error |
Los detalles del error. |
FileImportMetadata
Metadatos que describen un archivo de actualización.
Nombre | Tipo | Description |
---|---|---|
filename |
string |
Actualice el nombre de archivo tal y como se especifica dentro del manifiesto de importación. |
url |
string |
Ubicación del blob de Azure desde la que Device Update puede descargar el archivo de actualización para IoT Hub. Normalmente, se trata de una dirección URL de blob protegida por SAS de solo lectura con una expiración establecida en al menos 4 horas. |
ImportManifestMetadata
Metadatos que describen el manifiesto de importación, un documento que describe los archivos y otros metadatos sobre una versión de actualización.
Nombre | Tipo | Description |
---|---|---|
hashes |
object |
Objeto JSON que contiene los valores hash del archivo. Se requiere al menos el hash SHA256. Este objeto se puede considerar como un conjunto de pares clave-valor donde la clave es el algoritmo hash y el valor es el hash del archivo calculado mediante ese algoritmo. |
sizeInBytes |
integer |
Tamaño de archivo en número de bytes. |
url |
string |
Ubicación del blob de Azure desde la que device Update puede descargar el manifiesto de importación para IoT Hub. Normalmente, se trata de una dirección URL de blob protegida por SAS de solo lectura con una expiración establecida en al menos 4 horas. |
ImportUpdateInputItem
Importe los metadatos de los elementos de entrada de actualización.
Nombre | Tipo | Description |
---|---|---|
files |
Una o varias propiedades de archivo de actualización, como el nombre de archivo y la dirección URL de origen. |
|
friendlyName |
string |
Nombre descriptivo de la actualización. |
importManifest |
Importe metadatos del manifiesto, como la dirección URL de origen, el tamaño o los hashes de archivo, etc. |
InnerError
Objeto que contiene información más específica que el objeto actual sobre el error.
Nombre | Tipo | Description |
---|---|---|
code |
string |
Un código de error más específico que el proporcionado por el error contenedor. |
errorDetail |
string |
Mensaje interno de error o excepción. |
innerError |
Objeto que contiene información más específica que el objeto actual sobre el error. |
|
message |
string |
Representación legible del error. |
Instructions
Nombre | Tipo | Description |
---|---|---|
steps |
Step[] |
Colección de pasos de instalación. |
Step
Actualice el paso de instrucciones de instalación.
Nombre | Tipo | Valor predeterminado | Description |
---|---|---|---|
description |
string |
Descripción del paso. |
|
files |
string[] |
Colección de nombres de archivo que se van a pasar al controlador durante la ejecución. Obligatorio si el tipo de paso está insertado. |
|
handler |
string |
Identidad del controlador que ejecutará este paso. Obligatorio si el tipo de paso está insertado. |
|
handlerProperties |
object |
Parámetros que se van a pasar al controlador durante la ejecución. |
|
type | inline |
Tipo de paso. |
|
updateId |
Identidad de actualización secundaria a la que se hace referencia. Obligatorio si el tipo de paso es referencia. |
StepType
Tipo de paso.
Nombre | Tipo | Description |
---|---|---|
inline |
string |
|
reference |
string |
Update
Actualizar metadatos.
Nombre | Tipo | Valor predeterminado | Description |
---|---|---|---|
compatibility |
object[] |
Lista de información de compatibilidad de actualizaciones. |
|
createdDateTime |
string |
Fecha y hora en UTC cuando se creó la actualización. |
|
description |
string |
Actualice la descripción especificada por creator. |
|
etag |
string |
Actualice ETag. |
|
friendlyName |
string |
Nombre de actualización descriptivo especificado por el importador. |
|
importedDateTime |
string |
Fecha y hora en UTC cuando se importó la actualización. |
|
installedCriteria |
string |
Cadena interpretada por el cliente de Device Update para determinar si la actualización está instalada en el dispositivo. En desuso en el esquema de manifiesto de importación más reciente. |
|
instructions |
Actualice las instrucciones de instalación. |
||
isDeployable |
boolean |
True |
Si la actualización se puede implementar en un dispositivo por su cuenta. |
manifestVersion |
string |
Versión de esquema del manifiesto usado para importar la actualización. |
|
referencedBy |
Update |
Lista de identidades de actualización que hacen referencia a esta actualización. |
|
scanResult |
string |
Actualizar el resultado del examen agregado (calculado a partir de los resultados del examen del archivo de carga). |
|
updateId |
Identidad de actualización. |
||
updateType |
string |
Tipo de actualización. En desuso en el esquema de manifiesto de importación más reciente. |
UpdateId
Identificador de actualización.
Nombre | Tipo | Description |
---|---|---|
name |
string |
Nombre de actualización. |
provider |
string |
Proveedor de actualización. |
version |
string |
Actualizar versión. |