- fetch_backups(): typeFilter → jobTypeFilter (spec parameter name fix)
- fetch_protection_groups(): new method via /api/v1/agents/protectionGroups
(spec-recommended replacement for deprecated protectedComputers)
- fetch_alarms(): wrap in try/except — endpoint not in v13 spec, may 404
- _collect_instance(): fetch and expose protection_groups in response
- fetch_sessions now queries 5 URL variants and merges results
by unique session id (no duplicates)
- First query: unfiltered with 3x limit (gets recent sessions of all types)
- Then: sessionType=BackupJob, FileBackupJob, AgentBackupJob
- Ensures all backup job types appear in dashboard
- fetch_jobs: try /api/v1/agents/policies/states and /api/v1/agents/policies
as additional fallback URLs (agent-based backup policies)
- fetch_sessions: fallback with typeFilter=Backup and typeFilter=Agent
to find actual backup/agent sessions beyond system config sync
- New fetch_agent_policies() method for dedicated agent policy queries
- Helps surface real backup policies when classic /api/v1/jobs fails
due to FileBackup enum bug
- veeam_client: try 6 URL variants (states/config with source/typeFilter),
then legacy on 9419, then legacy on port 9398
- main.py: if jobs_data empty but sessions available, aggregate sessions
by jobName to build synthetic job list with name/type/result/state
- Ensures jobs tab always shows data even when API has FileBackup enum bug