Veeam Agents API
The Agents section defines paths and operations for managing recovery tokens used for bare metal recovery.
The Agents section defines paths and operations for managing recovery tokens used for bare metal recovery.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/veeam-agents-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
version: 1.0-rev0
title: Veeam Backup for AWS public API 1.0 Agents API
description: The Agents section defines paths and operations for managing recovery tokens used for bare metal recovery.
servers:
- url: https://localhost:9419
description: Base URL declared by the provider in apis.yml (roadmap#122).
security:
- Bearer: []
tags:
- description: The Agents section defines paths and operations for managing recovery tokens used for bare metal recovery.
name: Agents
paths:
/api/v1/agents/recoveryTokens:
get:
description: The HTTP GET request to the `/api/v1/agents/recoveryTokens` path allows you to get an array of all recovery tokens.
operationId: GetAllComputerRecoveryTokens
parameters:
- $ref: '#/components/parameters/apiVersionParam'
- description: Number of recovery tokens to skip.
in: query
name: skip
schema:
format: int32
type: integer
x-veeam-spec:
$ref: '#/components/schemas/ComputerRecoveryTokenFilters'
- description: Maximum number of recovery tokens to return.
in: query
name: limit
schema:
format: int32
type: integer
x-veeam-spec:
$ref: '#/components/schemas/ComputerRecoveryTokenFilters'
- description: Sorts recovery tokens by one of the parameters.
in: query
name: orderColumn
schema:
$ref: '#/components/schemas/EComputerRecoveryTokenFiltersOrderColumn'
x-veeam-spec:
$ref: '#/components/schemas/ComputerRecoveryTokenFilters'
- description: Sorts recovery tokens in the ascending order by the `orderColumn` parameter.
in: query
name: orderAsc
schema:
type: boolean
x-veeam-spec:
$ref: '#/components/schemas/ComputerRecoveryTokenFilters'
- description: Filters recovery tokens by the `nameFilter` pattern. The pattern can match any repository parameter. To substitute one or more characters, use the asterisk (*) character at the beginning, at the end or both.
in: query
name: nameFilter
schema:
type: string
x-veeam-spec:
$ref: '#/components/schemas/ComputerRecoveryTokenFilters'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ComputerRecoveryTokenResult'
description: OK
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'500':
$ref: '#/components/responses/InternalServerError'
summary: Get All Recovery Tokens
tags:
- Agents
x-veeam-authorize:
claims:
- ViewComputerRecoveryTokens
post:
description: The HTTP POST request to the `/api/v1/agents/recoveryTokens` path allows you to create a new recovery token.
operationId: CreateComputerRecoveryToken
parameters:
- $ref: '#/components/parameters/apiVersionParam'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ComputerRecoveryTokenSpec'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ComputerRecoveryTokenModel'
description: Recovery token has been created.
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'500':
$ref: '#/components/responses/InternalServerError'
summary: Create Recovery Token
tags:
- Agents
x-veeam-authorize:
claims:
- CreateComputerRecoveryToken
/api/v1/agents/recoveryTokens/{id}:
delete:
description: The HTTP DELETE request to the `/api/v1/agents/recoveryTokens/{id}` path allows you to delete a recovery token that has the specified `id`.
operationId: DeleteComputerRecoveryToken
parameters:
- $ref: '#/components/parameters/apiVersionParam'
- description: ID of the recovery token.
in: path
name: id
required: true
schema:
format: uuid
type: string
responses:
'204':
content:
application/json:
schema:
$ref: '#/components/schemas/EmptySuccessResponse'
description: Token has been deleted.
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
summary: Delete Recovery Token
tags:
- Agents
x-veeam-authorize:
claims:
- DeleteComputerRecoveryToken
get:
description: The HTTP GET request to the `/api/v1/agents/recoveryTokens/{id}` path allows you to get a recovery token that has the specified `id`.
operationId: GetComputerRecoveryToken
parameters:
- $ref: '#/components/parameters/apiVersionParam'
- description: ID of the recovery token.
in: path
name: id
required: true
schema:
format: uuid
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ComputerRecoveryTokenModel'
description: OK
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
summary: Get Recovery Token
tags:
- Agents
x-veeam-authorize:
claims:
- ViewComputerRecoveryTokens
put:
description: The HTTP PUT request to the `/api/v1/agents/recoveryTokens/{id}` path allows you to edit settings of a recovery token that has the specified `id`.
operationId: UpdateComputerRecoveryToken
parameters:
- $ref: '#/components/parameters/apiVersionParam'
- description: ID of the recovery token.
in: path
name: id
required: true
schema:
format: uuid
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ComputerRecoveryTokenModel'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ComputerRecoveryTokenModel'
description: Recovery token has been updated.
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
summary: Edit Recovery Token
tags:
- Agents
x-veeam-authorize:
claims:
- UpdateComputerRecoveryToken
components:
responses:
NotFound:
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
description: Not found. No object was found with the path parameter specified in the request.
Unauthorized:
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
description: Unauthorized. The authorization header has been expected but not found (or found but is expired).
BadRequest:
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
description: Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
InternalServerError:
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
description: Internal server error. The request has been received but could not be completed because of an internal error at the server side.
Forbidden:
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
description: Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
parameters:
apiVersionParam:
description: Version and revision of the client REST API. Must be in the following format: `<version>-<revision>`.
in: header
name: x-api-version
required: true
schema:
default: 1.1-rev0
type: string
schemas:
ComputerRecoveryTokenModel:
properties:
expirationDate:
description: Date and time when the recovery token expires.
format: date-time
type: string
id:
description: ID of the recovery token.
format: uuid
type: string
name:
description: Friendly name of the recovery token.
type: string
recoveryToken:
description: Recovery token.
type: string
required:
- id
- name
- expirationDate
type: object
ComputerRecoveryTokenSpec:
properties:
backupIds:
description: Array of backup IDs whose data you want to restore with the recovery token.
items:
format: uuid
type: string
type: array
expirationDate:
description: Date and time when the access token expires.
format: date-time
type: string
required:
- backupIds
- expirationDate
type: object
ComputerRecoveryTokenResult:
properties:
data:
description: Array of recovery tokens.
items:
$ref: '#/components/schemas/ComputerRecoveryTokenModel'
type: array
pagination:
$ref: '#/components/schemas/PaginationResult'
required:
- data
- pagination
type: object
ComputerRecoveryTokenFilters:
properties:
expirationDateAfter:
format: date-time
type: string
expirationDateBefore:
format: date-time
type: string
limit:
format: int32
type: integer
nameFilter:
type: string
orderAsc:
type: boolean
orderColumn:
$ref: '#/components/schemas/EComputerRecoveryTokenFiltersOrderColumn'
skip:
format: int32
type: integer
type: object
EmptySuccessResponse:
description: Empty success response (200, 201, 204).
type: object
EComputerRecoveryTokenFiltersOrderColumn:
enum:
- Name
- ExpirationDate
type: string
PaginationResult:
description: Pagination settings.
properties:
count:
description: Number of returned results.
format: int32
type: integer
limit:
description: Maximum number of results to return.
format: int32
type: integer
skip:
description: Number of skipped results.
format: int32
type: integer
total:
description: Total number of results.
format: int32
type: integer
required:
- total
- count
type: object
Error:
properties:
errorCode:
description: The error code is a string that uniquely identifies an error condition and should be understood by programs that detect and handle errors by type
enum:
- AccessDenied
- ExpiredToken
- InvalidToken
- InvalidURI
- MethodNotAllowed
- NotFound
- NotImplemented
- ServiceUnavailable
- UnexpectedContent
- UnknownError
type: string
message:
description: The error message contains a generic description of the error condition in English. It is intended for a human audience
type: string
resourceId:
description: ID of the object that is involved in the error (or empty)
type: string
required:
- errorCode
- message
type: object
securitySchemes:
Bearer:
name: Authorization
in: header
type: apiKey
description: Bearer \<JWT\>