> ## Documentation Index
> Fetch the complete documentation index at: https://docs.neoagent.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Connecting Veeam Service Provider Console to Neo

> Save your console's address and an API key for a Neo user

You connect the console once at the MSP level. One API key covers every company the key's user manages.

## Before you start

* Neo works with **Veeam Service Provider Console 8.1 or later** (REST API v3). It is built on version 9.3; an older console answers the operations it has.
* Neo reaches the console over the internet. Its REST API (`/api/v3/` on the console's web address, port 1280 by default) must answer on **HTTPS** with a certificate from a public certificate authority, at a public address. If a firewall or reverse proxy limits who can reach it, allow [Neo's addresses](/integrations/ip-whitelisting) to reach `/api/v3/`.

### If the console is only on your internal network

Publish only the REST API, never the whole portal. Put a reverse proxy at your network edge that:

* answers on a public name over HTTPS, with a certificate from a public certificate authority;
* forwards only paths under `/api/v3/` to the console's web address, and refuses every other path;
* accepts connections only from [Neo's addresses](/integrations/ip-whitelisting);
* passes the `Authorization` header through unchanged.

Save the proxy's public address in Neo.

## 1. Create an API key for Neo

**1. Create a user for Neo**

In the console, create a user for Neo, such as `neo-agent`, with the role your agents need: **Portal Administrator** for agents that retry jobs, resolve alarms and set up companies, **Portal Operator** to manage without changing the console's own settings, or **Read-only User** for agents that only read.

**2. Add an API key**

Open the user's identities (**Configuration → Users**, then the user's **Identities**) and add an API key with the **REST** scope. Copy it: the console shows it once.

Neo can do only what this user may do, whatever the agent's access profile says.

> [!WARNING]
>
> If the user is disabled or the key's identity is deleted, Neo loses access until you save a new key here.

## 2. Add the key in Neo

**1. Open Integrations**

In the Neo Dashboard, open [**Integrations** → **Veeam Service Provider Console**](https://dashboard.neoagent.io/integrations?open=veeam_spc), under Backup & Recovery.

**2. Save the address and the API key**

Enter the address you open the console at, with its port (for example `https://vspc.example.com:1280`), and the API key, then click **Save settings**. Neo reads the key's own user before saving, so a wrong address or a refused key is rejected straight away.

## 3. Turn it on per agent

Open the agent, go to its **Tools & Settings** tab, click **Backup & Recovery**, and expand the **Veeam Service Provider Console** block. Pick one of its **Presets**, or set each area yourself:

| Area | Covers |
| - | - |
| **Alarms** | Triggered alarms: resolve and acknowledge; alarm templates and a company's alarm settings |
| **Job Runs** | Start, stop and retry backup server, Veeam Agent and Microsoft 365 jobs |
| **Backup Jobs** | Jobs, their last run, objects and settings; create, change and delete jobs |
| **Backup Agents and Policies** | Veeam Agents for Windows, Linux and Mac, their settings and backup policies |
| **Backup Servers and Repositories** | Backup servers, repositories, proxies, managed servers and stored credentials; Veeam ONE and Enterprise Manager |
| **Failover Plans** | Failover plans and their objects |
| **Protected Workloads and Backups** | Protected machines, file shares and cloud workloads, their backups and restore points |
| **Microsoft 365 Backup** | Veeam Backup for Microsoft 365 servers, organizations, jobs and company resources |
| **Cloud Connect and Vault** | Cloud Connect sites and tenants, their resources, and Veeam Data Cloud Vault |
| **Public Cloud Backup** | Veeam Backup for AWS, Microsoft Azure and Google Cloud |
| **Management Agents and Discovery** | Management agents, discovery and deployment |
| **Companies, Resellers and Locations** | Companies, resellers, locations and labels |
| **Users and Access** | Users, identities, identity providers and permissions |
| **Licensing and Billing** | Licenses, usage, VCSP Pulse, subscription plans and invoices |
| **Console Settings and Activity** | The console's own settings, certificates, webhooks, plugins and activity logs |

| Preset | What runs on its own | What asks a technician |
| - | - | - |
| **Read Only** | Every read | No write is allowed |
| **Helpdesk** | Reads, resolving alarms, and starting, stopping or retrying jobs | A change to a job's settings, a Veeam Agent or a management agent |
| **IT Admin** | Every read and most writes | Users and access, the console's settings, and licensing and billing |
| **Full Automation** | Every read and write | Only the writes that always ask |

The writes that always ask, whatever the preset, are listed under Safety Controls on the [Veeam Service Provider Console API](/agents/tools/backup/veeam-spc-api#safety-controls) page.

## Use it on alarm tickets

The console sends its alarm emails to the addresses in each alarm's notification settings, which is how most MSPs open Veeam tickets in their PSA. The titles name the status, the object, the job for a job alarm, the alarm and the company, for example `[Warning] SRV-01 - Daily Backup - Job session state () ~|Acme|~`. An agent that triggers on those tickets finds the alarm and its job, retries the job, reads the next run, and resolves the alarm once a run succeeds.

Map each company on the Organization Mapping tab first, and make sure your PSA files each alarm ticket under the customer's company: on a ticket, the agent reaches only the company mapped to the ticket's company.

A connection alarm (a management agent or backup server the console cannot reach) needs the Veeam services restarted on that machine. Give the agent your RMM tools too, and it restarts them there and checks the connection comes back.

See [Veeam Service Provider Console API](/agents/tools/backup/veeam-spc-api) for what the agent can read and change.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.