Navigation

Create One S3 Blockstore Configuration

Configures one new s3 blockstore.

Base URL: https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0/admin/backup

Resource

POST /snapshot/s3Configs

Request Path Parameters

This endpoint does not use HTTP request path parameters.

Request Query Parameters

This endpoint may use any of the HTTP request query parameters available to all Ops Manager API resources. These are all optional.

Name Type Description Default
pretty boolean Indicates whether the response body should be in a prettyprint format. false
envelope boolean

Indicates whether or not to wrap the response in an envelope.

Some API clients cannot access the HTTP response headers or status code. To remediate this, set envelope=true in the query.

For endpoints that return one result, the response body includes:

status
HTTP response code
envelope
The expected response body
false

Request Body Parameters

Name Type Description
assignmentEnabled boolean Optional. Flag indicating whether this data store can be assigned backup jobs.
awsAccessKey string The AWS Access Key ID that can access the S3 bucket specified in <s3BucketName>.
awsSecretKey string The AWS Secret Access Key that can access the S3 bucket specified in <s3BucketName>.
encryptedCredentials boolean Optional. Flag indicating whether the username and password for this S3 blockstore were encrypted using the credentialstool.
id string The unique name that labels this S3 Snapshot Store.
labels array of strings

Optional. Array of tags to manage which backup jobs Ops Manager can assign to which S3 blockstores.

Setting these tags limits which backup jobs this S3 blockstore can process. If omitted, this S3 blockstore can only process backup jobs for projects that do not use labels to filter their jobs.

loadFactor number

Optional. A positive, non-zero integer that expresses how much backup work this snapshot store should perform compared to another snapshot store. This option is needed only if more than one snapshot store is in use.

See also

To learn more about Load Factor, see Edit an Existing S3 Blockstore

pathStyleAccessEnabled boolean

Optional. Flag indicating whether this S3 blockstore uses a path-style URL endpoint (s3.amazonaws.com/<bucket>) instead of a virtual-host-style URL endpoint (<bucket>.s3.amazonaws.com).

To review the S3 bucket URL conventions, see the AWS S3 documentation

s3BucketEndpoint string The URL used to access this AWS S3 or S3-compatible bucket.
s3BucketName string The name of the S3 bucket that hosts the S3 blockstore.
sseEnabled boolean
Optional. Flag indicating whether this S3 blockstore
enables server-side encryption.
uri string A comma-separated list of hosts in the <hostname:port> format that can be used to access this S3 blockstore.
ssl boolean Optional. Flag indicating whether this S3 blockstore only accepts connections encrypted using TLS.
writeConcern string

Optional. The write concern used for this blockstore.

The accepted values for this option are:
  • ACKNOWLEDGED
  • W2
  • JOURNALED
  • MAJORITY

See also

To learn about write acknowledgement levels in MongoDB, see Write Concern

Response

Name Type Description
assignmentEnabled boolean Flag indicating whether this data store can be assigned backup jobs.
awsAccessKey string The AWS Access Key ID that can access the S3 bucket specified in <s3BucketName>.
awsSecretKey string The AWS Secret Access Key that can access the S3 bucket specified in <s3BucketName>.
encryptedCredentials boolean Flag indicating whether the username and password for this S3 blockstore were encrypted using the credentialstool.
id string The unique name that labels this S3 blockstore.
labels array of strings Array of tags to manage which backup jobs Ops Manager can assign to which S3 blockstores.
links object array One or more links to sub-resources and/or related resources. The relations between URLs are explained in the Web Linking Specification
loadFactor number

A positive, non-zero integer that expresses how much backup work this snapshot store should perform compared to another snapshot store. This option is needed only if more than one snapshot store is in use.

See also

To learn more about Load Factor, see Edit an Existing S3 Blockstore

pathStyleAccessEnabled boolean Optional. Flag indicating whether this S3 blockstore uses a path-style URL endpoint (s3.amazonaws.com/<bucket>) instead of a virtual-host-style URL endpoint (<bucket>.s3.amazonaws.com).
s3BucketEndpoint string The URL used to access this AWS S3 or S3-compatible bucket.
s3BucketName string The name of the S3 bucket that hosts the S3 blockstore.
sseEnabled boolean
Optional. Flag indicating whether this S3 blockstore
enables server-side encryption.
uri string A comma-separated list of hosts in the <hostname:port> format that can be used to access this S3 blockstore.
ssl boolean Flag indicating whether this S3 blockstore only accepts connections encrypted using TLS.
writeConcern string

The write concern used for this blockstore.

The accepted values for this option are:

  • ACKNOWLEDGED
  • W2
  • JOURNALED
  • MAJORITY

See also

To learn about write acknowledgement levels in MongoDB, see Write Concern

Example Request

curl --user '{USERNAME}:{APIKEY}' --digest \
 --header 'Accept: application/json' \
 --header 'Content-Type: application/json' \
 --include \
 --request POST 'https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0/admin/backup/snapshot/s3Configs?pretty=true' \
 --data '{
   "id": "{S3-BLOCKSTORE-CONFIG-ID}",
   "assignmentEnabled": true,
   "awsAccessKey": "access",
   "awsSecretKey": "secret",
   "encryptedCredentials": false,
   "labels": [
     "l1",
     "l2"
   ],
   "loadFactor": 50,
   "s3BucketEndpoint": "http://example.com/backupbucket",
   "s3BucketName": "buck1",
   "uri": "mongodb://localhost:27017",
   "ssl": true,
   "writeConcern": "W2"
 }'

Example Response

Response Header

HTTP/1.1 401 Unauthorized
Content-Type: application/json;charset=ISO-8859-1
Date: {dateInUnixFormat}
WWW-Authenticate: Digest realm="MMS Public API", domain="", nonce="{nonce}", algorithm=MD5, op="auth", stale=false
Content-Length: {requestLengthInBytes}
Connection: keep-alive
HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Type: application/json
Strict-Transport-Security: max-age=300
Date: {dateInUnixFormat}
Connection: keep-alive
Content-Length: {requestLengthInBytes}

Response Body

{
  "assignmentEnabled": true,
  "awsAccessKey": "access",
  "awsSecretKey": "secret",
  "encryptedCredentials": false,
  "id": "id",
  "labels": [
    "l1",
    "l2"
  ],
  "links": [
    {
      "href": "https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0/admin/backup/snapshot/s3Configs",
      "rel": "self"
    }
  ],
  "loadFactor": 50,
  "s3BucketEndpoint": "http://example.com/backupbucket",
  "s3BucketName": "buck1",
  "uri": "mongodb://localhost:27017",
  "ssl": true,
  "writeConcern": "W2"
}