# replication.update

Update a Replication Task with specific id.

Type: object

##

Type: array
No Additional Items

#### Tuple Validation

##### Parameter 1: id

#### id

Type: integer

ID of the replication task to update.

##### Parameter 2: replication_update

#### replication_update

Type: object

Updated configuration for the replication task.

No Additional Properties

##

#### Name

Type: string

Name for replication task.

Must be at least `1` characters long

##

#### Direction

Type: enum (of string)

Whether task will `PUSH` or `PULL` snapshots.

##### Must be one of:

- "PUSH"
- "PULL"

##

#### Transport

Type: enum (of string)

Method of snapshots transfer.

- `SSH` transfers snapshots via SSH connection. This method is supported everywhere but does not achieve great performance.
- `SSH+NETCAT` uses unencrypted connection for data transfer. This can only be used in trusted networks and requires a port (specified by range from `netcat_active_side_port_min` to `netcat_active_side_port_max`) to be open on `netcat_active_side`.
- `LOCAL` replicates to or from localhost.

##### Must be one of:

- "SSH"
- "SSH+NETCAT"
- "LOCAL"

##

#### Ssh Credentials

Keychain Credential ID of type `SSH_CREDENTIALS`.

## Any of

Type: integer
Type: null

##

#### Netcat Active Side

Which side actively establishes the netcat connection for `SSH+NETCAT` transport.

- `LOCAL`: Local system initiates the connection
- `REMOTE`: Remote system initiates the connection
- `null`: Not applicable for other transport types

## Any of

Type: enum (of string)

##### Must be one of:

- "LOCAL"
- "REMOTE"

Type: null

##

#### Netcat Active Side Listen Address

IP address for the active side to listen on for `SSH+NETCAT` transport. `null` if not applicable.

## Any of

Type: string
Type: null

##

#### Netcat Active Side Port Min

Minimum port number in the range for netcat connections. `null` if not applicable.

## Any of

Type: integer

Value must be greater or equal to `1` and lesser or equal to `65535`

Type: null

##

#### Netcat Active Side Port Max

Maximum port number in the range for netcat connections. `null` if not applicable.

## Any of

Type: integer

Value must be greater or equal to `1` and lesser or equal to `65535`

Type: null

##

#### Netcat Passive Side Connect Address

IP address for the passive side to connect to for `SSH+NETCAT` transport. `null` if not applicable.

## Any of

Type: string
Type: null

##

#### Sudo

Type: boolean

`SSH` and `SSH+NETCAT` transports should use sudo (which is expected to be passwordless) to run `zfs` command on the remote machine.

##

#### Source Datasets

Type: array of string

List of datasets to replicate snapshots from.

Must contain a minimum of `1` items

No Additional Items

##### Each item of this array must be:

Type: string

##

#### Target Dataset

Type: string

Dataset to put snapshots into.

##

#### Recursive

Type: boolean

Whether to recursively replicate child datasets.

##

#### Exclude

Type: array of string

Array of dataset patterns to exclude from replication.

No Additional Items

##### Each item of this array must be:

Type: string

##

#### Properties

Type: boolean

Send dataset properties along with snapshots.

##

#### Properties Exclude

Type: array of string

Array of dataset property names to exclude from replication.

No Additional Items

##### Each item of this array must be:

Type: string

Must be at least `1` characters long

##

#### Properties Override

Type: object

Object mapping dataset property names to override values during replication.

##

Each additional property must conform to the following schema

Type: string

##

#### Replicate

Type: boolean

Whether to use full ZFS replication.

##

#### Encryption

Type: boolean

Whether to enable encryption for the replicated datasets.

##

#### Encryption Inherit

Whether replicated datasets should inherit encryption from parent. `null` if encryption is disabled.

## Any of

Type: boolean
Type: null

##

#### Encryption Key

Encryption key for replicated datasets. `null` if not specified.

## Any of

Type: string
Type: null

##

#### Encryption Key Format

Format of the encryption key.

- `HEX`: Hexadecimal-encoded key
- `PASSPHRASE`: Text passphrase
- `null`: Not applicable when encryption is disabled

## Any of

Type: enum (of string)

##### Must be one of:

- "HEX"
- "PASSPHRASE"

Type: null

##

#### Encryption Key Location

Filesystem path where encryption key is stored. `null` if not using key file.

## Any of

Type: string
Type: null

##

#### Periodic Snapshot Tasks

Type: array of integer

List of periodic snapshot task IDs that are sources of snapshots for this replication task. Only push replication tasks can be bound to periodic snapshot tasks.

All items must be unique

No Additional Items

##### Each item of this array must be:

Type: integer

##

#### Naming Schema

Type: array of string

List of naming schemas for pull replication.

No Additional Items

##### Each item of this array must be:

Type: string

##

#### Also Include Naming Schema

Type: array of string

List of naming schemas for push replication.

No Additional Items

##### Each item of this array must be:

Type: string

##

#### Name Regex

Replicate all snapshots which names match specified regular expression.

## Any of

Type: string

Must be at least `1` characters long

Type: null

##

#### Auto

Type: boolean

Allow replication to run automatically on schedule or after bound periodic snapshot task.

##

Schedule to run replication task. Only `auto` replication tasks without bound periodic snapshot tasks can have a schedule.

## Any of

#### ReplicationTimeCronModel

Type: object
No Additional Properties

##

#### Minute

Type: string Default: "00"

"00" - "59"

##

#### Hour

Type: string Default: "*"

"00" - "23"

##

#### Dom

Type: string Default: "*"

"1" - "31"

##

#### Month

Type: string Default: "*"

"1" (January) - "12" (December)

##

#### Dow

Type: string Default: "*"

"1" (Monday) - "7" (Sunday)

##

#### Begin

Type: string Default: "00:00"

Start time for the time window in HH:MM format.

Examples:

    "00:00"

    "06:30"

    "18:00"

    "23:00"

##

#### End

Type: string Default: "23:59"

End time for the time window in HH:MM format.

Examples:

    "00:00"

    "06:30"

    "18:00"

    "23:00"

Type: null

##

Restricts when replication task with bound periodic snapshot tasks runs. For example, you can have periodic snapshot tasks that run every 15 minutes, but only run replication task every hour.

## Any of

#### ReplicationTimeCronModel

Type: object
No Additional Properties

##

#### Minute

Type: string Default: "00"

"00" - "59"

##

#### Hour

Type: string Default: "*"

"00" - "23"

##

#### Dom

Type: string Default: "*"

"1" - "31"

##

#### Month

Type: string Default: "*"

"1" (January) - "12" (December)

##

#### Dow

Type: string Default: "*"

"1" (Monday) - "7" (Sunday)

##

#### Begin

Type: string Default: "00:00"

Start time for the time window in HH:MM format.

Examples:

    "00:00"

    "06:30"

    "18:00"

    "23:00"

##

#### End

Type: string Default: "23:59"

End time for the time window in HH:MM format.

Examples:

    "00:00"

    "06:30"

    "18:00"

    "23:00"

Type: null

##

#### Only Matching Schedule

Type: boolean

Will only replicate snapshots that match `schedule` or `restrict_schedule`.

##

#### Allow From Scratch

Type: boolean

Will destroy all snapshots on target side and replicate everything from scratch if none of the snapshots on target side matches source snapshots.

##

#### Readonly

Type: enum (of string)

Controls destination datasets readonly property.

- `SET`: Set all destination datasets to readonly=on after finishing the replication.
- `REQUIRE`: Require all existing destination datasets to have readonly=on property.
- `IGNORE`: Avoid this kind of behavior.

##### Must be one of:

- "SET"
- "REQUIRE"
- "IGNORE"

##

#### Hold Pending Snapshots

Type: boolean

Prevent source snapshots from being deleted by retention of replication fails for some reason.

##

#### Retention Policy

Type: enum (of string)

How to delete old snapshots on target side:

- `SOURCE`: Delete snapshots that are absent on source side.
- `CUSTOM`: Delete snapshots that are older than `lifetime_value` and `lifetime_unit`.
- `NONE`: Do not delete any snapshots.

##### Must be one of:

- "SOURCE"
- "CUSTOM"
- "NONE"

##

#### Lifetime Value

Number of time units to retain snapshots for custom retention policy. Only applies when `retention_policy` is CUSTOM.

## Any of

Type: integer

Value must be greater or equal to `1`

Type: null

##

#### Lifetime Unit

Time unit for snapshot retention for custom retention policy. Only applies when `retention_policy` is CUSTOM.

## Any of

Type: enum (of string)

##### Must be one of:

- "HOUR"
- "DAY"
- "WEEK"
- "MONTH"
- "YEAR"

Type: null

##

#### Lifetimes

Type: array of object

Array of different retention schedules with their own cron schedules and lifetime settings.

No Additional Items

##### Each item of this array must be:

#### ReplicationLifetimeModel

Type: object
No Additional Properties

##

#### CronModel

Type: object

Cron schedule for when snapshot retention policies are applied.

No Additional Properties

##

#### Minute

Type: string Default: "*"

"00" - "59"

##

#### Hour

Type: string Default: "*"

"00" - "23"

##

#### Dom

Type: string Default: "*"

"1" - "31"

##

#### Month

Type: string Default: "*"

"1" (January) - "12" (December)

##

#### Dow

Type: string Default: "*"

"1" (Monday) - "7" (Sunday)

##

#### Lifetime Value

Type: integer

Number of time units to retain snapshots.

Value must be greater or equal to `1`

##

#### Lifetime Unit

Type: enum (of string)

Time unit for snapshot retention.

##### Must be one of:

- "HOUR"
- "DAY"
- "WEEK"
- "MONTH"
- "YEAR"

##

#### Compression

Compresses SSH stream. Available only for SSH transport.

## Any of

Type: enum (of string)

##### Must be one of:

- "LZ4"
- "PIGZ"
- "PLZIP"

Type: null

##

#### Speed Limit

Limits speed of SSH stream. Available only for SSH transport.

## Any of

Type: integer

Value must be greater or equal to `1`

Type: null

##

#### Large Block

Type: boolean

Enable large block support for ZFS send streams.

##

#### Embed

Type: boolean

Enable embedded block support for ZFS send streams.

##

#### Compressed

Type: boolean

Enable compressed ZFS send streams.

##

#### Retries

Type: integer

Number of retries before considering replication failed.

Value must be greater or equal to `1`

##

#### Logging Level

Log level for replication task execution. Controls verbosity of replication logs.

## Any of

Type: enum (of string)

##### Must be one of:

- "DEBUG"
- "INFO"
- "WARNING"
- "ERROR"

Type: null

##

#### Enabled

Type: boolean

Whether this replication task is enabled.

##

#### ReplicationEntry

Type: object

The updated replication task configuration.

No Additional Properties

##

#### Id

Type: integer

Unique identifier for this replication task.

##

#### Name

Type: string

Name for replication task.

Must be at least `1` characters long

##

#### Direction

Type: enum (of string)

Whether task will `PUSH` or `PULL` snapshots.

##### Must be one of:

- "PUSH"
- "PULL"

##

#### Transport

Type: enum (of string)

Method of snapshots transfer.

- `SSH` transfers snapshots via SSH connection. This method is supported everywhere but does not achieve great performance.
- `SSH+NETCAT` uses unencrypted connection for data transfer. This can only be used in trusted networks and requires a port (specified by range from `netcat_active_side_port_min` to `netcat_active_side_port_max`) to be open on `netcat_active_side`.
- `LOCAL` replicates to or from localhost.

##### Must be one of:

- "SSH"
- "SSH+NETCAT"
- "LOCAL"

##

Default: null

Keychain Credential of type `SSH_CREDENTIALS`.

## Any of

#### KeychainCredentialEntry

Type: object
No Additional Properties

##

#### Id

Type: integer

Unique identifier for this keychain credential.

##

#### Name

Type: string

Distinguishes this Keychain Credential from others.

Must be at least `1` characters long

##

#### Type

Type: enum (of string)

Type of credential stored in the keychain.

- `SSH_KEY_PAIR`: SSH public/private key pair
- `SSH_CREDENTIALS`: SSH connection credentials including host and authentication

##### Must be one of:

- "SSH_KEY_PAIR"
- "SSH_CREDENTIALS"

##

#### Attributes

Credential-specific configuration and authentication data.

## Any of

#### SSHKeyPair

Type: object

At least one of the two keys must be provided on creation.

No Additional Properties

##

#### Private Key

Default: null

SSH private key in OpenSSH format. `null` if only public key is provided.

## Any of

Type: string
Type: null

##

#### Public Key

Default: null

Can be omitted and automatically derived from the private key.

## Any of

Type: string
Type: null

#### SSHCredentials

Type: object
No Additional Properties

##

#### Host

Type: string

SSH server hostname or IP address.

##

#### Port

Type: integer Default: 22

SSH server port number.

##

#### Username

Type: string Default: "root"

SSH username for authentication.

##

#### Private Key

Type: integer

Keychain Credential ID.

##

#### Remote Host Key

Type: string

Can be discovered with keychaincredential.remotesshhostkeyscan.

##

#### Connect Timeout

Type: integer Default: 10

Connection timeout in seconds for SSH connections.

Type: null

##

#### Netcat Active Side

Default: null

Which side actively establishes the netcat connection for `SSH+NETCAT` transport.

- `LOCAL`: Local system initiates the connection
- `REMOTE`: Remote system initiates the connection
- `null`: Not applicable for other transport types

## Any of

Type: enum (of string)

##### Must be one of:

- "LOCAL"
- "REMOTE"

Type: null

##

#### Netcat Active Side Listen Address

Default: null

IP address for the active side to listen on for `SSH+NETCAT` transport. `null` if not applicable.

## Any of

Type: string
Type: null

##

#### Netcat Active Side Port Min

Default: null

Minimum port number in the range for netcat connections. `null` if not applicable.

## Any of

Type: integer

Value must be greater or equal to `1` and lesser or equal to `65535`

Type: null

##

#### Netcat Active Side Port Max

Default: null

Maximum port number in the range for netcat connections. `null` if not applicable.

## Any of

Type: integer

Value must be greater or equal to `1` and lesser or equal to `65535`

Type: null

##

#### Netcat Passive Side Connect Address

Default: null

IP address for the passive side to connect to for `SSH+NETCAT` transport. `null` if not applicable.

## Any of

Type: string
Type: null

##

#### Sudo

Type: boolean Default: false

`SSH` and `SSH+NETCAT` transports should use sudo (which is expected to be passwordless) to run `zfs` command on the remote machine.

##

#### Source Datasets

Type: array of string

List of datasets to replicate snapshots from.

Must contain a minimum of `1` items

No Additional Items

##### Each item of this array must be:

Type: string

##

#### Target Dataset

Type: string

Dataset to put snapshots into.

##

#### Recursive

Type: boolean

Whether to recursively replicate child datasets.

##

#### Exclude

Type: array of string Default: []

Array of dataset patterns to exclude from replication.

No Additional Items

##### Each item of this array must be:

Type: string

##

#### Properties

Type: boolean Default: true

Send dataset properties along with snapshots.

##

#### Properties Exclude

Type: array of string Default: []

Array of dataset property names to exclude from replication.

No Additional Items

##### Each item of this array must be:

Type: string

Must be at least `1` characters long

##

#### Properties Override

Type: object Default: {}

Object mapping dataset property names to override values during replication.

##

Each additional property must conform to the following schema

Type: string

##

#### Replicate

Type: boolean Default: false

Whether to use full ZFS replication.

##

#### Encryption

Type: boolean Default: false

Whether to enable encryption for the replicated datasets.

##

#### Encryption Inherit

Default: null

Whether replicated datasets should inherit encryption from parent. `null` if encryption is disabled.

## Any of

Type: boolean
Type: null

##

#### Encryption Key

Default: null

Encryption key for replicated datasets. `null` if not specified.

## Any of

Type: string
Type: null

##

#### Encryption Key Format

Default: null

Format of the encryption key.

- `HEX`: Hexadecimal-encoded key
- `PASSPHRASE`: Text passphrase
- `null`: Not applicable when encryption is disabled

## Any of

Type: enum (of string)

##### Must be one of:

- "HEX"
- "PASSPHRASE"

Type: null

##

#### Encryption Key Location

Default: null

Filesystem path where encryption key is stored. `null` if not using key file.

## Any of

Type: string
Type: null

##

#### Periodic Snapshot Tasks

Type: array of object

List of periodic snapshot tasks that are sources of snapshots for this replication task. Only push replication tasks can be bound to periodic snapshot tasks.

No Additional Items

##### Each item of this array must be:

#### PoolSnapshotTaskDBEntry

Type: object
No Additional Properties

##

#### Dataset

Type: string

The dataset to take snapshots of.

##

#### Recursive

Type: boolean Default: false

Whether to recursively snapshot child datasets.

##

#### Lifetime Value

Type: integer Default: 2

Number of time units to retain snapshots. `lifetime_unit` gives the time unit.

##

#### Lifetime Unit

Type: enum (of string) Default: "WEEK"

Unit of time for snapshot retention.

##### Must be one of:

- "HOUR"
- "DAY"
- "WEEK"
- "MONTH"
- "YEAR"

##

#### Enabled

Type: boolean Default: true

Whether this periodic snapshot task is enabled.

##

#### Exclude

Type: array of string Default: []

Array of dataset patterns to exclude from recursive snapshots.

No Additional Items

##### Each item of this array must be:

Type: string

##

#### Naming Schema

Type: string Default: "auto-%Y-%m-%d_%H-%M"

Naming pattern for generated snapshots using strftime format.

##

#### Allow Empty

Type: boolean Default: true

Whether to take snapshots even if no data has changed.

##

#### PoolSnapshotTaskCron

Type: object

Cron schedule for when snapshots should be taken.

No Additional Properties

##

#### Minute

Type: string Default: "00"

Minute when snapshots should be taken (cron format).

##

#### Hour

Type: string Default: "*"

"00" - "23"

##

#### Dom

Type: string Default: "*"

"1" - "31"

##

#### Month

Type: string Default: "*"

"1" (January) - "12" (December)

##

#### Dow

Type: string Default: "*"

"1" (Monday) - "7" (Sunday)

##

#### Begin

Type: string Default: "00:00"

Start time of the window when snapshots can be taken.

Examples:

    "00:00"

    "06:30"

    "18:00"

    "23:00"

##

#### End

Type: string Default: "23:59"

End time of the window when snapshots can be taken.

Examples:

    "00:00"

    "06:30"

    "18:00"

    "23:00"

##

#### Id

Type: integer

Unique identifier for the periodic snapshot task.

##

#### State

Type: string

Current state of the task.

##

#### Naming Schema

Type: array of string Default: []

List of naming schemas for pull replication.

No Additional Items

##### Each item of this array must be:

Type: string

##

#### Also Include Naming Schema

Type: array of string Default: []

List of naming schemas for push replication.

No Additional Items

##### Each item of this array must be:

Type: string

##

#### Name Regex

Default: null

Replicate all snapshots which names match specified regular expression.

## Any of

Type: string

Must be at least `1` characters long

Type: null

##

#### Auto

Type: boolean

Allow replication to run automatically on schedule or after bound periodic snapshot task.

##

Default: null

Schedule to run replication task. Only `auto` replication tasks without bound periodic snapshot tasks can have a schedule.

## Any of

#### ReplicationTimeCronModel

Type: object
No Additional Properties

##

#### Minute

Type: string Default: "00"

"00" - "59"

##

#### Hour

Type: string Default: "*"

"00" - "23"

##

#### Dom

Type: string Default: "*"

"1" - "31"

##

#### Month

Type: string Default: "*"

"1" (January) - "12" (December)

##

#### Dow

Type: string Default: "*"

"1" (Monday) - "7" (Sunday)

##

#### Begin

Type: string Default: "00:00"

Start time for the time window in HH:MM format.

Examples:

    "00:00"

    "06:30"

    "18:00"

    "23:00"

##

#### End

Type: string Default: "23:59"

End time for the time window in HH:MM format.

Examples:

    "00:00"

    "06:30"

    "18:00"

    "23:00"

Type: null

##

Default: null

Restricts when replication task with bound periodic snapshot tasks runs. For example, you can have periodic snapshot tasks that run every 15 minutes, but only run replication task every hour.

## Any of

#### ReplicationTimeCronModel

Type: object
No Additional Properties

##

#### Minute

Type: string Default: "00"

"00" - "59"

##

#### Hour

Type: string Default: "*"

"00" - "23"

##

#### Dom

Type: string Default: "*"

"1" - "31"

##

#### Month

Type: string Default: "*"

"1" (January) - "12" (December)

##

#### Dow

Type: string Default: "*"

"1" (Monday) - "7" (Sunday)

##

#### Begin

Type: string Default: "00:00"

Start time for the time window in HH:MM format.

Examples:

    "00:00"

    "06:30"

    "18:00"

    "23:00"

##

#### End

Type: string Default: "23:59"

End time for the time window in HH:MM format.

Examples:

    "00:00"

    "06:30"

    "18:00"

    "23:00"

Type: null

##

#### Only Matching Schedule

Type: boolean Default: false

Will only replicate snapshots that match `schedule` or `restrict_schedule`.

##

#### Allow From Scratch

Type: boolean Default: false

Will destroy all snapshots on target side and replicate everything from scratch if none of the snapshots on target side matches source snapshots.

##

#### Readonly

Type: enum (of string) Default: "SET"

Controls destination datasets readonly property.

- `SET`: Set all destination datasets to readonly=on after finishing the replication.
- `REQUIRE`: Require all existing destination datasets to have readonly=on property.
- `IGNORE`: Avoid this kind of behavior.

##### Must be one of:

- "SET"
- "REQUIRE"
- "IGNORE"

##

#### Hold Pending Snapshots

Type: boolean Default: false

Prevent source snapshots from being deleted by retention of replication fails for some reason.

##

#### Retention Policy

Type: enum (of string)

How to delete old snapshots on target side:

- `SOURCE`: Delete snapshots that are absent on source side.
- `CUSTOM`: Delete snapshots that are older than `lifetime_value` and `lifetime_unit`.
- `NONE`: Do not delete any snapshots.

##### Must be one of:

- "SOURCE"
- "CUSTOM"
- "NONE"

##

#### Lifetime Value

Default: null

Number of time units to retain snapshots for custom retention policy. Only applies when `retention_policy` is CUSTOM.

## Any of

Type: integer

Value must be greater or equal to `1`

Type: null

##

#### Lifetime Unit

Default: null

Time unit for snapshot retention for custom retention policy. Only applies when `retention_policy` is CUSTOM.

## Any of

Type: enum (of string)

##### Must be one of:

- "HOUR"
- "DAY"
- "WEEK"
- "MONTH"
- "YEAR"

Type: null

##

#### Lifetimes

Type: array of object Default: []

Array of different retention schedules with their own cron schedules and lifetime settings.

No Additional Items

##### Each item of this array must be:

#### ReplicationLifetimeModel

Type: object
No Additional Properties

##

#### CronModel

Type: object

Cron schedule for when snapshot retention policies are applied.

No Additional Properties

##

#### Minute

Type: string Default: "*"

"00" - "59"

##

#### Hour

Type: string Default: "*"

"00" - "23"

##

#### Dom

Type: string Default: "*"

"1" - "31"

##

#### Month

Type: string Default: "*"

"1" (January) - "12" (December)

##

#### Dow

Type: string Default: "*"

"1" (Monday) - "7" (Sunday)

##

#### Lifetime Value

Type: integer

Number of time units to retain snapshots.

Value must be greater or equal to `1`

##

#### Lifetime Unit

Type: enum (of string)

Time unit for snapshot retention.

##### Must be one of:

- "HOUR"
- "DAY"
- "WEEK"
- "MONTH"
- "YEAR"

##

#### Compression

Default: null

Compresses SSH stream. Available only for SSH transport.

## Any of

Type: enum (of string)

##### Must be one of:

- "LZ4"
- "PIGZ"
- "PLZIP"

Type: null

##

#### Speed Limit

Default: null

Limits speed of SSH stream. Available only for SSH transport.

## Any of

Type: integer

Value must be greater or equal to `1`

Type: null

##

#### Large Block

Type: boolean Default: true

Enable large block support for ZFS send streams.

##

#### Embed

Type: boolean Default: false

Enable embedded block support for ZFS send streams.

##

#### Compressed

Type: boolean Default: true

Enable compressed ZFS send streams.

##

#### Retries

Type: integer Default: 5

Number of retries before considering replication failed.

Value must be greater or equal to `1`

##

#### Logging Level

Default: null

Log level for replication task execution. Controls verbosity of replication logs.

## Any of

Type: enum (of string)

##### Must be one of:

- "DEBUG"
- "INFO"
- "WARNING"
- "ERROR"

Type: null

##

#### Enabled

Type: boolean Default: true

Whether this replication task is enabled.

##

#### State

Type: object

Current state information for the replication task.

##

#### Job

Information about the currently running job. `null` if no job is running.

## Any of

Type: object
Type: null

##

#### Has Encrypted Dataset Keys

Type: boolean

Whether this replication task has encrypted dataset keys available.

Required roles: REPLICATION_TASK_WRITE