Repositories

The /repositories resource collection represents backup repositories added to the Veeam Backup for Google Cloud configuration database.

Get Collection of Backup Repositories

The HTTP GET request to the /repositories endpoint retrieves a list of all repositories added to the Veeam Backup for Google Cloud configuration database.

SecurityBearer
Request
query Parameters
filter
string

Returns only specific items of a resource collection in the response. To learn how to use the filter parameter, see the Veeam Backup for Google Cloud REST API Reference, section Filter Parameter.

orderby
string

Specifies the order of items in the response. For more information, see the Veeam Backup for Google Cloud REST API Reference Overview, section Orderby Parameter.

offset
integer <int32>

Specifies the first N items of a resource collection that will be excluded from the response.

limit
integer <int32>

Specifies the maximum number of items of a resource collection that will be returned in the response.

header Parameters
x-api-version
required
string
Default: 1.4-rev0

Specifies the current revision of the Veeam Backup for Google Cloud REST API.

Responses
200

OK

400

Bad Request. The request body is malformed, incomplete or otherwise invalid

401

Unauthorized. The authorization header has been expected but not found (or found but is expired).

403

Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.

500

Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.

get/api/v1/repositories
Request samples
Response samples
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

Add Backup Repository

The HTTP POST request to the /repositories endpoint adds a backup repository to the Veeam Backup for Google Cloud configuration database.

SecurityBearer
Request
header Parameters
x-api-version
required
string
Default: 1.4-rev0

Specifies the current revision of the Veeam Backup for Google Cloud REST API.

Request Body schema: application/json
required
name
required
string

Specifies a name for a repository.

projectName
required
string

Specifies a project where the repository will belong.

bucketName
required
string

Specifies a storage bucket that will be used as a target location for image-level backups.

folderName
required
string

Specifies a folder that will be used to group backup files stored in the bucket.

encryptionEnabled
required
boolean

Defines whether encryption is enabled for backup files stored in the created backup repository.

hmacKeyAccessId
required
string

Specifies the access ID of an HMAC key used to authenticate requests to the backup repository.

description
string

Specifies a description for the repository.

serviceAccountId
string <uuid>

Specifies the system ID assigned in the Veeam Backup for Google Cloud REST API to a service account that will be used to access the specified project.

storageClass
string (EStorageClass)

Storage class selected for the repository.

Enum: "STANDARD" "NEARLINE" "ARCHIVE"
password
string

[Applies only if encryption is enabled] Specifies password that Veeam Backup for Google Cloud will use for data encryption.

passwordHint
string

[Applies only if encryption is enabled] Specifies hint for the password.

Responses
200

OK

400

Bad Request. The request body is malformed, incomplete or otherwise invalid

401

Unauthorized. The authorization header has been expected but not found (or found but is expired).

403

Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.

500

Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.

post/api/v1/repositories
Request samples
application/json
{
  • "name": "string",
  • "description": "string",
  • "projectName": "string",
  • "serviceAccountId": "a814cf67-aaac-43ae-acb4-8d34e82a4b4c",
  • "bucketName": "string",
  • "folderName": "string",
  • "storageClass": "STANDARD",
  • "password": "string",
  • "passwordHint": "string",
  • "encryptionEnabled": true,
  • "hmacKeyAccessId": "string"
}
Response samples
application/json
{
  • "sessionIds": [
    ],
  • "issues": [
    ]
}

Modify Backup Repository Settings

The HTTP PUT request to the /repositories/{repositoryId} endpoint updates settings of a backup repository with the specified ID.

SecurityBearer
Request
path Parameters
repositoryId
required
string <uuid>

System ID assigned in the Veeam Backup for Google Cloud REST API to a backup repository.

header Parameters
x-api-version
required
string
Default: 1.4-rev0

Specifies the current revision of the Veeam Backup for Google Cloud REST API.

Request Body schema: application/json
required
name
required
string

Specifies a new name for the repository.

encryptionEnabled
required
boolean

Defines whether encryption is enabled for backup files stored in the backup repository.

hmacKeyAccessId
required
string

Specifies the access ID of an HMAC key used to authenticate requests to the backup repository.

description
string

Specifies a new description for the repository.

password
string

[Applies only if encryption is enabled] Specifies a password that Veeam Backup for Google Cloud will use for data encryption.

passwordHint
string

[Applies only if encryption is enabled] Specifies a hint for the specified password.

serviceAccountId
string <uuid>

Specifies the system ID assigned in the Veeam Backup for Google Cloud REST API to a service account used to access the project where the backup repository belongs.

Responses
200

OK

400

Bad Request. The request body is malformed, incomplete or otherwise invalid

401

Unauthorized. The authorization header has been expected but not found (or found but is expired).

403

Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.

500

Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.

put/api/v1/repositories/{repositoryId}
Request samples
application/json
{
  • "name": "string",
  • "description": "string",
  • "password": "string",
  • "passwordHint": "string",
  • "encryptionEnabled": true,
  • "hmacKeyAccessId": "string",
  • "serviceAccountId": "a814cf67-aaac-43ae-acb4-8d34e82a4b4c"
}
Response samples
application/json
{
  • "sessionIds": [
    ],
  • "issues": [
    ]
}

Get Backup Repository Data

The HTTP GET request to the /repositories/{repositoryId} endpoint retrieves information on a backup repository with the specified ID.

SecurityBearer
Request
path Parameters
repositoryId
required
string <uuid>

System ID assigned in the Veeam Backup for Google Cloud REST API to a backup repository.

header Parameters
x-api-version
required
string
Default: 1.4-rev0

Specifies the current revision of the Veeam Backup for Google Cloud REST API.

Responses
200

OK

400

Bad Request. The request body is malformed, incomplete or otherwise invalid

401

Unauthorized. The authorization header has been expected but not found (or found but is expired).

403

Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.

404

Not Found. One or more resources specified in the request could not be found in the specified resource collection.

500

Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.

get/api/v1/repositories/{repositoryId}
Request samples
Response samples
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "description": "string",
  • "bucketName": "string",
  • "folderName": "string",
  • "storageClass": "STANDARD",
  • "projectId": "string",
  • "serviceAccountId": "a814cf67-aaac-43ae-acb4-8d34e82a4b4c",
  • "passwordHint": "string",
  • "encryptionEnabled": true,
  • "hmacKeyAccessId": "string"
}

Remove Backup Repository

The HTTP DELETE request to the /repositories/{repositoryId} endpoint removes a backup repository with the specified ID from the Veeam Backup for Google Cloud configuration database.

SecurityBearer
Request
path Parameters
repositoryId
required
string <uuid>

System ID assigned in the Veeam Backup for Google Cloud REST API to a backup repository.

header Parameters
x-api-version
required
string
Default: 1.4-rev0

Specifies the current revision of the Veeam Backup for Google Cloud REST API.

Responses
204

No Content

400

Bad Request. The request body is malformed, incomplete or otherwise invalid

401

Unauthorized. The authorization header has been expected but not found (or found but is expired).

403

Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.

404

Not Found. One or more resources specified in the request could not be found in the specified resource collection.

500

Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.

delete/api/v1/repositories/{repositoryId}
Request samples
Response samples
application/json
{
  • "sessionIds": [
    ],
  • "issues": [
    ]
}

Infrastructure Rescan for Backup Repository

The HTTP POST request to the /repositories/{repositoryId}/rescan endpoint runs the infrastructure rescanning operation for a backup repository with the specified ID. The rescanning operation searches for backup files already existing on the repository and adds the files to the Veeam Backup for Google Cloud database.

SecurityBearer
Request
path Parameters
repositoryId
required
string <uuid>

System ID assigned in the Veeam Backup for Google Cloud REST API to a backup repository.

header Parameters
x-api-version
required
string
Default: 1.4-rev0

Specifies the current revision of the Veeam Backup for Google Cloud REST API.

Responses
200

OK

400

Bad Request. The request body is malformed, incomplete or otherwise invalid

401

Unauthorized. The authorization header has been expected but not found (or found but is expired).

403

Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.

404

Not Found. One or more resources specified in the request could not be found in the specified resource collection.

429

Too Many Requests. The user has sent too many requests in a given amount of time.

500

Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.

post/api/v1/repositories/{repositoryId}/rescan
Request samples
Response samples
application/json
{
  • "sessionIds": [
    ],
  • "issues": [
    ]
}

Document updated 11/19/2025

Page content applies to build 7.0.0.47