Veeam Workers API
The Workers API from Veeam — 3 operation(s) for workers.
The Workers API from Veeam — 3 operation(s) for workers.
openapi: 3.0.0
info:
version: 1.0-rev0
title: Veeam Backup for AWS public API 1.0 Agents Workers API
description: The Agents section defines paths and operations for managing recovery tokens used for bare metal recovery.
security:
- Bearer: []
tags:
- name: Workers
paths:
/api/v1/settings/serviceAccount:
get:
x-veeam-authorize:
roles:
- Portal Administrator
tags:
- Workers
operationId: GetServiceAccountSettings
parameters:
- $ref: '#/components/parameters/apiVersionParam'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceAccountSettings'
application/problem+json:
schema:
$ref: '#/components/schemas/ServiceAccountSettings'
'401':
description: Unauthorized. The authorization header has been expected but not found (or found but is expired).
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'403':
description: Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Not Found. One or more resources specified in the request could not be found in the specified resource collection.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'500':
description: Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
put:
x-veeam-authorize:
roles:
- Portal Administrator
tags:
- Workers
operationId: UpdateServiceAccountSettings
parameters:
- $ref: '#/components/parameters/apiVersionParam'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceAccountSettings'
required: true
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceAccountSettings'
application/problem+json:
schema:
$ref: '#/components/schemas/ServiceAccountSettings'
'400':
description: Bad Request. The request body is malformed, incomplete or otherwise invalid.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Unauthorized. The authorization header has been expected but not found (or found but is expired).
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'403':
description: Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Not Found. One or more resources specified in the request could not be found in the specified resource collection.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'500':
description: Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/settings/regions:
get:
x-veeam-authorize:
roles:
- Portal Administrator
tags:
- Workers
operationId: GetAllRegionSettings
parameters:
- name: offset
in: query
required: false
x-veeam-spec:
$ref: '#/components/schemas/RegionSettingsFilters'
schema:
type: integer
format: int32
- name: limit
in: query
required: false
x-veeam-spec:
$ref: '#/components/schemas/RegionSettingsFilters'
schema:
type: integer
format: int32
- $ref: '#/components/parameters/apiVersionParam'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/RegionSettingsPage'
application/problem+json:
schema:
$ref: '#/components/schemas/RegionSettingsPage'
'400':
description: Bad Request. The request body is malformed, incomplete or otherwise invalid.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Unauthorized. The authorization header has been expected but not found (or found but is expired).
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'403':
description: Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'500':
description: Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
post:
x-veeam-authorize:
roles:
- Portal Administrator
tags:
- Workers
operationId: CreateRegionSettings
parameters:
- $ref: '#/components/parameters/apiVersionParam'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RegionSettingsSpec'
required: true
responses:
'201':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/RegionSettings'
application/problem+json:
schema:
$ref: '#/components/schemas/RegionSettings'
'400':
description: Bad Request. The request body is malformed, incomplete or otherwise invalid.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Unauthorized. The authorization header has been expected but not found (or found but is expired).
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'403':
description: Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'500':
description: Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/settings/regions/{regionId}:
get:
x-veeam-authorize:
roles:
- Portal Administrator
tags:
- Workers
operationId: GetRegionSettings
parameters:
- name: regionId
in: path
required: true
schema:
type: string
format: uuid
- $ref: '#/components/parameters/apiVersionParam'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/RegionSettings'
application/problem+json:
schema:
$ref: '#/components/schemas/RegionSettings'
'400':
description: Bad Request. The request body is malformed, incomplete or otherwise invalid.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Unauthorized. The authorization header has been expected but not found (or found but is expired).
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'403':
description: Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Not Found. One or more resources specified in the request could not be found in the specified resource collection.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'500':
description: Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
put:
x-veeam-authorize:
roles:
- Portal Administrator
tags:
- Workers
operationId: UpdateRegionSettings
parameters:
- name: regionId
in: path
required: true
schema:
type: string
format: uuid
- $ref: '#/components/parameters/apiVersionParam'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RegionSettings'
required: true
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/RegionSettings'
application/problem+json:
schema:
$ref: '#/components/schemas/RegionSettings'
'400':
description: Bad Request. The request body is malformed, incomplete or otherwise invalid.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Unauthorized. The authorization header has been expected but not found (or found but is expired).
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'403':
description: Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Not Found. One or more resources specified in the request could not be found in the specified resource collection.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'500':
description: Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
delete:
x-veeam-authorize:
roles:
- Portal Administrator
tags:
- Workers
operationId: DeleteRegionSettings
parameters:
- name: regionId
in: path
required: true
schema:
type: string
format: uuid
- $ref: '#/components/parameters/apiVersionParam'
responses:
'204':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/EmptySuccessResponse'
application/problem+json:
schema:
$ref: '#/components/schemas/EmptySuccessResponse'
'400':
description: Bad Request. The request body is malformed, incomplete or otherwise invalid.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Unauthorized. The authorization header has been expected but not found (or found but is expired).
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'403':
description: Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Not Found. One or more resources specified in the request could not be found in the specified resource collection.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
'500':
description: Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
components:
schemas:
RegionSettings:
required:
- regionId
- cloudNetworkId
- cloudSubnetworkId
- cloudSecurityGroupId
type: object
properties:
regionId:
format: uuid
type: string
regionName:
type: string
parentReiognId:
type: string
format: uuid
parentRegionName:
type: string
cloudNetworkId:
type: string
cloudNetworkName:
type: string
cloudSubnetworkId:
type: string
cloudSubnetworkName:
type: string
cloudSecurityGroupId:
type: string
cloudSecurityGroupName:
type: string
_links:
type: array
uniqueItems: false
items:
$ref: '#/components/schemas/Link'
Link:
required:
- rel
- href
- method
type: object
properties:
rel:
type: string
href:
type: string
method:
type: string
enum:
- GET
- POST
- PUT
- DELETE
RegionSettingsFilters:
type: object
properties:
offset:
type: integer
format: int32
limit:
type: integer
format: int32
RegionTypes:
enum:
- Global
- Emulator
- Government
- China
type: string
ServiceAccountSettings:
required:
- serviceAmazonAccountId
type: object
properties:
serviceAmazonAccountId:
format: uuid
type: string
serviceAmazonAccountName:
type: string
serviceAmazonAccountRegionType:
$ref: '#/components/schemas/RegionTypes'
serviceRegion:
type: string
_links:
type: array
uniqueItems: false
items:
$ref: '#/components/schemas/Link'
EmptySuccessResponse:
description: Empty succes response ( 200, 201, 204 )
type: object
RegionSettingsSpec:
required:
- availableZoneId
- cloudNetworkId
- cloudSubnetworkId
- cloudSecurityGroupId
type: object
properties:
availableZoneId:
format: uuid
type: string
cloudNetworkId:
type: string
cloudSubnetworkId:
type: string
cloudSecurityGroupId:
type: string
RegionSettingsPage:
required:
- totalCount
- results
type: object
properties:
totalCount:
format: int32
type: integer
results:
uniqueItems: false
type: array
items:
$ref: '#/components/schemas/RegionSettings'
_links:
type: array
uniqueItems: false
items:
$ref: '#/components/schemas/Link'
Error:
description: ''
required:
- type
- title
- status
- errorCode
type: object
properties:
type:
type: string
format: uri
description: An URI reference that identifies the problem type. When dereferenced, it SHOULD provide human-readable documentation for the problem type (e.g. using HTML).
title:
type: string
description: A short, summary of the problem type. Written in English and readable for engineers (usually not suited for non technical stakeholders and not localized)
status:
type: integer
format: int32
description: The HTTP status code generated by the origin server for this occurrence of the problem.
minimum: 400
maximum: 600
exclusiveMaximum: true
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
details:
description: The error message contains a generic description of the error condition in English. It is intended for a human audience
type: string
instance:
description: ID of the object that is involved in the error (or empty)
type: string
format: uri
data:
type: object
description: Error payload
additionalProperties:
type: object
parameters:
apiVersionParam:
name: x-api-version
in: header
required: true
schema:
type: string
default: 1.0-rev0
securitySchemes:
Bearer:
name: Authorization
in: header
type: apiKey
description: Bearer \<JWT\>