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.

Operations 2

GET /api/v1/trafficRules Get Traffic Rules #
PUT /api/v1/trafficRules Edit Traffic Rules #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/veeam-traffic-rules-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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 Specification

veeam-traffic-rules-api-openapi.yml Raw ↑
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&#58; `<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\>