Veeam Traffic Rules API
The Traffic Rules section defines paths and operations for retrieving and editing information about network traffic rules that are configured on the backup server.
The Traffic Rules section defines paths and operations for retrieving and editing information about network traffic rules that are configured on the backup server.
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-traffic-rules-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 Traffic Rules 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 Traffic Rules section defines paths and operations for retrieving and editing information about network traffic rules that are configured on the backup server.
name: Traffic Rules
paths:
/api/v1/trafficRules:
get:
description: The HTTP GET request to the `/api/v1/trafficRules` path allows you to get network traffic rules that control traffic transferred between backup infrastructure components.
operationId: GetAllTrafficRules
parameters:
- $ref: '#/components/parameters/apiVersionParam'
responses:
'200':
content:
application/json:
example:
trafficRules:
- encryptionEnabled: true
id: 622b0112-a972-49c2-9987-24a57ddc930a
name: Internet
sourceIPEnd: ''
sourceIPStart: Any
targetIPEnd: ''
targetIPStart: Internet
throttlingEnabled: false
throttlingUnit: MbitPerSpec
throttlingValue: 1
throttlingWindowEnabled: false
throttlingWindowOptions:
days:
- day: sunday
hours: 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- day: monday
hours: 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- day: tuesday
hours: 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- day: wednesday
hours: 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- day: thursday
hours: 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- day: friday
hours: 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- day: saturday
hours: 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
uploadStreamsCount: 5
preferredNetworks:
isEnabled: false
networks: []
useMultipleStreamsPerJob: true
schema:
$ref: '#/components/schemas/GlobalNetworkTrafficRulesModel'
description: OK
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'500':
$ref: '#/components/responses/InternalServerError'
summary: Get Traffic Rules
tags:
- Traffic Rules
x-veeam-authorize:
claims:
- ViewTrafficRules
put:
description: The HTTP PUT request to the `/api/v1/trafficRules` path allows you to edit network traffic rules that are configured on the backup server.
operationId: UpdateTrafficRules
parameters:
- $ref: '#/components/parameters/apiVersionParam'
requestBody:
content:
application/json:
example:
preferredNetworks:
isEnabled: true
networks:
- cidrNotation: '8'
ipAddress: 124.0.0.0
subnetMask: 255.0.0.0
- cidrNotation: '8'
ipAddress: 123.0.0.0
subnetMask: 255.0.0.0
trafficRules:
- encryptionEnabled: true
id: 622b0112-a972-49c2-9987-24a57ddc930a
name: Internet
sourceIPEnd: ''
sourceIPStart: Any
targetIPEnd: ''
targetIPStart: Internet
throttlingEnabled: false
throttlingUnit: MbitPerSpec
throttlingValue: 2
throttlingWindowEnabled: true
throttlingWindowOptions:
days:
- day: sunday
hours: 0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- day: monday
hours: 0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- day: tuesday
hours: 1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- day: wednesday
hours: 1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- day: thursday
hours: 1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- day: friday
hours: 1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- day: saturday
hours: 1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
useMultipleStreamsPerJob: true
uploadStreamsCount: 5
schema:
$ref: '#/components/schemas/GlobalNetworkTrafficRulesModel'
required: true
responses:
'201':
content:
application/json:
example:
uploadStreamsCount: 5
trafficRules:
- encryptionEnabled: true
id: 622b0112-a972-49c2-9987-24a57ddc930a
name: Internet
sourceIPEnd: ''
sourceIPStart: Any
targetIPEnd: ''
targetIPStart: Internet
throttlingEnabled: false
throttlingUnit: MbitPerSpec
throttlingValue: 2
throttlingWindowEnabled: true
throttlingWindowOptions:
days:
- day: sunday
hours: 0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- day: monday
hours: 0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- day: tuesday
hours: 1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- day: wednesday
hours: 1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- day: thursday
hours: 1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- day: friday
hours: 1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- day: saturday
hours: 1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
useMultipleStreamsPerJob: true
preferredNetworks:
isEnabled: true
networks:
- cidrNotation: '8'
ipAddress: 124.0.0.0
subnetMask: 255.0.0.0
- cidrNotation: '8'
ipAddress: 123.0.0.0
subnetMask: 255.0.0.0
schema:
$ref: '#/components/schemas/GlobalNetworkTrafficRulesModel'
description: Infrastructure session has been created to edit the traffic rules. To check the progress, track the session `state`.
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'500':
$ref: '#/components/responses/InternalServerError'
summary: Edit Traffic Rules
tags:
- Traffic Rules
x-veeam-authorize:
claims:
- UpdateTrafficRules
components:
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:
ESpeedUnit:
description: Traffic speed unit.
enum:
- KbytePerSec
- MbitPerSpec
- MbytePerSec
type: string
EDayOfWeek:
description: Day of the week.
enum:
- monday
- tuesday
- wednesday
- thursday
- friday
- saturday
- sunday
type: string
BackupWindowSettingModel:
description: Time scheme that defines permitted days and hours for the job to start.
properties:
days:
description: Array of per-day schemes.
items:
$ref: '#/components/schemas/BackupWindowDayHoursModel'
type: array
required:
- days
type: object
PreferredNetworksModel:
description: Preferred networks used for backup and replication traffic.
properties:
isEnabled:
description: If *true*, prefered networks are enabled.
type: boolean
networks:
description: Array of networks.
items:
$ref: '#/components/schemas/PreferredNetworkModel'
type: array
required:
- isEnabled
type: object
TrafficRuleModel:
properties:
encryptionEnabled:
description: If *true*, traffic encryption is enabled.
type: boolean
id:
description: ID of the rule.
format: uuid
type: string
name:
description: Name of the rule.
type: string
sourceIPEnd:
description: End IP address of the range for the backup infrastructure components on the source side.
type: string
sourceIPStart:
description: Start IP address of the range for the backup infrastructure components on the source side.
type: string
targetIPEnd:
description: End IP address of the range for the backup infrastructure components on the target side.
type: string
targetIPStart:
description: Start IP address of the range for the backup infrastructure components on the target side.
type: string
throttlingEnabled:
description: If *true*, traffic throttling is enabled.
type: boolean
throttlingUnit:
$ref: '#/components/schemas/ESpeedUnit'
throttlingValue:
description: Maximum speed that must be used to transfer data from source to target.
format: int32
type: integer
throttlingWindowEnabled:
description: If *true*, throttling window during which the speed must be limited is enabled.
type: boolean
throttlingWindowOptions:
$ref: '#/components/schemas/BackupWindowSettingModel'
required:
- name
- sourceIPStart
- sourceIPEnd
- targetIPStart
- targetIPEnd
type: object
PreferredNetworkModel:
properties:
cidrNotation:
description: CIDR notation.
type: string
ipAddress:
description: IP address.
type: string
subnetMask:
description: Subnet mask.
type: string
type: object
GlobalNetworkTrafficRulesModel:
properties:
preferredNetworks:
$ref: '#/components/schemas/PreferredNetworksModel'
trafficRules:
description: Array of traffic rules.
items:
$ref: '#/components/schemas/TrafficRuleModel'
type: array
uploadStreamsCount:
description: Number of TCP/IP connections per job.
format: integer
type: integer
useMultipleStreamsPerJob:
description: If *true*, Veeam Backup & Replication uses multiple TCP/IP transfer connection for every job session.
type: boolean
required:
- useMultipleStreamsPerJob
type: object
BackupWindowDayHoursModel:
description: Hourly scheme for a day.
properties:
day:
$ref: '#/components/schemas/EDayOfWeek'
hours:
description: String of 24 hours in the following format:<br>*1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1*<br>where *1* means permitted, *0* means denied.
type: string
required:
- day
- hours
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
responses:
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.
securitySchemes:
Bearer:
name: Authorization
in: header
type: apiKey
description: Bearer \<JWT\>