Skip to content
Current/ Help Center

Veeam: what's protected, how recoverable it is, and what's failing now

6 min read · Updated Sep 5, 2026

Veeam Service Provider Console is the one place a Veeam partner can see every customer at once. Backup & Replication manages a single backup server and Veeam Backup for Microsoft 365 manages a single Microsoft 365 server; neither of them knows what a customer is. The console does, and it sits in front of both. This connector reads that view into Current, per partner, so an account manager can answer "is their data actually recoverable" from the company record. One API key covers the whole estate, and Current only ever reads.

Note
What this connector is for
It mirrors what Veeam already knows; it never changes it. Current stores what is protected, how old each restore point is, which jobs came back failed, which Microsoft 365 objects are covered, and which alarms are lit. Starting or stopping a backup job, editing a job or a policy, activating or restarting an agent, acknowledging or resolving an alarm, installing software, rebooting a machine, touching a partner's status, generating an invoice, and minting another API key are all absent from the connector's code. A backup stops failing in Current because it stopped failing in Veeam.

What Current syncs

Data setWhat Current storesWhere it lands
CompaniesEvery company in your console: its name, its subscription status (Active, Expired, Disabled and so on), and how many of its alarms are lit right nowThe mapping panel on the Veeam card, and the company record
Protected workloadsPer server, workstation and virtual machine: the machine name, the operating system where Veeam reports one, when the newest and oldest restore points were taken, how many restore points exist, their size, whether any of them is immutable, and the malware state Veeam assignedThe Veeam card on the company record, and the backup cluster in Infrastructure & security
Backup jobsEvery job across three sources — backup-server jobs, agent jobs, and Microsoft 365 jobs — with its own status word from Veeam, its last run and last finish, how long it took, whether it is switched on, and the failure text when it failedThe card's failing-jobs list, the backups-failing alert, and the dashboard tile
Microsoft 365 objectsEach protected mailbox, group, team or site, its restore-point count and the date of the newest one, and which Microsoft tenant it belongs toThe card's Microsoft 365 line and the SaaS seats figure
AlarmsThe alarms the console has raised, with what they fired on, when, and the message — counted by whether the alarm is actually lit rather than by how many rows the console returnsThe card's alarm count and the company alert band
Note
Jobs and workloads count different things
One server can carry several jobs — a nightly image, an agent job, a copy to a second repository — so the number of jobs is not the number of machines, and neither is a total of the other. That is also why Veeam's figures sit on their own card rather than being added into the protected-systems number another backup product reports. A workspace running Veeam alongside Backup Radar sees two totals that are both right: Backup Radar has the verdict against your service level, Veeam has the estate behind it.

Create the API key in your console

Note
Mint it read-only
The console can issue a key that is incapable of writing, and this connector is built to be given one. Switch Read-only access on when you create it. Current's own code cannot reach a single one of Veeam's write endpoints either, so the switch is a second wall rather than the only one — but it is the wall you control, and it takes one click.
  1. 1
    1 · Pick or create a service account with the Portal Readonly Operator role
    Mint the key against a service account rather than a person. A VSPC key never expires on its own — it stays valid until the user behind it is disabled or deleted, so a key created by a technician who later leaves stops working the day their account is disabled, with nothing in Current having changed. The Portal Readonly Operator role also caps what the key can do regardless of how it was created. Use a provider-level account: a key minted against a company-scoped user sees one company and looks like a broken sync.
  2. 2
    2 · Open Configuration (top right) ▸ Access Management ▸ REST API Keys ▸ New
    Choose Simple Key, the option the console marks Recommended. It is the type that carries the Read-only access toggle.
  3. 3
    3 · Give it a description and switch Read-only access ON
    Name it for Current so the next person to read this list knows what it feeds.
  4. 4
    4 · Save and copy the key
    The console shows it once.
  5. 5
    5 · Check the console is reachable and its certificate is publicly trusted
    Current connects from the internet, so the console has to be published there or our egress allowlisted. It also needs a certificate from a public authority: Current will not skip certificate checks to reach a backup console, and there is no option to make it. If yours is self-signed or from a private authority, install a publicly trusted one before you connect.

Connect it in Current

  1. 1
    1 · Open Settings → Integrations → Veeam Service Provider Console
    Only Tenant Admins see this page.
  2. 2
    2 · Paste the console address, including the port
    For example https://vspc.example.com:1280. Port 1280 is the console's default for both the web interface and the API, but the API port can be set separately at install time and 1281 is a common alternative. If the first attempt cannot connect, try the other one before you assume the key is wrong. Any path you paste is discarded.
  3. 3
    3 · Paste the API key and press Test connection
    Current makes one read — a single-row company list — and reports what your console said. The key is stored server-side and is never shown again.
  4. 4
    4 · Map your companies
    Current writes one row per company in your console straight away, before it reads anything else, and links each one to a company in Current where exactly one name matches. Anything ambiguous waits on the Unmapped list for a person. A mapping you set by hand is never overwritten by a later automatic match, and mapping a company attaches its workloads, jobs and alarms immediately rather than waiting for the next sync.
Note
Companies Current skips, and companies it keeps
A company your console has deleted, or is deleting, is left out of the mapping list — it would sit there unmapped forever. Expired and Disabled companies are kept, because those are real partners with a lapsed or suspended subscription, and that is a renewal conversation an account manager wants on the company record.

How often it runs

Every six hours. You can press Sync now on the card at any time. The sync paces itself deliberately: your console is a production system, its rate limits are configured on your own server rather than published by Veeam, and a sync that slows down someone's backup console is worse than a sync that is a few hours behind. A large estate fills in across several runs rather than one burst.

What Veeam can tell us, and what it leaves blank

Every health figure on the card can be blank, and blank means Veeam did not report it. Blank never means zero and never means healthy. Four cases come up often enough to name:

  • A workload with no restore point at all is reported as never backed up. Veeam knows about the machine, and it has never made a copy of it — that is a finding, and it shows as one.
  • A workload Current has no record of shows as not reporting. Nothing is claimed about it, because nothing is known about it.
  • Malware state is stored exactly as Veeam sends it. Infected and Suspicious are findings. Clean is a pass. Unverified and Unknown mean the scan did not run or did not reach a conclusion, and they read as unknown — the card will not show a reassuring result off them.
  • Immutability is reported for virtual machines, because that is where Veeam reports it. A company whose estate is all agent-backed computers shows no immutability figure at all rather than a zero percent that would be about the connector rather than the partner.
Note
Warning counts as failing here
A Veeam job that finishes with a warning usually means some objects were skipped, which is a gap in what was actually protected. Current counts those jobs as failing. That is a deliberate difference from Backup Radar, where a warning does not count as a failure, and it is why a workspace running both can see a slightly higher failing count from Veeam.

Where the data appears

  • The Veeam card on a company record: protected workloads split by kind, jobs failing now with their names and last run, immutability coverage across virtual machines, the oldest restore point, the company's status when it is not Active, and the count of lit alarms.
  • The Backup cluster in Infrastructure & security, where protected systems and failing systems fold in alongside your other backup feeds.
  • The company alert band, through the backups-failing alert. Where both Veeam and Backup Radar are connected, a company raises one alert rather than two.
  • Strategic Business Reviews, in the Backup & continuity chapter.
  • Dashboard tiles for protected workloads, failing jobs, immutability coverage and Microsoft 365 objects.

Troubleshooting

What you seeWhat it meansWhat to do
Couldn't reach your Veeam console at … (no response within 15 seconds)Nothing reached the console. Three things cause this and none of them is the key: the console is not published to the internet, the API port differs from the one you sign in on, or the certificate is self-signed or from a private authority.Publish the console or allowlist Current's egress, try the other port (1280 and 1281 are both common), and install a publicly trusted certificate. Current will not skip certificate checks.
Your Veeam console rejected the API keyThe console answered and refused the credential.Create a fresh Simple Key with Read-only access switched on and paste it again. A VSPC key never expires by itself, so a key that stopped working usually means the user account behind it was disabled or deleted — mint the replacement against a service account.
Your Veeam console accepted the key but refused the company listThe key authenticates and is not allowed to read what Current needs.Two settings cause this. The key needs the rest scope — a key minted without it is valid and cannot call this API at all. And it needs to belong to a provider-level user; Portal Readonly Operator is the right role.
Your console returned one companyThe connection works. The key was almost certainly created against a company-scoped user, so it can only see that one partner.If you manage more than one company, re-create the key against a provider-level account and reconnect. If you genuinely have one partner in this console, nothing is wrong.
Your Veeam console queued the company list rather than answering it (HTTP 202)The console accepted the request and deferred it instead of returning data. Current treats that as an unfinished read rather than an empty estate.Wait a moment and press Test again. On a scheduled sync it resolves itself on the next run.
Your Veeam console returned a server error (HTTP 520)A problem on the console's side. VSPC reports every server error as 520, so this covers the whole family.Nothing to change. Current backs off and retries on the next scheduled sync, and it will not remove any data on the strength of a run that saw one.
Your Veeam console is rate-limiting the requestThe console's own throttling kicked in. It is configured on your server, not by Veeam, so there is no fixed number to quote.Wait and try again. Current also backs off on its own and resumes on the next scheduled sync.
Your console answered but the response wasn't a recognizable oneVeeam answered with something this connector does not understand. That points at Current, not at your key, and Current will not verify a credential off a response it cannot read.Contact support with the time of the attempt.
The card says this run didn't finishThe estate is larger than one run's budget, or a leg was cut short.Nothing to do. Current resumes where it left off on the next scheduled run, and it will not delete anything or publish a low count off a partial read.
Was this helpful?