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
| Parameter | Type | Description |
|---|---|---|
password | string | (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
| Property | Type | Description |
|---|---|---|
result.method | number | The method ID that generated this result. |
result.code | number | The result code. See Result Codes. |
result.timing | number | The measured time for the method call in milliseconds. |
result.timestamp | string | The timestamp in seconds of when the call was made. |
result.fully_encrypted | boolean | Returns true if the entire encryptable file system is encrypted. |
result.encryption_active | boolean | • 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_wde | boolean | (optional) Returns true if a product supports whole disk encryption. |
result.locations | array<object> | An array of information on encrypted locations. |
result.locations.path | string | The path to encrypted drive, folder or file. |
result.locations.type | string | The location type: 'physical', 'virtual', 'removable', 'directory', 'archive', 'file', 'unknown'. |
result.locations.state | string | The encryption state: 'unencrypted', 'encrypted', 'suspended', 'partial', 'unknown'. |
result.locations.algorithm | string | (optional) The type of encryption used: 'aes', 'rsa', 'blowfish', '3des'. Others options may be added in the future. |
result.locations.strength | number | (optional) The strength of encryption used. This is the bit-ness of the encryption, e.g. 128, 256, etc. |
result.locations.encryptable | boolean | (optional) Specifies if the product is encryptable or not. |
result.locations.encryption_type | string | (optional) (FileVault only) Will be 'hardware' - in the case of current encryption managed by T2/Apple chip (M1/M2/...), otherwise 'software'. |
Result Codes
| Code | Name | Description |
|---|---|---|
| 0 | WAAPI_OK | The 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