Skip to main content

GetProductInfo

Will retrieve product information given a product signature.

Syntax​

Method ID​

#define WAAPI_MID_COMMON_GET_PRODUCT_INFO 109

JSON Input Structure​

{
"input": {
"method": 109,
"signature": number,
"run_detection": boolean,
"detect_user_installed_mode": boolean
}
}

Input Properties​

ParameterTypeDescription
run_detectionboolean(optional) Specifies whether detection should be run for the product (default is false). If true and the product is not detected then the call will return WAAPI_ERROR_NOT_FOUND. If false, some of the info returned, such as categories, may not be valid for the current product on the system.
detect_user_installed_modeboolean(optional) Specifies whether this method should check for the installed mode of the product (default is false).

JSON Output Structure​

{
"result": {
"method": 109,
"code": number,
"timing": number,
"timestamp": string,
"detected_product": {
"signature": number,
"sig_name": string,
"categories": [
number,
...
],
"installed_for_all_users": boolean,
"methods": [
number,
...
],
"labels": {
"pua": boolean,
"toolbar": boolean,
"bloatware": boolean,
"adware": boolean
},
"product": {
"id": number,
"name": string
},
"vendor": {
"id": number,
"name": 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.detected_productobjectA detected product on this system.
result.detected_product.signaturenumberThe unique identifier for a product signature.
result.detected_product.sig_namestringThe name collected for this signature of the product.
result.detected_product.categoriesarray<number>The product categories identified for this signature of the product.
result.detected_product.product.idnumberThe unique identifier for the product associated with this signature.
result.detected_product.product.namestringThe product name.
result.detected_product.vendor.idnumberThe unique identifier for the vendor of this product.
result.detected_product.vendor.namestringThe vendor name.
result.detected_product.installed_for_all_usersboolean(optional) Exist if input flag detect_user_installed_mode is true. The result is true if the product is installed for all users on the machine, otherwise false.
result.detected_product.methodsobject(optional) The methods that are available for the product, separated by module. Only the listed modules currently have the capability to track which methods are available.
result.detected_product.methods.manageabilityarray<number>(optional) The method ids that are available when the manageability module is deployed.
result.detected_product.methods.removalarray<number>(optional) The method ids that are available when the removal module is deployed.
result.detected_product.methods.3rdpartyarray<number>(optional) The method ids that are available when the 3rd party api is deployed.
result.detected_product.methods.constantarray<number>(optional) The method ids which have a fixed error return. This is generally to represent a method that is unsupported.
result.detected_product.labelsobjectThe labels for the product. Defined labels will ALWAYS exist, but additional labels may also be present.
result.detected_product.labels.puabooleanBoolean value which is true if the product is classified as a potentially unwanted application.
result.detected_product.labels.toolbarbooleanBoolean value which is true if the product is classified as a toolbar application.
result.detected_product.labels.bloatwarebooleanBoolean value which is true if the product is classified as a bloatware application.
result.detected_product.labels.adwarebooleanBoolean value which is true if the product is classified as an adware application.

Result Codes​

CodeNameDescription
0WAAPI_OKThe operation completed successfully.
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