synology_apm.sdk.collections.backup_servers module¶
BackupServerCollection — collection interface for managing cluster backup servers.
- class synology_apm.sdk.collections.backup_servers.BackupServerCollection(session)¶
Bases:
objectCollection interface for managing backup servers in the APM cluster.
Accessed via APMClient.backup_servers; should not be instantiated directly.
- async list(name_contains=None, status_filter=None, type_filter=None, limit=500, offset=0)¶
List all backup servers in the cluster.
Tiering plan name and destination are resolved concurrently for all servers in the page that have a tiering plan assigned.
- Parameters:
name_contains (str | None) – Name keyword search (fuzzy match).
status_filter (list[ServerStatus] | None) – Filter by ServerStatus. Accepts multiple values; None means no filter.
type_filter (list[BackupServerType] | None) – Filter by BackupServerType (DP or NAS). Accepts multiple values; None means no filter.
limit (int) – Maximum records to return (default 500).
offset (int) – Pagination start offset (default 0).
- Returns:
(list of BackupServer, total count matching the filter)
- Return type:
tuple[list[BackupServer], int]
- async get_by_name(name)¶
Fetch a backup server by name (keyword search + exact match).
Searches using name as keyword; matches each result in order: exact backup_server_id → case-insensitive name → case-insensitive hostname. Returns immediately on the first match without fetching further pages.
- Parameters:
name (str) – Server display name, hostname, or ID.
- Raises:
ResourceNotFoundError – No backup server with an exact match was found.
- async change_tiering_plan(server, plan)¶
Apply or remove a Tiering Plan on a Backup Server.
Tiering is supported only for DP-type backup servers.
- Parameters:
server (BackupServer) – BackupServer object (obtained via get() or get_by_name()).
plan (TieringPlan | None) – TieringPlan to apply, or None to remove the current plan.
- Raises:
InvalidOperationError – The backup server is not a DP-type server.
- async get(backup_server_id)¶
Fetch a backup server by ID.
- Raises:
ResourceNotFoundError – The specified backup server does not exist.