Device Update - Import Update
新しい更新プログラムのバージョンをインポートします。 これは実行時間の長い操作です。応答ヘッダー値 Operation-Location 使用して、操作の状態を確認します。
POST https://{endpoint}/deviceUpdate/{instanceId}/updates:import?api-version=2026-06-01
URI パラメーター
| 名前 | / | 必須 | 型 | 説明 |
|---|---|---|---|---|
|
endpoint
|
path | True |
string (url) |
Device Update for IoT Hub アカウント エンドポイント (ホスト名のみ、プロトコルなし)。 |
|
instance
|
path | True |
string |
Device Update for IoT Hub アカウント インスタンス識別子。 |
|
api-version
|
query | True |
string minLength: 1 |
この操作に使用する API バージョン。 |
要求本文
| 名前 | 型 | 説明 |
|---|---|---|
| updateToImport |
インポートする更新プログラム (詳細については、スキーマの https://json.schemastore.org/azure-deviceupdate-import-manifest-5.0.json を参照してください)。 |
応答
| 名前 | 型 | 説明 |
|---|---|---|
| 200 OK |
要求は成功しました。 |
|
| 202 Accepted |
要求は処理のために受け入れ済みですが、処理はまだ完了していません。 ヘッダー Operation-Location: string |
|
| Other Status Codes |
予期しないエラー応答。 |
セキュリティ
OAuth2Auth
型:
oauth2
フロー:
implicit
Authorization URL (承認 URL):
https://login.microsoftonline.com/common/oauth2/authorize
スコープ
| 名前 | 説明 |
|---|---|
| https://api.adu.microsoft.com/.default |
例
DeviceUpdate_ImportUpdate
要求のサンプル
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"
}
]
}
]
応答のサンプル
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\""
}
定義
| 名前 | 説明 |
|---|---|
| Error |
エラーの詳細。 |
|
Error |
一般的なエラー応答。 |
|
File |
更新ファイルを記述するメタデータ。 |
|
Import |
インポート マニフェストを記述するメタデータ。更新バージョンに関するファイルとその他のメタデータを記述するドキュメント。 |
|
Import |
入力項目のメタデータの更新をインポートします。 |
|
Inner |
エラーに関する現在のオブジェクトよりも具体的な情報を含むオブジェクト。 |
| Instructions |
インストール手順コンテナの更新。 |
| Step |
インストール手順を更新します。 |
|
Step |
ステップの種類。 |
| Update |
メタデータを更新します。 |
|
Update |
識別子を更新します。 |
Error
エラーの詳細。
| 名前 | 型 | 説明 |
|---|---|---|
| code |
string |
サーバー定義のエラー コード。 |
| details |
Error[] |
報告されたエラーの原因となったエラーの配列。 |
| innererror |
エラーに関する現在のオブジェクトよりも具体的な情報を含むオブジェクト。 |
|
| message |
string |
エラーについての、人間が判読できる文字列。 |
| occurredDateTime |
string (date-time) |
エラーが発生した日時 (UTC)。 |
| target |
string |
エラーのターゲット。 |
ErrorResponse
一般的なエラー応答。
| 名前 | 型 | 説明 |
|---|---|---|
| error |
エラーの詳細。 |
FileImportMetadata
更新ファイルを記述するメタデータ。
| 名前 | 型 | 説明 |
|---|---|---|
| filename |
string |
インポート マニフェスト内で指定されているファイル名を更新します。 |
| url |
string |
Device Update for IoT Hub によって更新ファイルをダウンロードできる Azure BLOB の場所。 これは通常、有効期限が少なくとも 4 時間に設定された読み取り専用の SAS で保護された BLOB URL です。 |
ImportManifestMetadata
インポート マニフェストを記述するメタデータ。更新バージョンに関するファイルとその他のメタデータを記述するドキュメント。
| 名前 | 型 | 説明 |
|---|---|---|
| hashes |
object |
ファイルのハッシュを含む JSON オブジェクト。 少なくとも SHA256 ハッシュが必要です。 このオブジェクトは、キーがハッシュ アルゴリズムであり、値がそのアルゴリズムを使用して計算されたファイルのハッシュである、キーと値のペアのセットと考えることができます。 |
| sizeInBytes |
integer (int64) |
ファイル サイズ (バイト数)。 |
| url |
string |
Device Update for IoT Hub によってインポート マニフェストをダウンロードできる Azure BLOB の場所。 これは通常、有効期限が少なくとも 4 時間に設定された読み取り専用の SAS で保護された BLOB URL です。 |
ImportUpdateInputItem
入力項目のメタデータの更新をインポートします。
| 名前 | 型 | 説明 |
|---|---|---|
| files |
ファイル名やソース URL などの 1 つ以上の更新ファイルのプロパティ。 |
|
| friendlyName |
string minLength: 1maxLength: 512 |
フレンドリ更新プログラムの名前。 |
| importManifest |
ソース URL、ファイル サイズ/ハッシュなどのマニフェスト メタデータをインポートします。 |
InnerError
エラーに関する現在のオブジェクトよりも具体的な情報を含むオブジェクト。
| 名前 | 型 | 説明 |
|---|---|---|
| code |
string |
含まれているエラーによって提供されたものよりも具体的なエラー コード。 |
| errorDetail |
string |
内部エラーまたは例外メッセージ。 |
| innerError |
エラーに関する現在のオブジェクトよりも具体的な情報を含むオブジェクト。 |
|
| message |
string |
エラーについての、人間が判読できる文字列。 |
Instructions
インストール手順コンテナの更新。
| 名前 | 型 | 説明 |
|---|---|---|
| steps |
Step[] |
インストール手順のコレクション。 |
Step
インストール手順を更新します。
| 名前 | 型 | 規定値 | 説明 |
|---|---|---|---|
| description |
string minLength: 1maxLength: 64 |
手順の説明。 |
|
| files |
string[] |
実行中にハンドラーに渡されるファイル名のコレクション。 ステップの種類がインラインの場合は必須。 |
|
| handler |
string minLength: 1maxLength: 32 |
この手順を実行するハンドラーの ID。 ステップの種類がインラインの場合は必須。 |
|
| handlerProperties |
実行中にハンドラーに渡されるパラメーター。 |
||
| type | inline |
ステップの種類。 |
|
| updateId |
参照される子更新 ID。 ステップの種類が参照の場合は必須。 |
StepType
ステップの種類。
| 値 | 説明 |
|---|---|
| inline |
コード実行を実行するステップタイプ。 |
| reference |
別のアップデートをインストールするステップタイプです。 |
Update
メタデータを更新します。
| 名前 | 型 | 規定値 | 説明 |
|---|---|---|---|
| compatibility |
object[] |
更新プログラムの互換性情報の一覧。 |
|
| createdDateTime |
string (date-time) |
更新プログラムが作成された日時 (UTC)。 |
|
| description |
string minLength: 1maxLength: 512 |
作成者によって指定された説明を更新します。 |
|
| etag |
string |
ETag を更新します。 |
|
| friendlyName |
string minLength: 1maxLength: 512 |
インポーターによって指定されたフレンドリ更新プログラムの名前。 |
|
| importedDateTime |
string (date-time) |
更新プログラムがインポートされた日時 (UTC)。 |
|
| installedCriteria |
string |
デバイスに更新プログラムがインストールされているかどうかを判断するために Device Update クライアントによって解釈される文字列。 最新のインポート マニフェスト スキーマでは非推奨です。 |
|
| instructions |
更新プログラムのインストール手順。 |
||
| isDeployable |
boolean |
True |
更新プログラムを単独でデバイスに展開できるかどうか。 |
| manifestVersion |
string |
更新プログラムのインポートに使用されるマニフェストのスキーマ バージョン。 |
|
| referencedBy |
Update |
この更新プログラムを参照する更新プログラム ID の一覧。 |
|
| scanResult |
string |
集計スキャン結果を更新します (ペイロード ファイルのスキャン結果から計算されます)。 |
|
| updateId |
ID を更新します。 |
||
| updateType |
string |
更新の種類。 最新のインポート マニフェスト スキーマでは非推奨です。 |
UpdateId
識別子を更新します。
| 名前 | 型 | 説明 |
|---|---|---|
| name |
string |
更新プログラムの名前。 |
| provider |
string |
更新プロバイダー。 |
| version |
string |
バージョンを更新します。 |