Veeam Automation API

The Automation section defines paths and operations for granular import and export of objects available in the REST API. It can be useful, for example, if you set up the backup infrastructure using JSON specification or migrate the infrastructure to another backup server. For details, see [Mass Deployment](https://helpcenter.veeam.com/docs/backup/vbr_rest/automation.html?ver=120).

OpenAPI Specification

veeam-automation-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  version: 1.0-rev0
  title: Veeam Backup for AWS public API 1.0 Agents Automation API
  description: The Agents section defines paths and operations for managing recovery tokens used for bare metal recovery.
security:
- Bearer: []
tags:
- description: The Automation section defines paths and operations for granular import and export of objects available in the REST API. It can be useful, for example, if you set up the backup infrastructure using JSON specification or migrate the infrastructure to another backup server. For details, see [Mass Deployment](https://helpcenter.veeam.com/docs/backup/vbr_rest/automation.html?ver=120).
  name: Automation
paths:
  /api/v1/automation/cloudcredentials/export:
    post:
      description: The HTTP POST request to the `/api/v1/automation/cloudcredentials/export` path allows you to export cloud credentials from Veeam Backup & Replication.
      operationId: ExportCloudCredentials
      parameters:
      - $ref: '#/components/parameters/apiVersionParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CloudCredentialsExportSpec'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CloudCredentialsImportSpecCollection'
          description: OK
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Export Cloud Credentials
      tags:
      - Automation
      x-veeam-authorize:
        claims:
        - ExportCredentials
  /api/v1/automation/cloudcredentials/import:
    post:
      description: The HTTP POST request to the `/api/v1/automation/cloudcredentials/import` path allows you to import cloud credentials to Veeam Backup & Replication.
      operationId: ImportCloudCredentials
      parameters:
      - $ref: '#/components/parameters/apiVersionParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CloudCredentialsImportSpecCollection'
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionModel'
          description: Automation session has been created to import the cloud credentials. 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: Import Cloud Credentials
      tags:
      - Automation
      x-veeam-authorize:
        claims:
        - ImportCredentials
  /api/v1/automation/credentials/export:
    post:
      description: The HTTP POST request to the `/api/v1/automation/credentials/export` path allows you to export credentials from Veeam Backup & Replication.
      operationId: ExportCredentials
      parameters:
      - $ref: '#/components/parameters/apiVersionParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CredentialsExportSpec'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CredentialsImportSpecCollection'
          description: OK
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Export Credentials
      tags:
      - Automation
      x-veeam-authorize:
        claims:
        - ExportCredentials
  /api/v1/automation/credentials/import:
    post:
      description: The HTTP POST request to the `/api/v1/automation/credentials/import` path allows you to import credentials to Veeam Backup & Replication.
      operationId: ImportCredentials
      parameters:
      - $ref: '#/components/parameters/apiVersionParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CredentialsImportSpecCollection'
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionModel'
          description: Automation session has been created to import the credentials. 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: Import Credentials
      tags:
      - Automation
      x-veeam-authorize:
        claims:
        - ImportCredentials
  /api/v1/automation/encryptionPasswords/export:
    post:
      description: The HTTP POST request to the `/api/v1/automation/encryptionPasswords/export` path allows you to export encryption passwords from Veeam Backup & Replication.
      operationId: ExportEncryptionPasswords
      parameters:
      - $ref: '#/components/parameters/apiVersionParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EncryptionPasswordExportSpec'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EncryptionPasswordImportSpecCollection'
          description: OK
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Export Encryption Passwords
      tags:
      - Automation
      x-veeam-authorize:
        claims:
        - ExportEncryptionPasswords
  /api/v1/automation/encryptionPasswords/import:
    post:
      description: The HTTP POST request to the `/api/v1/automation/encryptionPasswords/import` path allows you to import encryption passwords to Veeam Backup & Replication.
      operationId: ImportEncryptionPasswords
      parameters:
      - $ref: '#/components/parameters/apiVersionParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EncryptionPasswordImportSpecCollection'
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionModel'
          description: Automation session has been created to import the passwords. 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: Import Encryption Passwords
      tags:
      - Automation
      x-veeam-authorize:
        claims:
        - ImportEncryptionPasswords
  /api/v1/automation/jobs/export:
    post:
      description: The HTTP POST request to the `/api/v1/automation/jobs/export` path allows you to export jobs from Veeam Backup & Replication.
      operationId: ExportJobs
      parameters:
      - $ref: '#/components/parameters/apiVersionParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/JobExportSpec'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobImportSpecCollection'
          description: OK
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Export Jobs
      tags:
      - Automation
      x-veeam-authorize:
        claims:
        - ExportJobs
  /api/v1/automation/jobs/import:
    post:
      description: The HTTP POST request to the `/api/v1/automation/jobs/import` path allows you to import jobs to Veeam Backup & Replication.
      operationId: ImportJobs
      parameters:
      - $ref: '#/components/parameters/apiVersionParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/JobImportSpecCollection'
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionModel'
          description: Automation session has been created to import the jobs. 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: Import Jobs
      tags:
      - Automation
      x-veeam-authorize:
        claims:
        - ImportJobs
  /api/v1/automation/managedServers/export:
    post:
      description: The HTTP POST request to the `/api/v1/automation/managedServers/export` path allows you to export managed servers from Veeam Backup & Replication.
      operationId: ExportManagedServers
      parameters:
      - $ref: '#/components/parameters/apiVersionParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ManageServerExportSpec'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManageServerImportSpecCollection'
          description: OK
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Export Servers
      tags:
      - Automation
      x-veeam-authorize:
        claims:
        - ExportManagedServers
  /api/v1/automation/managedServers/import:
    post:
      description: The HTTP POST request to the `/api/v1/automation/managedServers/import` path allows you to import managed servers to Veeam Backup & Replication.
      operationId: ImportManagedServers
      parameters:
      - $ref: '#/components/parameters/apiVersionParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ManageServerImportSpecCollection'
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionModel'
          description: Automation session has been created to import the servers. 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: Import Servers
      tags:
      - Automation
      x-veeam-authorize:
        claims:
        - ImportManagedServers
  /api/v1/automation/proxies/export:
    post:
      description: The HTTP POST request to the `/api/v1/automation/proxies/export` path allows you to export backup proxies from Veeam Backup & Replication.
      operationId: ExportProxies
      parameters:
      - $ref: '#/components/parameters/apiVersionParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProxyExportSpec'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProxyImportSpecCollection'
          description: OK
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Export Proxies
      tags:
      - Automation
      x-veeam-authorize:
        claims:
        - ExportProxies
  /api/v1/automation/proxies/import:
    post:
      description: The HTTP POST request to the `/api/v1/automation/proxies/import` path allows you to import backup proxies to Veeam Backup & Replication.
      operationId: ImportProxies
      parameters:
      - $ref: '#/components/parameters/apiVersionParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProxyImportSpecCollection'
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionModel'
          description: Automation session has been created to import the proxies. 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: Import Proxies
      tags:
      - Automation
      x-veeam-authorize:
        claims:
        - ImportProxies
  /api/v1/automation/repositories/export:
    post:
      description: The HTTP POST request to the `/api/v1/automation/repositories/export` path allows you to export backup repositories from Veeam Backup & Replication.
      operationId: ExportRepositories
      parameters:
      - $ref: '#/components/parameters/apiVersionParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RepositoryExportSpec'
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RepositoryImportSpecCollection'
          description: OK
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Export Repositories
      tags:
      - Automation
      x-veeam-authorize:
        claims:
        - ExportRepositories
  /api/v1/automation/repositories/import:
    post:
      description: The HTTP POST request to the `/api/v1/automation/repositories/import` path allows you to import backup repositories to Veeam Backup & Replication.
      operationId: ImportRepositories
      parameters:
      - $ref: '#/components/parameters/apiVersionParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RepositoryImportSpecCollection'
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionModel'
          description: Automation session has been created to import the repositories. 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: Import Repositories
      tags:
      - Automation
      x-veeam-authorize:
        claims:
        - ImportRepositories
  /api/v1/automation/sessions:
    get:
      description: The HTTP GET request to the `/api/v1/automation/sessions` path allows you to get an array of all automation sessions performed on the backup server.
      operationId: GetAllAutomationSessions
      parameters:
      - $ref: '#/components/parameters/apiVersionParam'
      - description: Number of sessions to skip.
        in: query
        name: skip
        schema:
          format: int32
          type: integer
        x-veeam-spec:
          $ref: '#/components/schemas/SessionsFilters'
      - description: Maximum number of sessions to return.
        in: query
        name: limit
        schema:
          format: int32
          type: integer
        x-veeam-spec:
          $ref: '#/components/schemas/SessionsFilters'
      - description: Sorts sessions by one of the session parameters.
        in: query
        name: orderColumn
        schema:
          $ref: '#/components/schemas/ESessionsFiltersOrderColumn'
        x-veeam-spec:
          $ref: '#/components/schemas/SessionsFilters'
      - description: Sorts sessions in the ascending order by the `orderColumn` parameter.
        in: query
        name: orderAsc
        schema:
          type: boolean
        x-veeam-spec:
          $ref: '#/components/schemas/SessionsFilters'
      - description: Filters sessions by the `nameFilter` pattern. The pattern can match any session 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/SessionsFilters'
      - description: Returns sessions that are created after the specified date and time.
        in: query
        name: createdAfterFilter
        schema:
          format: date-time
          type: string
        x-veeam-spec:
          $ref: '#/components/schemas/SessionsFilters'
      - description: Returns sessions that are created before the specified date and time.
        in: query
        name: createdBeforeFilter
        schema:
          format: date-time
          type: string
        x-veeam-spec:
          $ref: '#/components/schemas/SessionsFilters'
      - description: Returns sessions that are finished after the specified date and time.
        in: query
        name: endedAfterFilter
        schema:
          format: date-time
          type: string
        x-veeam-spec:
          $ref: '#/components/schemas/SessionsFilters'
      - description: Returns sessions that are finished before the specified date and time.
        in: query
        name: endedBeforeFilter
        schema:
          format: date-time
          type: string
        x-veeam-spec:
          $ref: '#/components/schemas/SessionsFilters'
      - description: Filters sessions by session type.
        in: query
        name: typeFilter
        schema:
          $ref: '#/components/schemas/ESessionType'
        x-veeam-spec:
          $ref: '#/components/schemas/SessionsFilters'
      - description: Filters sessions by session state.
        in: query
        name: stateFilter
        schema:
          $ref: '#/components/schemas/ESessionState'
        x-veeam-spec:
          $ref: '#/components/schemas/SessionsFilters'
      - description: Filters sessions by session result.
        in: query
        name: resultFilter
        schema:
          $ref: '#/components/schemas/ESessionResult'
        x-veeam-spec:
          $ref: '#/components/schemas/SessionsFilters'
      - description: Filters sessions by job ID.
        in: query
        name: jobIdFilter
        schema:
          format: uuid
          type: string
        x-veeam-spec:
          $ref: '#/components/schemas/SessionsFilters'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionsResult'
          description: OK
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Get All Automation Sessions
      tags:
      - Automation
      x-veeam-authorize:
        claims:
        - ViewSessions
  /api/v1/automation/sessions/{id}:
    get:
      description: The HTTP GET request to the `/api/v1/automation/sessions/{id}` path allows you to get an automation session that has the specified `id`.
      operationId: GetAutomationSession
      parameters:
      - description: ID of the session.
        in: path
        name: id
        required: true
        schema:
          format: uuid
          type: string
      - $ref: '#/components/parameters/apiVersionParam'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionModel'
          description: OK
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Get Automation Session
      tags:
      - Automation
      x-veeam-authorize:
        claims:
        - ViewSessions
  /api/v1/automation/sessions/{id}/logs:
    get:
      description: The HTTP GET request to the `/api/v1/automation/sessions/{id}/logs` path allows you to get an array of log records of an automation session that has the specified `id`.
      operationId: GetAutomationSessionLogs
      parameters:
      - description: ID of the session.
        in: path
        name: id
        required: true
        schema:
          format: uuid
          type: string
      - $ref: '#/components/parameters/apiVersionParam'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionLogResult'
          description: OK
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Get Automation Session Logs
      tags:
      - Automation
      x-veeam-authorize:
        claims:
        - ViewSessions
  /api/v1/automation/sessions/{id}/stop:
    post:
      description: The HTTP POST request to the `/api/v1/automation/sessions/{id}/stop` path allows you to stop an automation session that has the specified `id`.
      operationId: StopAutomationSession
      parameters:
      - $ref: '#/components/parameters/apiVersionParam'
      - description: ID of the session.
        in: path
        name: id
        required: true
        schema:
          format: uuid
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmptySuccessResponse'
          description: OK
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Stop Automation Session
      tags:
      - Automation
      x-veeam-authorize:
        claims:
        - StopSessions
components:
  schemas:
    VmwareObjectDiskModel:
      properties:
        disks:
          description: Array of disks.
          items:
            description: ID of the disk.
            type: string
          type: array
        disksToProcess:
          $ref: '#/components/schemas/EVmwareDisksTypeToProcess'
        removeFromVMConfiguration:
          description: If *true*, the disk is removed from VM configuration.
          type: boolean
        vmObject:
          $ref: '#/components/schemas/VmwareObjectModel'
      required:
      - disks
      - disksToProcess
      - vmObject
      type: object
    LinuxLocalStorageImportSpec:
      properties:
        description:
          description: Description of the backup repository.
          type: string
        hostName:
          description: ID of the server that is used as a backup repository.
          type: string
        mountServer:
          $ref: '#/components/schemas/MountServerSettingsImportSpec'
        name:
          description: Name of the backup repository.
          type: string
        repository:
          $ref: '#/components/schemas/LinuxLocalRepositorySettingsModel'
        tag:
          description: Tag that identifies the backup repository.
          type: string
        type:
          $ref: '#/components/schemas/ERepositoryType'
      required:
      - description
      - hostName
      - kind
      - mountServer
      - name
      - repository
      - tag
      - type
      type: object
    BackupLinuxScriptModel:
      description: Paths to pre-freeze and post-thaw scripts for Linux VMs.
      properties:
        postThawScript:
          description: Path to a post-thaw script.
          type: string
        preFreezeScript:
          description: Path to a pre-freeze script.
          type: string
      type: object
    GFSPolicySettingsWeeklyModel:
      description: Weekly GFS retention policy.
      properties:
        desiredTime:
          $ref: '#/components/schemas/EDayOfWeek'
        isEnabled:
          description: If *true*, the weekly GFS retention policy is enabled.
          type: boolean
        keepForNumberOfWeeks:
          description: Number of weeks to keep full backups for archival purposes. Possible values are from 1 through 9999.
          type: integer
      required:
      - isEnabled
      type: object
    JobScriptsSettingsModel:
      description: Script settings.
      properties:
        dayOfWeek:
          description: Days of the week when the scripts must be executed.
          items:
            $ref: '#/components/schemas/EDayOfWeek'
          type: array
          uniqueItems: true
        periodicityType:
          $ref: '#/components/schemas/EScriptPeriodicityType'
        postCommand:
          $ref: '#/components/schemas/ScriptCommand'
        preCommand:
          $ref: '#/components/schemas/ScriptCommand'
        runScriptEvery:
          description: Number of the backup job session after which the scripts must be executed.
          type: integer
      type: object
    ERepositoryConnectionType:
      description: Repository connection type (direct or through a gateway server).
      enum:
      - Direct
      - SelectedGateway
      type: string
    GuestOsCredentialsPerMachineImportModel:
      properties:
        linuxCreds:
          $ref: '#/components/schemas/CredentialsImportModel'
        vmObject:
          $ref: '#/components/schemas/VmwareObjectModel'
        windowsCreds:
          $ref: '#/components/schemas/CredentialsImportModel'
      required:
      - vmObject
      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
    EVmwareDisksTypeToProcess:
      description: Type of disk selection.
      enum:
      - AllDisks
      - SystemOnly
      - SelectedDisks
      type: string
    EDayNumberInMonth:
      description: Week day number in the month.
      enum:
      - First
      - Second
      - Third
      - Fourth
      - Last
      - OnDay
      type: string
    BackupApplicationSettingsImportModel:
      properties:
        exclusions:
          $ref: '#/components/schemas/BackupFSExclusionsModel'
        oracle:
          $ref: '#/components/schemas/BackupOracleSettingsImportModel'
        scripts:
          $ref: '#/components/schemas/BackupScriptSettingsModel'
        sql:
          $ref: '#/components/schemas/BackupSQLSettingsImportModel'
        transactionLogs:
          $ref: '#/components/schemas/ETransactionLogsSettings'
        usePersistentGuestAgent:
          description: If *true*, persistent guest agent is used.
          type: boolean
        vmObject:
          $ref: '#/components/schemas/VmwareObjectModel'
        vss:
          $ref: '#/components/schemas/EApplicationSettingsVSS'
      required:
      - vmObject
      - vss
      type: object
    NetworkRepositorySettingsModel:
      description: Repository settings.
      properties:
        advancedSettings:
          $ref: '#/components/schemas/RepositoryAdvancedSettingsModel'
        enableReadWriteLimit:
          description: If *true*, reading and writing speed is limited.
          type: boolean
        enableTaskLimit:
          description: If *true*, the maximum number of concurrent tasks is limited.
          type: boolean
        maxTaskCount:
          description: Maximum number of concurrent tasks.
          type: integer
        readWriteRate:
          description: Maximum rate that restricts the total speed of reading and writing data to the backup repository disk.
          type: integer
      type: object
    AmazonS3GlacierStorageImportSpec:
      properties:
        account:
          $ref: '#/components/schemas/AmazonS3StorageAccountImportModel'
        bucket:
          $ref: '#/components/schemas/AmazonS3GlacierStorageBucketModel'
        description:
          description: Description of the object storage repository.
          type: string
        name:
          description: Name of the object storage repository.
          type: string
        proxyAppliance:
          $ref: '#/components/schemas/AmazonS3StorageProxyApplianceModel'
        tag:
          description: Tag that identifies the object storage repository.
          type: string
        type:
          $ref: '#/components/schemas/ERepositoryType'
      required:
      - name
      - description
      - tag
      - type
      - account
      - bucket
      - mountServer
      type: object
    SessionsResult:
      properties:
        data:
          description: Array of sessions.
          items:
            $ref: '#/components/schemas/SessionModel'
          type: array
        pagination:
          $ref: '#/components/schemas/PaginationResult'
      required:
      - data
      - pagination
      type: object
    GFSPolicySettingsYearlyModel:
      description: Yearly GFS retention policy.
      properties:
        desiredTime:
          $ref: '#/components/schemas/EMonth'
        isEnabled:
          description: If *true*, the yearly GFS retention policy is enabled.
          type: boolean
        keepForNumberOfYears:
          description: Number of years to keep full backups for archival purposes. Possible values are from 1 through 999.
          type: integer
      required:
      - isEnabled
      type: object
    AzureArc

# --- truncated at 32 KB (134 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/veeam/refs/heads/main/openapi/veeam-automation-api-openapi.yml