Introduction
When planning maintenance, migrations, or capacity checks in Veeam Backup for Microsoft 365, you often need to answer one question quickly:
Which backup jobs are writing to this repository?
This guide shows a practical PowerShell method using Get-VBORepository and Get-VBOJob to find those job-to-repository mappings.
Prerequisites
- Run commands from a Veeam Backup for Microsoft 365 server (or management host with console and PowerShell module available).
- Use an account with permission to read Veeam configuration.
- Open PowerShell as administrator.
Load Veeam PowerShell (if not already loaded in your session):
Import-Module Veeam.Archiver.PowerShell
Method 1: Find jobs by repository name (tested script)
If you know the repository name, this script is a solid approach:
# Get all repos by name
Get-VBORepository
# Create var with repo name
$repositoryName = "Veeam365-02"
# Get all repo
$repository = Get-VBORepository | Where-Object { $_.Name -eq $repositoryName }
if ($repository) {
# List all jobs using the specified repository
$jobs = Get-VBOJob | Where-Object { $_.RepositoryId -eq $repository.Id }
if ($jobs.Count -gt 0) {
# Output the job names that use the repository
$jobs | Select-Object Name, Organization, RepositoryName
} else {
Write-Host "No jobs are using the repository '$repositoryName'."
}
} else {
Write-Host "Repository '$repositoryName' not found."
}
Method 2: Include repository ID and export-ready output
For change control/reporting, output job and repository identifiers:
$repositoryName = "Veeam365-02"
$repository = Get-VBORepository | Where-Object { $_.Name -eq $repositoryName }
if (-not $repository) {
throw "Repository '$repositoryName' not found."
}
Get-VBOJob | Where-Object {
$_.RepositoryId -eq $repository.Id
} | Select-Object Name, Organization, RepositoryName, RepositoryId
Export results to CSV
For change windows or documentation:
$repositoryName = "Veeam365-02"
$outFile = "C:\Temp\VBO-Jobs-Using-$repositoryName.csv"
$repository = Get-VBORepository | Where-Object { $_.Name -eq $repositoryName }
if (-not $repository) {
throw "Repository '$repositoryName' not found."
}
Get-VBOJob | Where-Object {
$_.RepositoryId -eq $repository.Id
} | Export-Csv -Path $outFile -NoTypeInformation
Write-Host "Exported: $outFile"
Troubleshooting
No jobs returned
- Confirm exact repository name.
- Verify jobs are enabled and visible to your account.
- Confirm the repository is the active target for those jobs.
Module/snap-in not loading
- Confirm Veeam console/components are installed on the host.
- Run PowerShell as administrator.
Conclusion
This Get-VBORepository + Get-VBOJob approach is simple and reliable for Veeam Backup for Microsoft 365.
For production changes, export results to CSV so you have a clear audit trail before repository maintenance or migration.