synology_apm.sdk.collections.activities module

ActivityCollection — interface for querying backup/restore activity records.

class synology_apm.sdk.collections.activities.BackupActivityCollection(session)

Bases: _BaseActivityCollection[BackupActivity]

Interface for querying backup activity records.

Accessed via ActivityCollection.backup.

async list(status=None, machine_types=None, m365_types=None, namespace=None, workload=None, since=None, until=None, keyword=None, history=False, limit=100, offset=0)

List backup activity records.

Parameters:
  • status (list[BackupActivityStatus] | None) – Backup activity status filter (OR logic).

  • machine_types (list[MachineWorkloadType] | None) – Machine workload sub-type filter (OR logic).

  • m365_types (list[M365WorkloadType] | None) – M365 service type filter (OR logic).

  • namespace (list[str] | None) – Backup server namespace filter (OR logic). Restricts results to activities on the given backup server(s). Namespace values can be obtained from apm.backup_servers.list().

  • workload (Workload | None) – Restrict results to a single workload’s activities, matched by (workload.workload_id, workload.namespace). Composes with namespace above (workload-level vs. backup-server-level scoping).

  • since (datetime | None) – Only include activities started at or after this time (inclusive).

  • until (datetime | None) – Only include activities started at or before this time (inclusive).

  • keyword (str | None) – Free-text search across workload name / plan name.

  • history (bool) – False (default) = ongoing activities; True = completed activity history.

  • limit (int) – Maximum number of records to return (default 100).

  • offset (int) – Pagination start offset (default 0).

Returns:

(list of BackupActivity, total) for the selected mode.

Return type:

tuple[list[BackupActivity], int]

async get(activity_id)

Fetch the details (including logs) of a backup activity by activity_id.

Parameters:

activity_id (str) – Unique activity identifier.

Raises:

ResourceNotFoundError – The specified ID does not exist.

async get_latest_by_workload_name(name)

Fetch the latest backup activity details (including logs) for a given workload name.

Searches ongoing activities first, then history; exact-matches workload_name and calls get() for full details.

Parameters:

name (str) – Workload display name (exact match, case-insensitive).

Raises:

ResourceNotFoundError – No activity found with a matching workload_name.

async get_by_version(version)

Fetch backup activity details (including logs) for a specific backup version.

Parameters:

version (WorkloadVersion) – WorkloadVersion object (obtained from workloads.list_versions() or workloads.get_version()).

async cancel(activity)

Cancel a running backup activity.

Parameters:

activity (BackupActivity) – The backup activity to cancel (obtained from list()).

Raises:
class synology_apm.sdk.collections.activities.RestoreActivityCollection(session)

Bases: _BaseActivityCollection[RestoreActivity]

Interface for querying restore activity records.

Accessed via ActivityCollection.restore.

async list(status=None, workload=None, since=None, until=None, keyword=None, history=False, limit=100, offset=0)

List restore activity records.

Parameters:
  • status (list[RestoreActivityStatus] | None) – Restore activity status filter (OR logic).

  • workload (Workload | None) – Restrict results to a single workload’s activities, matched by (workload.workload_id, workload.namespace). If no workload matching this reference exists on the server, raises ResourceNotFoundError (see Raises below) – unlike BackupActivityCollection.list(), which returns ([], 0) in that case.

  • since (datetime | None) – Only include activities started at or after this time (inclusive).

  • until (datetime | None) – Only include activities started at or before this time (inclusive).

  • keyword (str | None) – Free-text search across workload name / plan name.

  • history (bool) – False (default) = ongoing activities; True = completed activity history.

  • limit (int) – Maximum number of records to return (default 100).

  • offset (int) – Pagination start offset (default 0).

Returns:

(list of RestoreActivity, total) for the selected mode.

Raises:

ResourceNotFoundErrorworkload does not match any workload on the server.

Return type:

tuple[list[RestoreActivity], int]

async get(activity_id)

Fetch the details (including logs) of a restore activity by activity_id.

Parameters:

activity_id (str) – Unique activity identifier.

Raises:

ResourceNotFoundError – The specified ID does not exist.

async get_latest_by_workload_name(name)

Fetch the latest restore activity details (including logs) for a given workload name.

Searches ongoing activities first, then history; exact-matches workload_name and calls get() for full details.

Parameters:

name (str) – Workload display name (exact match, case-insensitive).

Raises:

ResourceNotFoundError – No activity found with a matching workload_name.

async cancel(activity)

Cancel a running restore activity.

Parameters:

activity (RestoreActivity) – The restore activity to cancel (obtained from list()).

Raises:
class synology_apm.sdk.collections.activities.ActivityCollection(session)

Bases: object

Namespace interface for backup and restore activity records.

Accessed via APMClient.activities.

property backup: BackupActivityCollection

Access the BackupActivityCollection.

property restore: RestoreActivityCollection

Access the RestoreActivityCollection.