This is an archive version of the document. To get the most up-to-date information, see the current version.

Add S3 Repository

You can add an S3 repository to the Veeam Backup for AWS configuration database.

Request

To add an S3 repository, send the HTTP POST request to the /repositories endpoint.

HTTP Request

POST https://<hostname>:<port>/api/v1/repositories

Request Headers

The request contains the following headers.

Header

Required/Optional

Value

Description

Authorization

Required

Bearer <Access-Token>

Authenticates a client who sends the request to the server. Must contain the access token for the current logon session in the Bearer <Access-Token> format.

x-api-version

Required

1.0-rev0

Specifies the current revision of the Veeam Backup for AWS REST API.

Content-Type

Required

application/json

Identifies a media type that is used in the body of the request.

Accept

Optional

  • application/json
  • application/problem+json

Specifies a media type of representation that is required in the response message. If the requested type is not supported, the server will return the response in the application/json media type.

Request Body

To add the S3 repository, send the following parameters in the request body.

Parameter

Type

Description

name

string

Specifies a name of the S3 repository.

description

string

Specifies a description of the S3 repository.

amazonAccountId

string($uuid)

Specifies the system ID assigned in the Veeam Backup for AWS REST API to an IAM role used to connect to the S3 repository.

amazonBucketId

string

Specifies the folder name in the selected Amazon S3 bucket used to store EC2 instance backups.

amazonStorageFolder

string($uuid)

Specifies the system ID assigned to an Amazon S3 bucket where the S3 repository is located.

password

string

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

hint

string

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

enableEncryption

boolean

Defines whether to enable encryption for backup files stored in the created S3 repository.

Note

Before you add an S3 repository, you can check whether settings you plan to specify for it are valid. For more information, see Validate S3 Repository Settings.

Set the parameter values in the following format:

{

 "name": "string",

 "description": "string",

 "amazonAccountId": "string($uuid)",

 "amazonBucketId": "string($uuid)",

 "amazonStorageFolder": "string",

 "password": "string",

 "hint": "string",

 "enableEncryption": true/false

}

Response

The server returns the following response to the client.

Response Code

A successfully completed operation returns a response code 201 (Created).

Response Headers

The response to this request contains the following headers. The response may also include additional standard HTTP headers.

Header

Value

Description

Content-Length

integer

Identifies the length of the response body message, in bytes.

Content-Type

  • application/json
  • application/problem+json

Identifies the media type of the response body message.

Response Body

In the response body, Veeam Backup for AWS returns a representation of the added S3 repository. The Repository schema is used for the resource representation.

Add S3 RepositoryExample

The following request adds an S3 repository with encryption enabled to the Veeam Backup for AWS configuration database.

Request:

POST https://135.169.170.192:11005/api/v1/repositories

 

Request Header:

Authorization: Bearer <Access-Token>

x-api-version: 1.0-rev0

Content-Type: application/json

 

Request Body:

{

 "name": "Repository 03",

 "description": "Repository for Dept-02",

 "amazonAccountId": "757efdd7-128e-470c-90b6-1b274dbf502f",

 "amazonBucketId": "0dab1d93-ac17-482b-88a7-a56bebbb2b2e",

 "amazonStorageFolder": "dept-2-ls",

 "password": "password123",

 "hint": "TWA",

 "enableEncryption": true

}

 

Response:

201

 

Response Body:

{

 "id": "c7aef911-cd83-4e9a-924a-e9635b0a8983",

 "name": "Repository 03",

 "description": "Repository for Dept-02",

 "amazonAccountId": "757efdd7-128e-470c-90b6-1b274dbf502f",

 "amazonStorageFolder": "dept-2-ls",

 "amazonBucketId": "0dab1d93-ac17-482b-88a7-a56bebbb2b2e",

 "hint": "TWA",

 "enableEncryption": true,

 "_embedded": {

   "amazonAccount": "S3 Access Role",

   "amazonAccountLink": {

     "method": "GET",

     "rel": "AmazonAccount",

     "href": "https://135.169.170.192:11005/api/v1/accounts/amazon/757efdd7-128e-470c-90b6-1b274dbf502f"

   },

   "region": "us-east-1",

   "regionLink": {

     "method": "GET",

     "rel": "Region",

     "href": "https://135.169.170.192:11005/api/v1/cloudInfrastructure/regions/a78f0156-7e78-4585-86ec-5cc590409def"

   },

   "bucket": "dept-1-1",

   "bucketLink": {

     "method": "GET",

     "rel": "Bucket",

     "href": "https://135.169.170.192:11005/api/v1/cloudInfrastructure/buckets/0dab1d93-ac17-482b-88a7-a56bebbb2b2e"

   }

 },

 "_links": [

   {

     "method": "GET",

     "rel": "self",

     "href": "https://135.169.170.192:11005/api/v1/repositories/c7aef911-cd83-4e9a-924a-e9635b0a8983"

   },

   {

     "method": "PUT",

     "rel": "update",

     "href": "https://135.169.170.192:11005/api/v1/repositories/c7aef911-cd83-4e9a-924a-e9635b0a8983"

   },

   {

     "method": "DELETE",

     "rel": "delete",

     "href": "https://135.169.170.192:11005/api/v1/repositories/c7aef911-cd83-4e9a-924a-e9635b0a8983"

   },

   {

     "method": "POST",

     "rel": "rescan",

     "href": "https://135.169.170.192:11005/api/v1/repositories/c7aef911-cd83-4e9a-924a-e9635b0a8983/rescan"

   }

 ]

}