Skip to main content

GetEncryptionState

Will determine what locations are currently encrypted. Directory paths will always end in ''

Syntax​

Method ID​

#define WAAPI_MID_GET_ENCRYPTION_STATE 1009

JSON Input Structure​

{
"input": {
"method": 1009,
"signature": number,
"password": string
}
}

Input Properties​

ParameterTypeDescription
passwordstring(optional) The password required by the product to modify the application state.

JSON Output Structure​

{
"result": {
"method": 1009,
"code": number,
"timing": number,
"timestamp": string,
"fully_encrypted": boolean,
"encryption_active": boolean,
"support_wde": boolean,
"locations": [
{
"path": string,
"type": string,
"state": string,
"algorithm": string,
"strength": number,
"encryptable": boolean,
"encryption_type": 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.fully_encryptedbooleanReturns true if the entire encryptable file system is encrypted.
result.encryption_activeboolean• FileVault only: Returns true if FileVault is turned on, otherwise false.
• Other products: Returns true if the product is actively being used for encryption.
result.support_wdeboolean(optional) Returns true if a product supports whole disk encryption.
result.locationsarray<object>An array of information on encrypted locations.
result.locations.pathstringThe path to encrypted drive, folder or file.
result.locations.typestringThe location type: 'physical', 'virtual', 'removable', 'directory', 'archive', 'file', 'unknown'.
result.locations.statestringThe encryption state: 'unencrypted', 'encrypted', 'suspended', 'partial', 'unknown'.
result.locations.algorithmstring(optional) The type of encryption used: 'aes', 'rsa', 'blowfish', '3des'. Others options may be added in the future.
result.locations.strengthnumber(optional) The strength of encryption used. This is the bit-ness of the encryption, e.g. 128, 256, etc.
result.locations.encryptableboolean(optional) Specifies if the product is encryptable or not.
result.locations.encryption_typestring(optional) (FileVault only) Will be 'hardware' - in the case of current encryption managed by T2/Apple chip (M1/M2/...), otherwise 'software'.

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.

Knowledge Base​

Additional details are available in the Understanding Disk Encryption Detection via DetectProduct and GetEncryptionState methods.

Examples​

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

See Also​


Last updated: 2026-10-01