Skip to main content

InstallDriverFirmwareUpdate

(Windows only) Install a driver/firmware update package. The engine may extract the package to a temporary directory as needed and write installer's logs to the installer directory.

Syntax​

Method ID​

#define WA_VMOD_INSTALL_DRIVER_FIRMWARE_UPDATE 50903

JSON Input Structure​

{
"input": {
"method": 50903,
"patch_id": string,
"installer_path": string,
"timeout": number,
"preflight_check": boolean
}
}

Input Properties​

ParameterTypeDescription
patch_idstringPatch identifier from DetectDriverFirmwarePatches output.
installer_pathstringPath to the downloaded installer package or executable.
timeoutnumber(optional) Maximum time (in seconds) to wait for the installer to complete. Default: 1800 (30 minutes).
preflight_checkboolean(optional) When true, the SDK verifies preconditions like power status (AC connected and battery level) and BitLocker status before running the BIOS installer. If a check fails, installation is blocked and an error is returned. The default value is true.

JSON Output Structure​

{
"result": {
"method": 50903,
"code": number,
"timing": number,
"timestamp": string,
"install_return_code": string,
"require_restart": number,
"log_paths": [
string,
...
]
}
}

Output Properties​

PropertyTypeDescription
result.methodnumberThe method ID that generated this result.
result.codenumberThe result code. See Result Codes.
result.timingnumberThe measured time for the method call in milliseconds.
result.timestampstringThe timestamp in seconds of when the call was made.
result.install_return_codestringReturn code from the vendor installer process, serialized as a string.
result.require_restartnumberRestart indicator.
• 0 = No reboot
• 1 = Requires reboot
• 2 = Forces reboot
• 3 = Forces shutdown
• 4 = Delayed forced reboot
result.log_pathsarray<string>Paths to generated installation log files. May be empty if no logs were produced.

Result Codes​

CodeNameDescription
0WAAPI_OKInstalled successfully. No restart required.
1003WA_VMOD_INSTALLATION_NEED_RESTARTInstalled. OS restart required to complete the update.
-5WAAPI_ERROR_NOT_INITIALIZEDOESIS Framework has not been initialized yet (for example, because wa_api_setup was not called successfully or the license required by this module is missing).
-15WAAPI_ERROR_DATABASE_ENTRY_MISSINGpatch_id is not found in the database.
-16WAAPI_ERROR_DATABASE_NOT_INITIALIZEDDatabase not loaded — call LoadDriverFirmwareDatabase before this method.
-20WAAPI_ERROR_INVALID_INPUT_ARGSRequired field is missing or has unexpected type and/or value, or optional field exists but has unexpected type and/or value.
-22WAAPI_ERROR_ACCESS_DENIEDAdministrator privileges required, or insufficient permissions to read the database file.
-28WAAPI_ERROR_NOT_FOUNDInstaller file does not exist.
-48WAAPI_ERROR_HASH_MISMATCHPackage integrity check failed — SHA-256 does not match expected value.
-49WAAPI_ERROR_THREAD_TIMEOUTInstallation did not complete within the configured timeout.
-1034WA_VMOD_ERROR_INSTALLATION_FAILEDInstaller executed but reported failure. Check install_return_code and log_paths.
-1036WA_VMOD_ERROR_EXTRACT_FAILEDFailed to extract the installer package before execution.
-1049WAAPI_ERROR_NO_FREE_SPACEFree disk space on the target drive does not meet the patch's requirement.
-1066WA_VMOD_ERROR_VENDOR_NOT_SUPPORTEDThe device vendor is not supported.
-1068WA_VMOD_ERROR_DEPENDENCIES_NOT_METInstallation dependencies are not satisfied.
-1WAAPI_ERROR_GENERALUnexpected failure with no more specific error type.
note

Other codes may be returned. See the full Result Codes reference for the complete list.

Remarks​

Error Handling​

The results of this function are determined by the error code returned by the call. If successful, WAAPI_OK or a special success code will be returned. Always check both the function return value and the result.code field in the output JSON.

Examples​

Examples will be added here demonstrating the usage of this method.

See Also​


Last updated: 2026-10-01