/v2/replication/source-relationships/{id}/status
id
{ "description": "api_source_relationship_status", "type": "object", "properties": { "id": { "description": "Unique identifier of the replication relationship", "type": "string" }, "target_address": { "description": "The target IP address", "type": "string" }, "target_port": { "description": "Network port to replicate to on the target", "type": "number" }, "source_root_read_only": { "description": "Whether the source directory is read-only", "type": "boolean" }, "map_local_ids_to_nfs_ids": { "description": "Whether to map local user/group identities to their associated NFS UID/GID when replicating them to the target cluster. Replication of local identities fails if this option is False.", "type": "boolean" }, "replication_enabled": { "description": "Whether automatic replication is enabled", "type": "boolean" }, "replication_mode": { "type": "string", "enum": [ "REPLICATION_CONTINUOUS", "REPLICATION_SNAPSHOT_POLICY", "REPLICATION_SNAPSHOT_POLICY_WITH_CONTINUOUS" ], "description": "Whether to replicate continuously, replicate snapshots from linked snapshot policies, or both:\n * `REPLICATION_CONTINUOUS` - REPLICATION_CONTINUOUS,\n * `REPLICATION_SNAPSHOT_POLICY` - REPLICATION_SNAPSHOT_POLICY,\n * `REPLICATION_SNAPSHOT_POLICY_WITH_CONTINUOUS` - REPLICATION_SNAPSHOT_POLICY_WITH_CONTINUOUS" }, "blackout_window_timezone": { "description": "The timezone in which the blackout windows should be interpreted (e.g, America/Los_Angeles or UTC)", "type": "string" }, "blackout_windows": { "type": "array", "items": { "description": "List of blackout windows for the relationship", "type": "object", "properties": { "start_hour": { "description": "Hour of day [0, 23] at which the blackout window begins", "type": "number" }, "start_minute": { "description": "Minute of hour [0, 59] at which the blackout window begins", "type": "number" }, "end_hour": { "description": "Hour of day [0, 23] at which the blackout window ends", "type": "number" }, "end_minute": { "description": "Minute of hour [0, 59] at which the blackout window ends", "type": "number" }, "on_days": { "description": "List of days of the week on which the replication schedule applies. Choose from SUN, MON, TUE, WED, THU, FRI, and/or SAT. EVERY_DAY can be used to specify all days.", "type": "array", "items": { "type": "string", "enum": [ "SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT", "EVERY_DAY" ], "description": "List of days of the week on which the replication schedule applies. Choose from SUN, MON, TUE, WED, THU, FRI, and/or SAT. EVERY_DAY can be used to specify all days.:\n * `EVERY_DAY` - EVERY_DAY,\n * `FRI` - FRI,\n * `MON` - MON,\n * `SAT` - SAT,\n * `SUN` - SUN,\n * `THU` - THU,\n * `TUE` - TUE,\n * `WED` - WED" } } } } }, "snapshot_policies": { "type": "array", "items": { "description": "List of snapshot policies linked with the relationship along with the corresponding expiration time of the replicated snapshots on the target for each linked policy", "type": "object", "properties": { "id": { "description": "Unique identifier for the snapshot policy linked with the relationship", "type": "number" }, "target_expiration": { "description": "Duration after which to expire snapshots on the target cluster that were replicated from this snapshot policy, in format <quantity><units>, where <quantity> is a positive integer less than 100 and <units> is one of [months, weeks, days, hours, minutes], e.g. 5days or 1hours. 'never' indicates snapshots should never expire and 'same_as_policy' indicates snapshots should expire at the same time as the snapshot policy specifies.", "type": "string" } } } }, "state": { "type": "string", "enum": [ "AWAITING_AUTHORIZATION", "DISCONNECTED", "DISCONNECTING", "ENDED", "ESTABLISHED", "RECONNECTING", "REESTABLISHING" ], "description": "Current state of replication relationship:\n * `AWAITING_AUTHORIZATION` - AWAITING_AUTHORIZATION,\n * `DISCONNECTED` - DISCONNECTED,\n * `DISCONNECTING` - DISCONNECTING,\n * `ENDED` - ENDED,\n * `ESTABLISHED` - ESTABLISHED,\n * `RECONNECTING` - RECONNECTING,\n * `REESTABLISHING` - REESTABLISHING" }, "end_reason": { "description": "If the relationship has ENDED, this states the reason. Otherwise, this field is empty", "type": "string" }, "source_cluster_name": { "description": "Name of the source cluster", "type": "string" }, "source_cluster_uuid": { "description": "UUID of the source cluster", "type": "string" }, "source_root_path": { "description": "Path to the source directory", "type": "string" }, "target_cluster_name": { "description": "Name of the target cluster", "type": "string" }, "target_cluster_uuid": { "description": "UUID of the target cluster", "type": "string" }, "target_root_path": { "description": "Path to the target directory", "type": "string" }, "target_root_read_only": { "description": "Whether the target directory is read-only", "type": "boolean" }, "job_state": { "type": "string", "enum": [ "REPLICATION_NOT_RUNNING", "REPLICATION_RUNNING" ], "description": "Current state of the job:\n * `REPLICATION_NOT_RUNNING` - REPLICATION_NOT_RUNNING,\n * `REPLICATION_RUNNING` - REPLICATION_RUNNING" }, "job_start_time": { "description": "If the job state is REPLICATION_RUNNING, this is the time that the job started, encoded as RFC 3339", "type": "string" }, "recovery_point": { "description": "The time that the last successful job started, encoded as RFC 3339", "type": "string" }, "error_from_last_job": { "description": "The error message from the previous job. If the previous job succeeded or no job has ever run, this field will be empty", "type": "string" }, "duration_of_last_job": { "description": "The elapsed execution time of the previous job, in nanoseconds. If no job has ever run, this field will be null.", "type": "object", "properties": { "nanoseconds": { "description": "nanoseconds", "type": "string" } } }, "source_root_id": { "description": "File ID of the source directory", "type": "string" }, "next_active_time": { "description": "The time when the current blackout period ends (in UTC). If replication is currently enabled and not in a blackout period, this field will be empty", "type": "string" }, "replication_job_status": { "description": "Information about the progress of a job. This field is null if there is no job status available.", "type": "object", "properties": { "percent_complete": { "description": "Percent of way through the job, computed from a weighting of data and files processed", "type": "number" }, "estimated_seconds_remaining": { "description": "Estimated number of seconds remaining in the job, derived from percent_complete. This may be null if there is no estimate.", "type": "string" }, "bytes_transferred": { "description": "Number of bytes copied", "type": "string" }, "bytes_unchanged": { "description": "Number of bytes not copied because they didn't change", "type": "string" }, "bytes_remaining": { "description": "Number of bytes left to be processed in order to complete this job", "type": "string" }, "bytes_deleted": { "description": "Number of bytes deleted", "type": "string" }, "bytes_total": { "description": "Total number of bytes that will be processed during this job (this will be close but not exact)", "type": "string" }, "files_transferred": { "description": "Number of files copied", "type": "string" }, "files_unchanged": { "description": "Number of files not copied because they didn't change", "type": "string" }, "files_remaining": { "description": "Number of files left to be processed in order to complete this job", "type": "string" }, "files_deleted": { "description": "Number of files deleted", "type": "string" }, "files_total": { "description": "Total number of files that will be processed during this job (this will be close but not exact)", "type": "string" }, "throughput_overall": { "description": "Overall average throughput in bytes per second of data copied since the beginning of the job", "type": "string" }, "throughput_current": { "description": "Average throughput in bytes per second of data copied in the last one minute", "type": "string" } } }, "queued_snapshot_count": { "description": "The number of snapshots from linked snapshot policies awaiting replication by this relationship", "type": "number" }, "recovery_point_snapshot": { "description": "The snapshot replicated by the last successful job. This field is null if no job has ever run successfully.", "type": "object", "properties": { "id": { "description": "Unique identifier of the snapshot", "type": "number" }, "name": { "description": "Name of the snapshot", "type": "string" }, "timestamp": { "description": "Creation timestamp of the snapshot, encoded as RFC 3339, which is a normalized subset of ISO 8601. See http://tools.ietf.org/rfc/rfc3339.txt, section 5.6 for ABNF.", "type": "string" }, "directory_name": { "description": "Snapshot directory name, as would be seen in the .snapshot directory over SMB or NFS.", "type": "string" }, "source_file_id": { "description": "Source directory of the snapshot", "type": "string" }, "created_by_policy": { "description": "This snapshot was created by a policy. The name of that policy will be stored in the name field in place of a user-defined name.", "type": "boolean" }, "expiration": { "description": "Time at which snapshot will be expired. Empty string if no expiration time set. Encoded as RFC 3339, which is a normalized subset of ISO 8601. See http://tools.ietf.org/rfc/rfc3339.txt, section 5.6 for ABNF.", "type": "string" }, "in_delete": { "description": "Whether or not the snapshot is in the process of being deleted", "type": "boolean" } } }, "replicating_snapshot": { "description": "The snapshot that is being replicated by the current job. This field is null if no job is in progress.", "type": "object", "properties": { "id": { "description": "Unique identifier of the snapshot", "type": "number" }, "name": { "description": "Name of the snapshot", "type": "string" }, "timestamp": { "description": "Creation timestamp of the snapshot, encoded as RFC 3339, which is a normalized subset of ISO 8601. See http://tools.ietf.org/rfc/rfc3339.txt, section 5.6 for ABNF.", "type": "string" }, "directory_name": { "description": "Snapshot directory name, as would be seen in the .snapshot directory over SMB or NFS.", "type": "string" }, "source_file_id": { "description": "Source directory of the snapshot", "type": "string" }, "created_by_policy": { "description": "This snapshot was created by a policy. The name of that policy will be stored in the name field in place of a user-defined name.", "type": "boolean" }, "expiration": { "description": "Time at which snapshot will be expired. Empty string if no expiration time set. Encoded as RFC 3339, which is a normalized subset of ISO 8601. See http://tools.ietf.org/rfc/rfc3339.txt, section 5.6 for ABNF.", "type": "string" }, "in_delete": { "description": "Whether or not the snapshot is in the process of being deleted", "type": "boolean" } } } } }