pool.dataset.encryption_summary
===============================

Retrieve summary of all encrypted roots under `id`.

Keys/passphrase can be supplied to check if the keys are valid.

Example output: [
    { "name": "vol", "key_format": "PASSPHRASE", "key_present_in_database": false, "valid_key": true, "locked": true, "unlock_error": null, "unlock_successful": true }, {
        "name": "vol/c1/d1", "key_format": "PASSPHRASE", "key_present_in_database": false, "valid_key": false, "locked": true, "unlock_error": "Provided key is invalid", "unlock_successful": false }, {
        "name": "vol/c", "key_format": "PASSPHRASE", "key_present_in_database": false, "valid_key": false, "locked": true, "unlock_error": "Key not provided", "unlock_successful": false }, {
        "name": "vol/c/d2", "key_format": "PASSPHRASE", "key_present_in_database": false, "valid_key": false, "locked": true, "unlock_error": "Child cannot be unlocked when parent "vol/c" is locked and provided key is invalid", "unlock_successful": false }
]

This method is a job.

*This job CAN be used with file upload.* See :ref:`uploading-files`.

.. raw:: html

    <div id="json-schema">
    <span class="badge badge-dark value-type">Type: object</span><br/>
    <div class="accordion" id="accordionCall_parameters">
    <div class="card">
    <div class="card-header" id="headingCall_parameters">
    <h2 class="mb-0">
    <button aria-controls="Call_parameters" aria-expanded="" class="btn btn-link property-name-button" data-target="#Call_parameters" data-toggle="collapse" onclick="setAnchor('#Call_parameters')" type="button"><span class="property-name">Call parameters</span></button>
    </h2>
    </div>
    <div aria-labelledby="headingCall_parameters" class="collapse property-definition-div" data-parent="#accordionCall_parameters" id="Call_parameters">
    <div class="card-body pl-5">
    <span class="badge badge-dark value-type">Type: array</span><br/>
    <span class="badge badge-info no-additional">No Additional Items</span><h4>Tuple Validation</h4>
    <h5>Parameter 1: id</h5>
    <div class="card">
    <div class="card-body items-definition" id="Call_parameters_items_i0">
    <h4>id</h4><span class="badge badge-dark value-type">Type: string</span><br/>
    <span class="description"><p>The dataset ID (full path) to generate an encryption summary for.</p>
    </span>
    </div>
    </div>
    <h5>Parameter 2: options</h5>
    <div class="card">
    <div class="card-body items-definition" id="Call_parameters_items_i1">
    <h4>options</h4><span class="badge badge-dark value-type">Type: object</span><br/>
    <span class="description"><p>Options for generating the encryption summary including force settings and datasets.</p>
    </span> <span class="badge badge-info no-additional">No Additional Properties</span>
    <div class="accordion" id="accordionCall_parameters_items_i1_key_file">
    <div class="card">
    <div class="card-header" id="headingCall_parameters_items_i1_key_file">
    <h2 class="mb-0">
    <button aria-controls="Call_parameters_items_i1_key_file" aria-expanded="" class="btn btn-link property-name-button" data-target="#Call_parameters_items_i1_key_file" data-toggle="collapse" onclick="setAnchor('#Call_parameters_items_i1_key_file')" type="button"><span class="property-name">key_file</span></button>
    </h2>
    </div>
    <div aria-labelledby="headingCall_parameters_items_i1_key_file" class="collapse property-definition-div" data-parent="#accordionCall_parameters_items_i1_key_file" id="Call_parameters_items_i1_key_file">
    <div class="card-body pl-5">
    <h4>Key File</h4><span class="badge badge-dark value-type">Type: boolean</span> <span class="badge badge-success default-value">Default: false</span><br/>
    <span class="description"><p>Whether keys are provided via key files rather than directly.</p>
    </span>
    </div>
    </div>
    </div>
    </div>
    <div class="accordion" id="accordionCall_parameters_items_i1_force">
    <div class="card">
    <div class="card-header" id="headingCall_parameters_items_i1_force">
    <h2 class="mb-0">
    <button aria-controls="Call_parameters_items_i1_force" aria-expanded="" class="btn btn-link property-name-button" data-target="#Call_parameters_items_i1_force" data-toggle="collapse" onclick="setAnchor('#Call_parameters_items_i1_force')" type="button"><span class="property-name">force</span></button>
    </h2>
    </div>
    <div aria-labelledby="headingCall_parameters_items_i1_force" class="collapse property-definition-div" data-parent="#accordionCall_parameters_items_i1_force" id="Call_parameters_items_i1_force">
    <div class="card-body pl-5">
    <h4>Force</h4><span class="badge badge-dark value-type">Type: boolean</span> <span class="badge badge-success default-value">Default: false</span><br/>
    <span class="description"><p>Force unlock operations even if mount paths already exist.</p>
    </span>
    </div>
    </div>
    </div>
    </div>
    <div class="accordion" id="accordionCall_parameters_items_i1_datasets">
    <div class="card">
    <div class="card-header" id="headingCall_parameters_items_i1_datasets">
    <h2 class="mb-0">
    <button aria-controls="Call_parameters_items_i1_datasets" aria-expanded="" class="btn btn-link property-name-button" data-target="#Call_parameters_items_i1_datasets" data-toggle="collapse" onclick="setAnchor('#Call_parameters_items_i1_datasets')" type="button"><span class="property-name">datasets</span></button>
    </h2>
    </div>
    <div aria-labelledby="headingCall_parameters_items_i1_datasets" class="collapse property-definition-div" data-parent="#accordionCall_parameters_items_i1_datasets" id="Call_parameters_items_i1_datasets">
    <div class="card-body pl-5">
    <h4>Datasets</h4><span class="badge badge-dark value-type">Type: array of object</span> <span class="badge badge-success default-value">Default: []</span><br/>
    <span class="description"><p>Array of dataset-specific unlock options and credentials.</p>
    </span>
    <span class="badge badge-info no-additional">No Additional Items</span><h5>Each item of this array must be:</h5>
    <div class="card">
    <div class="card-body items-definition" id="Call_parameters_items_i1_datasets_items">
    <h4>PoolDatasetEncryptionSummaryOptionsDataset</h4><span class="badge badge-dark value-type">Type: object</span><br/>
    <span class="badge badge-info no-additional">No Additional Properties</span>
    <div class="accordion" id="accordionCall_parameters_items_i1_datasets_items_force">
    <div class="card">
    <div class="card-header" id="headingCall_parameters_items_i1_datasets_items_force">
    <h2 class="mb-0">
    <button aria-controls="Call_parameters_items_i1_datasets_items_force" aria-expanded="" class="btn btn-link property-name-button" data-target="#Call_parameters_items_i1_datasets_items_force" data-toggle="collapse" onclick="setAnchor('#Call_parameters_items_i1_datasets_items_force')" type="button"><span class="property-name">force</span></button>
    </h2>
    </div>
    <div aria-labelledby="headingCall_parameters_items_i1_datasets_items_force" class="collapse property-definition-div" data-parent="#accordionCall_parameters_items_i1_datasets_items_force" id="Call_parameters_items_i1_datasets_items_force">
    <div class="card-body pl-5">
    <h4>Force</h4><span class="badge badge-dark value-type">Type: boolean</span> <span class="badge badge-success default-value">Default: false</span><br/>
    <span class="description"><p>Force unlock even if the mount path already exists and is not empty.</p>
    </span>
    </div>
    </div>
    </div>
    </div>
    <div class="accordion" id="accordionCall_parameters_items_i1_datasets_items_name">
    <div class="card">
    <div class="card-header" id="headingCall_parameters_items_i1_datasets_items_name">
    <h2 class="mb-0">
    <button aria-controls="Call_parameters_items_i1_datasets_items_name" aria-expanded="" class="btn btn-link property-name-button" data-target="#Call_parameters_items_i1_datasets_items_name" data-toggle="collapse" onclick="setAnchor('#Call_parameters_items_i1_datasets_items_name')" type="button"><span class="property-name">name</span> <span class="badge badge-warning required-property">Required</span></button>
    </h2>
    </div>
    <div aria-labelledby="headingCall_parameters_items_i1_datasets_items_name" class="collapse property-definition-div" data-parent="#accordionCall_parameters_items_i1_datasets_items_name" id="Call_parameters_items_i1_datasets_items_name">
    <div class="card-body pl-5">
    <h4>Name</h4><span class="badge badge-dark value-type">Type: string</span><br/>
    <span class="description"><p>The dataset name to unlock.</p>
    </span>
    <p><span class="badge badge-light restriction min-length-restriction" id="Call_parameters_items_i1_datasets_items_name_minLength">Must be at least <code>1</code> characters long</span></p>
    </div>
    </div>
    </div>
    </div>
    <div class="accordion" id="accordionCall_parameters_items_i1_datasets_items_key">
    <div class="card">
    <div class="card-header" id="headingCall_parameters_items_i1_datasets_items_key">
    <h2 class="mb-0">
    <button aria-controls="Call_parameters_items_i1_datasets_items_key" aria-expanded="" class="btn btn-link property-name-button" data-target="#Call_parameters_items_i1_datasets_items_key" data-toggle="collapse" onclick="setAnchor('#Call_parameters_items_i1_datasets_items_key')" type="button"><span class="property-name">key</span></button>
    </h2>
    </div>
    <div aria-labelledby="headingCall_parameters_items_i1_datasets_items_key" class="collapse property-definition-div" data-parent="#accordionCall_parameters_items_i1_datasets_items_key" id="Call_parameters_items_i1_datasets_items_key">
    <div class="card-body pl-5">
    <h4>Key</h4><span class="badge badge-dark value-type">Type: string</span><br/>
    <span class="description"><p>Raw hex-encoded encryption key for this dataset.</p>
    </span>
    <p><span class="badge badge-light restriction min-length-restriction" id="Call_parameters_items_i1_datasets_items_key_minLength">Must be at least <code>64</code> characters long</span></p><p><span class="badge badge-light restriction max-length-restriction" id="Call_parameters_items_i1_datasets_items_key_maxLength">Must be at most <code>64</code> characters long</span></p>
    </div>
    </div>
    </div>
    </div>
    <div class="accordion" id="accordionCall_parameters_items_i1_datasets_items_passphrase">
    <div class="card">
    <div class="card-header" id="headingCall_parameters_items_i1_datasets_items_passphrase">
    <h2 class="mb-0">
    <button aria-controls="Call_parameters_items_i1_datasets_items_passphrase" aria-expanded="" class="btn btn-link property-name-button" data-target="#Call_parameters_items_i1_datasets_items_passphrase" data-toggle="collapse" onclick="setAnchor('#Call_parameters_items_i1_datasets_items_passphrase')" type="button"><span class="property-name">passphrase</span></button>
    </h2>
    </div>
    <div aria-labelledby="headingCall_parameters_items_i1_datasets_items_passphrase" class="collapse property-definition-div" data-parent="#accordionCall_parameters_items_i1_datasets_items_passphrase" id="Call_parameters_items_i1_datasets_items_passphrase">
    <div class="card-body pl-5">
    <h4>Passphrase</h4><span class="badge badge-dark value-type">Type: string</span><br/>
    <span class="description"><p>Passphrase for this dataset if using passphrase-based encryption.</p>
    </span>
    <p><span class="badge badge-light restriction min-length-restriction" id="Call_parameters_items_i1_datasets_items_passphrase_minLength">Must be at least <code>1</code> characters long</span></p>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    <div class="accordion" id="accordionReturn_value">
    <div class="card">
    <div class="card-header" id="headingReturn_value">
    <h2 class="mb-0">
    <button aria-controls="Return_value" aria-expanded="" class="btn btn-link property-name-button" data-target="#Return_value" data-toggle="collapse" onclick="setAnchor('#Return_value')" type="button"><span class="property-name">Return value</span></button>
    </h2>
    </div>
    <div aria-labelledby="headingReturn_value" class="collapse property-definition-div" data-parent="#accordionReturn_value" id="Return_value">
    <div class="card-body pl-5">
    <h4>Result</h4><span class="badge badge-dark value-type">Type: array of object</span><br/>
    <span class="description"><p>Array of encryption status information for datasets that would be affected by an unlock operation.</p>
    </span>
    <span class="badge badge-info no-additional">No Additional Items</span><h5>Each item of this array must be:</h5>
    <div class="card">
    <div class="card-body items-definition" id="Return_value_items">
    <h4>PoolDatasetEncryptionSummary</h4><span class="badge badge-dark value-type">Type: object</span><br/>
    <span class="description"><p>There are 2 keys which show if a recursive unlock operation is done for <code>id</code>, which dataset will be unlocked and     if not why it won't be unlocked. The keys namely are <code>unlock_successful</code> and <code>unlock_error</code>. The former is a     boolean value showing if unlock would succeed/fail. The latter is description why it failed if it failed.</p>
    <p>In some cases it's possible that the provided key/passphrase is valid but the path where the dataset is supposed     to be mounted after being unlocked already exists and is not empty. In this case, unlock operation would fail and     <code>unlock_error</code> will reflect this error appropriately. This can be overridden by setting     <code>options.datasets.X.force</code> boolean flag or by setting <code>options.force</code> flag. In practice, when the dataset is     going to be unlocked and these flags have been provided to <code>pool.dataset.unlock</code>, system will rename the     directory/file path where the dataset should be mounted resulting in successful unlock of the dataset.</p>
    <p>If a dataset is already unlocked, it will show up as true for "unlock<em>successful" regardless of what key user     provided as the unlock keys in the output are to reflect what a real unlock operation would behave. If user is     interested in seeing if a provided key is valid or not, then the key to look out for in the output is "valid</em>key"     which based on what system has in database or if a user provided one, validates the key and sets a boolean value     for the dataset.</p>
    </span> <span class="badge badge-info no-additional">No Additional Properties</span>
    <div class="accordion" id="accordionReturn_value_items_name">
    <div class="card">
    <div class="card-header" id="headingReturn_value_items_name">
    <h2 class="mb-0">
    <button aria-controls="Return_value_items_name" aria-expanded="" class="btn btn-link property-name-button" data-target="#Return_value_items_name" data-toggle="collapse" onclick="setAnchor('#Return_value_items_name')" type="button"><span class="property-name">name</span> <span class="badge badge-warning required-property">Required</span></button>
    </h2>
    </div>
    <div aria-labelledby="headingReturn_value_items_name" class="collapse property-definition-div" data-parent="#accordionReturn_value_items_name" id="Return_value_items_name">
    <div class="card-body pl-5">
    <h4>Name</h4><span class="badge badge-dark value-type">Type: string</span><br/>
    <span class="description"><p>The dataset name.</p>
    </span>
    </div>
    </div>
    </div>
    </div>
    <div class="accordion" id="accordionReturn_value_items_key_format">
    <div class="card">
    <div class="card-header" id="headingReturn_value_items_key_format">
    <h2 class="mb-0">
    <button aria-controls="Return_value_items_key_format" aria-expanded="" class="btn btn-link property-name-button" data-target="#Return_value_items_key_format" data-toggle="collapse" onclick="setAnchor('#Return_value_items_key_format')" type="button"><span class="property-name">key_format</span> <span class="badge badge-warning required-property">Required</span></button>
    </h2>
    </div>
    <div aria-labelledby="headingReturn_value_items_key_format" class="collapse property-definition-div" data-parent="#accordionReturn_value_items_key_format" id="Return_value_items_key_format">
    <div class="card-body pl-5">
    <h4>Key Format</h4><span class="badge badge-dark value-type">Type: string</span><br/>
    <span class="description"><p>The format of the encryption key (hex, raw, or passphrase).</p>
    </span>
    </div>
    </div>
    </div>
    </div>
    <div class="accordion" id="accordionReturn_value_items_key_present_in_database">
    <div class="card">
    <div class="card-header" id="headingReturn_value_items_key_present_in_database">
    <h2 class="mb-0">
    <button aria-controls="Return_value_items_key_present_in_database" aria-expanded="" class="btn btn-link property-name-button" data-target="#Return_value_items_key_present_in_database" data-toggle="collapse" onclick="setAnchor('#Return_value_items_key_present_in_database')" type="button"><span class="property-name">key_present_in_database</span> <span class="badge badge-warning required-property">Required</span></button>
    </h2>
    </div>
    <div aria-labelledby="headingReturn_value_items_key_present_in_database" class="collapse property-definition-div" data-parent="#accordionReturn_value_items_key_present_in_database" id="Return_value_items_key_present_in_database">
    <div class="card-body pl-5">
    <h4>Key Present In Database</h4><span class="badge badge-dark value-type">Type: boolean</span><br/>
    <span class="description"><p>Whether an encryption key for this dataset exists in the system database.</p>
    </span>
    </div>
    </div>
    </div>
    </div>
    <div class="accordion" id="accordionReturn_value_items_valid_key">
    <div class="card">
    <div class="card-header" id="headingReturn_value_items_valid_key">
    <h2 class="mb-0">
    <button aria-controls="Return_value_items_valid_key" aria-expanded="" class="btn btn-link property-name-button" data-target="#Return_value_items_valid_key" data-toggle="collapse" onclick="setAnchor('#Return_value_items_valid_key')" type="button"><span class="property-name">valid_key</span> <span class="badge badge-warning required-property">Required</span></button>
    </h2>
    </div>
    <div aria-labelledby="headingReturn_value_items_valid_key" class="collapse property-definition-div" data-parent="#accordionReturn_value_items_valid_key" id="Return_value_items_valid_key">
    <div class="card-body pl-5">
    <h4>Valid Key</h4><span class="badge badge-dark value-type">Type: boolean</span><br/>
    <span class="description"><p>Whether the provided key is valid for this dataset.</p>
    </span>
    </div>
    </div>
    </div>
    </div>
    <div class="accordion" id="accordionReturn_value_items_locked">
    <div class="card">
    <div class="card-header" id="headingReturn_value_items_locked">
    <h2 class="mb-0">
    <button aria-controls="Return_value_items_locked" aria-expanded="" class="btn btn-link property-name-button" data-target="#Return_value_items_locked" data-toggle="collapse" onclick="setAnchor('#Return_value_items_locked')" type="button"><span class="property-name">locked</span> <span class="badge badge-warning required-property">Required</span></button>
    </h2>
    </div>
    <div aria-labelledby="headingReturn_value_items_locked" class="collapse property-definition-div" data-parent="#accordionReturn_value_items_locked" id="Return_value_items_locked">
    <div class="card-body pl-5">
    <h4>Locked</h4><span class="badge badge-dark value-type">Type: boolean</span><br/>
    <span class="description"><p>Whether the dataset is currently locked.</p>
    </span>
    </div>
    </div>
    </div>
    </div>
    <div class="accordion" id="accordionReturn_value_items_unlock_error">
    <div class="card">
    <div class="card-header" id="headingReturn_value_items_unlock_error">
    <h2 class="mb-0">
    <button aria-controls="Return_value_items_unlock_error" aria-expanded="" class="btn btn-link property-name-button" data-target="#Return_value_items_unlock_error" data-toggle="collapse" onclick="setAnchor('#Return_value_items_unlock_error')" type="button"><span class="property-name">unlock_error</span> <span class="badge badge-warning required-property">Required</span></button>
    </h2>
    </div>
    <div aria-labelledby="headingReturn_value_items_unlock_error" class="collapse property-definition-div" data-parent="#accordionReturn_value_items_unlock_error" id="Return_value_items_unlock_error">
    <div class="card-body pl-5">
    <h4>Unlock Error</h4><br/>
    <span class="description"><p>Error message if unlock would fail, or <code>null</code> if unlock would succeed.</p>
    </span><div class="any-of-value" id="Return_value_items_unlock_error_anyOf"><h2 class="handle">
    <label>Any of</label>
    </h2><ul class="nav nav-tabs" id="tabsReturn_value_items_unlock_error_anyOf_anyOf" role="tablist"><li class="nav-item">
    <a class="nav-link active anyOf-option" data-toggle="tab" href="#tab-pane_Return_value_items_unlock_error_anyOf_i0" id="Return_value_items_unlock_error_anyOf_i0" onclick="setAnchor('#Return_value_items_unlock_error_anyOf_i0')" role="tab">Option 1</a>
    </li><li class="nav-item">
    <a class="nav-link anyOf-option" data-toggle="tab" href="#tab-pane_Return_value_items_unlock_error_anyOf_i1" id="Return_value_items_unlock_error_anyOf_i1" onclick="setAnchor('#Return_value_items_unlock_error_anyOf_i1')" role="tab">Option 2</a>
    </li></ul>
    <div class="tab-content card"><div class="tab-pane fade card-body active show" id="tab-pane_Return_value_items_unlock_error_anyOf_i0" role="tabpanel">
    <span class="badge badge-dark value-type">Type: string</span><br/>
    </div><div class="tab-pane fade card-body" id="tab-pane_Return_value_items_unlock_error_anyOf_i1" role="tabpanel">
    <span class="badge badge-dark value-type">Type: null</span><br/>
    </div></div></div>
    </div>
    </div>
    </div>
    </div>
    <div class="accordion" id="accordionReturn_value_items_unlock_successful">
    <div class="card">
    <div class="card-header" id="headingReturn_value_items_unlock_successful">
    <h2 class="mb-0">
    <button aria-controls="Return_value_items_unlock_successful" aria-expanded="" class="btn btn-link property-name-button" data-target="#Return_value_items_unlock_successful" data-toggle="collapse" onclick="setAnchor('#Return_value_items_unlock_successful')" type="button"><span class="property-name">unlock_successful</span> <span class="badge badge-warning required-property">Required</span></button>
    </h2>
    </div>
    <div aria-labelledby="headingReturn_value_items_unlock_successful" class="collapse property-definition-div" data-parent="#accordionReturn_value_items_unlock_successful" id="Return_value_items_unlock_successful">
    <div class="card-body pl-5">
    <h4>Unlock Successful</h4><span class="badge badge-dark value-type">Type: boolean</span><br/>
    <span class="description"><p>Whether an unlock operation would be successful.</p>
    </span>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div><br><br>

*Required roles:* DATASET_READ

