Couchbase Capella Management API (v4.0)

Download OpenAPI specification:

The Couchbase Capella Management API provides a set of REST APIs for creating and managing Capella instances. It enables users to perform operations such as creating new Capella instances, managing their configurations, and interacting with the Capella services. This API documentation specifies the endpoints, request and response formats, and authentication requirements for seamless integration with Couchbase Capella.

To access the Management API, you need an API key. To create an initial bootstrap API key you must use the Capella UI. Once you have created an initial bootstrap API key, you can use the Management API itself to create further API keys. To learn more, see Get Started with the Management API v4.0.

For a history of updates to the Management API, see Management API v4.0 Change Log.

API Base URL:

https://cloudapi.cloud.couchbase.com

Back to Management API v4.0 Documentation

Alert Integration

Couchbase Capella supports sending Capella alert notifications to the most common service like ServiceNow.

Create Alert Integration

Creates a new alert integration for a project.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

Request Body schema: application/json
kind
required
string
Enum: "webhook" "slack" "teams"

Type of alert integration.

name
required
string <= 1024 characters

Name of the alert integration (up to 1024 characters).

required
object or object or object (RequestConfig)

Responses

Request samples

Content type
application/json
{
  • "kind": "slack",
  • "name": "test alert 1",
  • "config": {
    }
}

Response samples

Content type
application/json
{
  • "id": "ffffffff-aaaa-1414-eeee-000000000000"
}

List Alert Integrations

Lists all the alert integrations under the project.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Organization Member
  • Project Owner
  • Project Manager
  • Project Viewer

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

query Parameters
page
integer

Sets the page you would like to view.

perPage
integer

Sets the number of results you would like to have on each page.

sortBy
Array of strings
Example: sortBy=name

Sets the order of how you would like to sort the results and the key you would like to order by. Valid fields to sort the results are: id, name.

sortDirection
string
Enum: "asc" "desc"
Example: sortDirection=asc

The order in which the items will be sorted.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "cursor": {}
}

List Channels for an Alert Integration

Lists Slack or Teams channels available to a bot token or existing alert integration, for populating channel mappings.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

Request Body schema: application/json
One of
botToken
required
string

Slack bot token (starts with xoxb-). Mutually exclusive with integrationId.

integrationId
string <uuid>

ID of an existing Slack or Teams alert integration. Mutually exclusive with botToken.

Responses

Request samples

Content type
application/json
{
  • "botToken": "xoxb-1234567890-1234567890123-AbCdEfGhIjKlMnOpQrStUvWx",
  • "integrationId": "497a18ca-284e-40c0-985d-f72be35d468e"
}

Response samples

Content type
application/json
{
  • "channels": [
    ]
}

Get Alert Integration

Fetches the details of the given alert integration.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Organization Member
  • Project Owner
  • Project Manager
  • Project Viewer

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

alertIntegrationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the alert integration.

Responses

Response samples

Content type
application/json
{
  • "id": "ffffffff-aaaa-1414-eeee-000000000000",
  • "name": "test alert 1",
  • "tenantId": "ffffffff-aaaa-1414-eeee-000000000000",
  • "projectId": "ffffffff-aaaa-1414-eeee-000000000000",
  • "kind": "teams",
  • "configKey": "ffffffff-aaaa-1414-eeee-000000000000-alert-integration",
  • "status": "healthy",
  • "enabled": false,
  • "config": {
    },
  • "audit": {
    }
}

Update Alert Integration

Update the details of the given alert integration.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

alertIntegrationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the alert integration.

Request Body schema: application/json
kind
string
Enum: "webhook" "slack" "teams"

Type of alert integration. If provided, must match the existing integration's kind. This field cannot be used to change the integration kind.

name
string or null <= 1024 characters

Name of the alert integration (up to 1024 characters).

enabled
boolean

Enables or disables the integration.

object or object or object (UpdateRequestConfig)

Responses

Request samples

Content type
application/json
{
  • "kind": "slack",
  • "name": "test alert 1",
  • "enabled": true,
  • "config": {
    }
}

Response samples

Content type
application/json
{
  • "id": "ffffffff-aaaa-1414-eeee-000000000000",
  • "name": "test alert 1",
  • "tenantId": "ffffffff-aaaa-1414-eeee-000000000000",
  • "projectId": "ffffffff-aaaa-1414-eeee-000000000000",
  • "kind": "teams",
  • "configKey": "ffffffff-aaaa-1414-eeee-000000000000-alert-integration",
  • "status": "healthy",
  • "enabled": false,
  • "config": {
    },
  • "audit": {
    }
}

Delete Alert Integration

Deletes an existing alert integration.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

alertIntegrationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the alert integration.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Test Alert Integration

Tests a new alert integration for a project.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

Request Body schema: application/json
One of
kind
required
string
Enum: "webhook" "slack" "teams"

Type of alert integration.

required
object or object or object

Responses

Request samples

Content type
application/json
{
  • "kind": "slack",
  • "config": {
    }
}

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Allowed CIDRs (App Services)

App Services only allow trusted IP addresses to connect and use its REST APIs. Each App Service has a configurable Allowed IP list that can include up to 75 entries. Each entry can be a single IP address or an IP address space. Any IP address you add to this list can have a user-specified expiration time for temporary access, or be permanent. Capella automatically denies any connection attempts to and from an IP not in the allowed IP list.

Delete App Service Allowed CIDR

Deletes an Allowed CIDR by ID on the specified App Service.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

allowedCidrId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the allowed CIDR.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

List Allowed CIDRs for an App Service

Lists the Allowed CIDRs for the specified App Service.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

query Parameters
page
integer

Sets the page you would like to view.

perPage
integer

Sets the number of results you would like to have on each page.

sortBy
Array of strings
Example: sortBy=id

Sets the order of how you would like to sort the results and the key you would like to order by. Valid fields to sort the results are: id, type, status.

sortDirection
string
Enum: "asc" "desc"
Example: sortDirection=asc

The order in which the items will be sorted.

Responses

Response samples

Content type
application/json
{}

Create Allowed CIDR

Adds a trusted CIDR to the specified App Service's list of allowed CIDRs.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Request Body schema: application/json
cidr
required
string

The trusted CIDR to allow network connections from. The example represents a single IP address (i.e. a subnet mask of 32).

comment
string

A short description of the allowed CIDR.

expiresAt
string <date-time>

An RFC3339 timestamp determining when the allowed CIDR should expire. If this field is empty/omitted then the allowed CIDR is permanent and will never automatically expire.

Responses

Request samples

Content type
application/json
{
  • "cidr": "6.60.28.100/32",
  • "comment": "Allows access from my local developer machine",
  • "expiresAt": "2023-05-14T21:49:58.465Z"
}

Response samples

Content type
application/json
{
  • "id": "ffffffff-aaaa-1414-eeee-000000000000"
}

Allowed CIDRs (Cluster)

Couchbase Capella only allows trusted IP addresses to connect to databases. Each database has a configurable Allowed IP list that can include up to 75 entries. Each entry can be a single IP address or an IP address space. Any IP address you add to this list can have a user-specified expiration time for temporary access, or be permanent. Capella automatically denies any connection attempts to and from an IP not in the allowed IP list.

Create Allowed CIDR

Adds a trusted CIDR to a cluster's list of allowed CIDRs.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Note that updating this resource is not supported; you must delete and recreate allowed CIDRs instead. As a result, ETags are also not supported for this resource.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

Request Body schema: application/json
cidr
required
string

The trusted CIDR to allow the database connections from. The example represents a single IP address (i.e. a subnet mask of 32).

comment
string

A short description of the allowed CIDR.

expiresAt
string <date-time>

An RFC3339 timestamp determining when the allowed CIDR should expire. If this field is empty/omitted then the allowed CIDR is permanent and will never automatically expire.

Responses

Request samples

Content type
application/json
{
  • "cidr": "6.60.28.100/32",
  • "comment": "Allows access from my local developer machine",
  • "expiresAt": "2023-05-14T21:49:58.465Z"
}

Response samples

Content type
application/json
{
  • "id": "ffffffff-aaaa-1414-eeee-000000000000"
}

List Allowed CIDRs

Lists all of the allowed CIDRs for a given cluster.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

query Parameters
page
integer

Sets the page you would like to view.

perPage
integer

Sets the number of results you would like to have on each page.

sortBy
Array of strings
Example: sortBy=id

Sets the order of how you would like to sort the results and the key you would like to order by. Valid fields to sort the results are: id, type, status.

sortDirection
string
Enum: "asc" "desc"
Example: sortDirection=asc

The order in which the items will be sorted.

Responses

Response samples

Content type
application/json
{}

get allowed CIDR

Fetches the details for the specified allowed CIDR.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

allowedCidrId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the allowed CIDR.

Responses

Response samples

Content type
application/json
{
  • "id": "ffffffff-aaaa-1414-eeee-000000000000",
  • "cidr": "1.23.45.67/32",
  • "comment": "Allows access from my local developer machine",
  • "expiresAt": "2023-05-14T21:49:58.465Z",
  • "status": "active",
  • "type": "temporary",
  • "audit": {
    }
}

Delete Allowed CIDR

Deletes the existing allowed CIDR.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

allowedCidrId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the allowed CIDR.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Api Keys

Couchbase Capella Management API uses a Bearer token mechanism for authentication; each call to the Management API has to be authenticated by API key.

Create API Key

Creates a new API key under an organization.

Organization Owners can create Organization and Project scoped API keys.

Project Owner and Project Creator can create project scoped keys.

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

Request Body schema: application/json
name
required
string (APIKeyName)

Name of the API key.

description
string (APIKeyDescription)
Default: ""

Description for the API key.

expiry
number <float> (APIKeyExpiry)
Default: 180

Expiry of the API key in number of days. Must be at least 0.01 days. If set to -1, the token will not expire.

allowedCIDRs
Array of strings (APIKeyAllowedCIDRs)
Default: ["0.0.0.0/0"]

List of inbound CIDRs for the API key. The system making a request must come from one of the allowed CIDRs.

organizationRoles
required
Array of strings (APIKeyOrganizationRoles)
Items Enum: "organizationOwner" "organizationMember" "projectCreator"
Array of objects (APIKeyResources)
Default: []

Resources are the resource level permissions associated with the API key.

To learn more about Organization Roles, see Organization Roles.

Responses

Request samples

Content type
application/json
Example
{
  • "name": "Organization Owner API Key",
  • "description": "Creates an API key with a Organization Owner role.",
  • "expiry": 720,
  • "allowedCIDRs": [
    ],
  • "organizationRoles": [
    ],
  • "resources": [ ]
}

Response samples

Content type
application/json
{
  • "id": "IS9DrRsw4KWFS72Zhbj4xmhllHvPcdCL",
  • "token": "QktxVUtFU1dKV1FlMmxwbzJBYXdnTVlRemFZdlRDZTg6eFh4dzU4JUYjekJVYWZPY3lqdUwwYkJoTjZSTmlzRWFIRHF0b1h4a08yazBpQjJ1bms1OW4yTUhAenRib3IhVQ=="
}

List API keys

Lists all the API keys under an organization.

Organization Owners can list all the API keys inside the Organization.

Organization Members and Project Creators can list all the Project scoped API key for which they are Project Owner.

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

query Parameters
page
integer

Sets the page you would like to view.

perPage
integer

Sets the number of results you would like to have on each page.

sortBy
Array of strings
Example: sortBy=name

Sets the order of how you would like to sort the results and the key you would like to order by. Valid fields to sort the results are: name, createdAt, expiry.

sortDirection
string
Enum: "asc" "desc"
Example: sortDirection=asc

The order in which the items will be sorted.

Responses

Response samples

Content type
application/json
{}

Get API Key

Fetches the details of the given API key under an organization.

Organization Owners can get any API key inside the Organization.

Organization Members and Project Creator can get any Project scoped API key for which they are Project Owner.

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

ApiKeyId
required
string
Example: ffffffffaaaa1414eeee000000000000

The ID (Access key) of the API key.

Responses

Response samples

Content type
application/json
{
  • "id": "IS9DrRsw4KWFS72Zhbj4xmhllHvPcdCL",
  • "name": "Organization Owner API Key",
  • "description": "Creates an API key with an Organization Owner role.",
  • "expiry": 720,
  • "allowedCIDRs": [
    ],
  • "organizationRoles": [
    ],
  • "resources": [ ],
  • "audit": {
    }
}

Delete API Key

Deletes the given API key under an organization.

Organization Owners can delete any API key inside the Organization.

Organization Members and Project Creator can delete any Project scoped API key for which they are Project Owner.

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

ApiKeyId
required
string
Example: ffffffffaaaa1414eeee000000000000

The ID (Access key) of the API key.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Rotate API Key

Rotate the secret of a given API key under an organization.

Organization Owners can rotate any API key inside the Organization.

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

ApiKeyId
required
string
Example: ffffffffaaaa1414eeee000000000000

The ID (Access key) of the API key.

Request Body schema: application/json
secret
string

A secret associated with API key. One has to follow the secret key policy, such as allowed characters and a length of 64 characters. If this field is left empty, a secret will be auto-generated.

Responses

Request samples

Content type
application/json
{
  • "secret": "<YOUR_SECRET_KEY_HERE>"
}

Response samples

Content type
application/json
{
  • "secretKey": "<YOUR_SECRET_KEY_HERE>",
  • "token": "<YOUR_TOKEN_HERE>"
}

App Endpoints

App Endpoints represent instances of mobile applications on App Services. Each App Endpoint is linked to one bucket and synchronizes data to a set of linked collections. Users can configure App Endpoints, including setting the Access Control function, Import Filter and OpenID Connect (OIDC) authentication configuration.

List App Endpoints

Lists all the App Endpoints under a specific App Service along with their associated configurations such as Access Control function, Import Filter or user defined xattr key.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

query Parameters
page
integer

Sets the page you would like to view.

perPage
integer

Sets the number of results you would like to have on each page.

sortDirection
string
Enum: "asc" "desc"
Example: sortDirection=asc

The order in which the items will be sorted.

sortBy
Array of strings
Example: sortBy=name

Sets the order of how you would like to sort the results and the key you would like to order by. Valid fields to sort the results are: name, offline, bucket.

Responses

Response samples

Content type
application/json
Example
{}

Create App Endpoint

Creates an App Endpoint within an App Service with specific configurations such as collection level Access Control function and Import Filter. If the scopes property is not included in the request body, the default scope and collection will be used. The first OpenID Connect provider given will be set as the default provider for the App Endpoint. To change the default, please use the Change App Endpoint OIDC Default Provider endpoint.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Request Body schema: application/json
bucket
required
string

The Capella Cluster backing bucket for the App Endpoint.

Array of objects (OIDCProvider)

OpenID Connect provider configuration.

object (CORSConfig)
object (ScopesConfig)
Default: {"_default":{"collections":{"_default":{"accessControlFunction":"function(doc){channel(doc.channels);}","importFilter":" function(doc) { if (doc.type != 'mobile') { return false; } return true; }"}}}}
name
required
string

App Endpoint name. Must be less than 228 characters. It can only contain lowercase letters, numbers, or the following characters -_$+()

deltaSyncEnabled
boolean
Default: false

Enable/disable delta sync

userXattrKey
string

The key of the user-extended attributes (xattr) that will be accessible from the Access control and validation function. If left empty, the feature will be disabled.

disablePublicAllDocs
boolean
Default: false

Disable the _all_docs endpoint for this App Endpoint on the App Services Public API.

Responses

Request samples

Content type
application/json
Example
{}

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Get App Endpoint

Fetches the details of the given App Endpoint, including operational and resync states and various configurations such as Access Control function and Import Filter.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

Responses

Response samples

Content type
application/json
Example
{}

Update App Endpoint

Replaces a specified App Endpoint’s configurations such as Access Control function, Import Filter, Delta Sync, or user defined xattr key. The first OpenID Connect provider given will be set as the default provider for the App Endpoint. To change the default, please use the Change App Endpoint OIDC Default Provider endpoint. All fields are required, the App Endpoint and bucket names cannot be changed.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

Request Body schema: application/json
name
required
string

App Endpoint name. Cannot be changed.

bucket
required
string

The Capella Cluster backing bucket for the App Endpoint. Cannot be changed.

required
object (ScopesConfig)
Default: {"_default":{"collections":{"_default":{"accessControlFunction":"function(doc){channel(doc.channels);}","importFilter":" function(doc) { if (doc.type != 'mobile') { return false; } return true; }"}}}}
deltaSyncEnabled
required
boolean

Enable or disable delta sync

userXattrKey
required
string

Key of user xattr that will be accessible from the Access control and validation function. If empty, the feature will be disabled.

disablePublicAllDocs
required
boolean
Default: false

Disable the _all_docs endpoint for this App Endpoint on the App Services Public API.

required
Array of objects (OIDCProvider)

OpenID Connect provider configuration.

required
object (CORSConfig)

Responses

Request samples

Content type
application/json
{
  • "name": "appEndpoint1",
  • "bucket": "store_locations",
  • "scopes": {
    },
  • "deltaSyncEnabled": true,
  • "userXattrKey": "syncFnXattr",
  • "disablePublicAllDocs": false,
  • "oidc": [],
  • "cors": {}
}

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Delete App Endpoint

Deletes an existing App Endpoint given its name.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

List App Endpoint Collections

Lists all the collections under a specific App Endpoint along with their associated configurations such as Access Control function, Import Filter or user defined xattr key.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

query Parameters
page
integer

Sets the page you would like to view.

perPage
integer

Sets the number of results you would like to have on each page.

sortDirection
string
Enum: "asc" "desc"
Example: sortDirection=asc

The order in which the items will be sorted.

Responses

Response samples

Content type
application/json
Example
{
  • "scopes": {
    }
}

Resume or Bring an App Endpoint online

Brings an App Endpoint online to close and reopen the connection to the backing Cluster bucket, re-establish access from the Public REST API and accept all incoming Admin API requests.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Pause or Take an App Endpoint offline

Take the database offline to run resync or to make changes without disrupting current App Endpoint operations. Clients currently connected to the App Endpoint will not be able to sync data with the Cluster while the App Endpoint is paused. This will not take the backing Cluster bucket offline. Pausing an App Endpoint that is in the progress of coming online will pause the App Endpoint after it comes online.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Get the App Endpoint Cross-Origin Resource Sharing (CORS) Configuration.

Fetch the App Endpoint Cross-Origin Resource Sharing (CORS) Configuration. CORS is disabled by default. For more information See Cross-Origin Resource Sharing (CORS) on App Endpoints.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

Responses

Response samples

Content type
application/json
{}

Upsert the App Endpoint Cross-Origin Resource Sharing (CORS) Configuration.

Upsert the App Endpoint Cross-Origin Resource Sharing (CORS) Configuration. CORS is disabled by default. For more information See Cross-Origin Resource Sharing (CORS) on App Endpoints.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

Request Body schema: application/json
origin
required
Array of strings

List of allowed origins, use ['*'] to allow access from everywhere. This is required when CORS is enabled (i.e. disabled is false).

loginOrigin
Array of strings

List of allowed login origins

headers
Array of strings

List of allowed headers

maxAge
integer
Default: 5

Specifies the duration (in seconds) for which the results of a preflight request can be cached.

disabled
boolean

Disable CORS headers in all App Endpoint responses. When true, no other CORS configuration properties should be provided.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Get Access Control and Validation function

Retrieves the Access Control and Validation function for the given keyspace.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointKeyspace
required
string
Example: endpoint1.scope1.collection1

A specific collection denoted by the App Endpoint name, the scope name and collection name separated by a period, for example "endpoint1.scope1.collection1". If only an App Endpoint name is provided this will be interpreted as "endpoint1._default._default". If only an App Endpoint name and collection name are provided these will interpreted as a named collection within the default scope, for example "endpoint1.collection1" will be interpreted as "endpoint1._default.collection1".

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Upsert custom Access Control and Validation function

Used to upsert a custom Access Control and Validation function for the given keyspace. This is a Javascript function specified at a keyspace, where a user’s read/write access is defined for documents in that particular keyspace. Every document mutation is processed by this function. If an Access Control function is not explicitly defined, a default is applied. Read more.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointKeyspace
required
string
Example: endpoint1.scope1.collection1

A specific collection denoted by the App Endpoint name, the scope name and collection name separated by a period, for example "endpoint1.scope1.collection1". If only an App Endpoint name is provided this will be interpreted as "endpoint1._default._default". If only an App Endpoint name and collection name are provided these will interpreted as a named collection within the default scope, for example "endpoint1.collection1" will be interpreted as "endpoint1._default.collection1".

Request Body schema: application/javascript
string (AccessFunction)

All mutations in this collection are processed by this Javascript function

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Delete Access Control and Validation function

Deletes the Access Control and Validation function for the given keyspace.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointKeyspace
required
string
Example: endpoint1.scope1.collection1

A specific collection denoted by the App Endpoint name, the scope name and collection name separated by a period, for example "endpoint1.scope1.collection1". If only an App Endpoint name is provided this will be interpreted as "endpoint1._default._default". If only an App Endpoint name and collection name are provided these will interpreted as a named collection within the default scope, for example "endpoint1.collection1" will be interpreted as "endpoint1._default.collection1".

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Get Import Filter

Retrieves the Import Filter for the given keyspace.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointKeyspace
required
string
Example: endpoint1.scope1.collection1

A specific collection denoted by the App Endpoint name, the scope name and collection name separated by a period, for example "endpoint1.scope1.collection1". If only an App Endpoint name is provided this will be interpreted as "endpoint1._default._default". If only an App Endpoint name and collection name are provided these will interpreted as a named collection within the default scope, for example "endpoint1.collection1" will be interpreted as "endpoint1._default.collection1".

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Upsert Import Filter

Upserts the Import Filter for the given keyspace. By default, there is no import filter and all documents are imported. Import Filters identify the subset of documents eligible to be replicated by App services based on user-defined requirements. This subset is applied to all future mutations. Once the document has been imported and processed by the App Endpoint, changing the Import Filter will not remove it, even if the updated import filters would prevent newer mutations or iterations of the document from getting imported. Read more.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointKeyspace
required
string
Example: endpoint1.scope1.collection1

A specific collection denoted by the App Endpoint name, the scope name and collection name separated by a period, for example "endpoint1.scope1.collection1". If only an App Endpoint name is provided this will be interpreted as "endpoint1._default._default". If only an App Endpoint name and collection name are provided these will interpreted as a named collection within the default scope, for example "endpoint1.collection1" will be interpreted as "endpoint1._default.collection1".

Request Body schema: application/javascript
string (ImportFilter)

The Javascript function used to specify the documents in this collection that are to be imported by the App Endpoint. By default, all documents in corresponding collection are imported.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Delete Import Filter

Deletes the Import Filter for the given keyspace.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointKeyspace
required
string
Example: endpoint1.scope1.collection1

A specific collection denoted by the App Endpoint name, the scope name and collection name separated by a period, for example "endpoint1.scope1.collection1". If only an App Endpoint name is provided this will be interpreted as "endpoint1._default._default". If only an App Endpoint name and collection name are provided these will interpreted as a named collection within the default scope, for example "endpoint1.collection1" will be interpreted as "endpoint1._default.collection1".

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Create App Endpoint OpenID Connect (OIDC) Provider

Creates an OIDC provider for the specified App Endpoint. The first OIDC provider will automatically be set as the default OIDC provider. All client requests will use the default OIDC provider, unless the OIDC provider for the request is explicitly specified on authentication. See more here.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

Request Body schema: application/json
issuer
required
string

The URL for the OpenID Connect issuer.

register
boolean

Indicates whether to register a new App Service user account when a user logs in using OpenID Connect.

clientId
required
string

The OpenID Connect provider client ID.

userPrefix
string

Username prefix for all users created for this provider

discoveryUrl
string

The URL for the non-standard discovery endpoint.

usernameClaim
string

Allows a different OpenID Connect field to be specified instead of the Subject (sub).

rolesClaim
string

If set, the value(s) of the given OpenID Connect authentication token claim will be added to the user's roles. The value of this claim in the OIDC token must be either a string or an array of strings, any other type will result in an error.

scope
Array of strings
Default: ["openid","email"]

The scope sent for the OpenID Connect request.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "providerId": "ffffffff-aaaa-1414-eeee-000000000000"
}

List App Endpoint OpenID Connect (OIDC) Providers

List OpenID Connect (OIDC) Providers configured on an App Endpoint.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

query Parameters
page
integer

Sets the page you would like to view.

perPage
integer

Sets the number of results you would like to have on each page.

sortDirection
string
Enum: "asc" "desc"
Example: sortDirection=asc

The order in which the items will be sorted.

Responses

Response samples

Content type
application/json
{}

Get App Endpoint OpenID Connect (OIDC) Provider

Fetches an OIDC provider by ID for the specified App Endpoint.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

OIDCProviderId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the OpenID Connect Provider.

Responses

Response samples

Content type
application/json
{}

Update App Endpoint OpenID Connect (OIDC) Provider

Updates an OIDC provider for the specified App Endpoint.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

OIDCProviderId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the OpenID Connect Provider.

Request Body schema: application/json
issuer
required
string

The URL for the OpenID Connect issuer.

register
boolean

Indicates whether to register a new App Service user account when a user logs in using OpenID Connect.

clientId
required
string

The OpenID Connect provider client ID.

userPrefix
string

Username prefix for all users created for this provider

discoveryUrl
string

The URL for the non-standard discovery endpoint.

usernameClaim
string

Allows a different OpenID Connect field to be specified instead of the Subject (sub).

rolesClaim
string

If set, the value(s) of the given OpenID Connect authentication token claim will be added to the user's roles. The value of this claim in the OIDC token must be either a string or an array of strings, any other type will result in an error.

scope
Array of strings
Default: ["openid","email"]

The scope sent for the OpenID Connect request.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Delete App Endpoint OpenID Connect (OIDC) Provider

Deletes an OIDC provider for the specified App Endpoint. Deleting the default provider will error unless it is the only provider. Before deleting the default provider, you must set a new provider as default or have no other providers.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

OIDCProviderId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the OpenID Connect Provider.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Update App Endpoint Default OIDC Provider

Updates the default OIDC provider for the specified App Endpoint. All client requests will use the default OIDC provider, unless the OIDC provider for the request is explicitly specified. See more here.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

Request Body schema: application/json
providerId
required
string

Responses

Request samples

Content type
application/json
{
  • "providerId": "ffffffff-aaaa-1414-eeee-000000000000"
}

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Get Resync Status

Fetches the Resync status of the given App Endpoint. If no resync operation was triggered, the response will say the status is completed with 0 values for other properties.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

Responses

Response samples

Content type
application/json
{
  • "state": "running",
  • "startTime": "2023-10-12T07:20:50.52Z",
  • "lastError": "string",
  • "docsChanged": 100,
  • "docsProcessed": 500,
  • "docsTargeted": 1000,
  • "docsErrored": 10,
  • "collections_processing": {
    }
}

Start Resync

Initialises the Resync operation for the given collections. By default, all collections that require resync will be resynced unless they are specified in the scopes property, in which case only the specified collections that require resync will be resynced.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

Request Body schema: application/json
object

Responses

Request samples

Content type
application/json
{
  • "scopes": {
    }
}

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Stop Resync

Stops the Resync operation. When stopping resync, it will be stopped for all collections being processed. In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

App Services

App Services is a fully managed application backend designed to provide data synchronization between mobile or IoT applications running Couchbase Lite and your Couchbase Capella database.

Create App Service

Creates a new App Service.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

Request Body schema: application/json
name
required
string <= 256 characters

Name of the cluster (up to 256 characters).

description
string

A short description of the App Service.

nodes
integer

Number of nodes configured for the App Service. Number of nodes configured for the App Service. The number of nodes can range from 2 to 12.

object (AppServiceCompute)

The CPU and RAM configuration of the App Service. The supported combinations are:

CPU (cores) RAM (GB)
2 4
4 8
8 16
16 32
36 72
version
string

The version of the App Service server. If left empty, it will be defaulted to the latest available version.

loadBalancerCidr
string^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\/\d{1,2}$...

Optional. Pins the CIDR block used for the App Service load balancer subnet. Supported for Azure App Services only and rejected for other providers. When omitted, the CIDR is allocated dynamically.

Responses

Request samples

Content type
application/json
{
  • "name": "MyAppSyncService",
  • "description": "My app sync service.",
  • "nodes": 2,
  • "compute": {
    },
  • "version": "3.0",
  • "loadBalancerCidr": "10.1.0.0/24"
}

Response samples

Content type
application/json
{
  • "id": "ffffffff-aaaa-1414-eeee-000000000000"
}

List AppServices

Lists all the clusters under the organization.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

Returned set of clusters is reduced to what the caller has access to view. To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

query Parameters
page
integer

Sets the page you would like to view.

perPage
integer

Sets the number of results you would like to have on each page.

sortBy
Array of strings
Example: sortBy=name

Sets the order of how you would like to sort the results and the key you would like to order by. Valid fields to sort the results are: name, id, description.

sortDirection
string
Enum: "asc" "desc"
Example: sortDirection=asc

The order in which the items will be sorted.

projectId
string <uuid>
Example: projectId=ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

Responses

Response samples

Content type
application/json
{}

Get App Service

Fetches the details of the given App Service.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Responses

Response samples

Content type
application/json
{
  • "id": "ffffffff-aaaa-1414-eeee-000000000000",
  • "name": "My App Service",
  • "description": "Description of the App Service.",
  • "cloudProvider": "aws",
  • "nodes": 2,
  • "compute": {
    },
  • "clusterId": "ffffffff-aaaa-1414-eeee-000000000000",
  • "currentState": "deploying",
  • "version": "3.141.5",
  • "plan": "basic",
  • "audit": {
    },
  • "loadBalancerCidr": "10.1.0.0/24"
}

Update App Service

Updates an existing App Service.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

header Parameters
If-Match
string
Example: 12

A precondition header that specifies the entity tag of a resource.

Request Body schema: application/json
nodes
required
integer

Number of nodes configured for the App Service. The number of nodes can range from 2 to 12.

required
object (AppServiceCompute)

The CPU and RAM configuration of the App Service. The supported combinations are:

CPU (cores) RAM (GB)
2 4
4 8
8 16
16 32
36 72
loadBalancerCidr
string^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\/\d{1,2}$...

Optional and immutable. The CIDR block pinned for the App Service load balancer subnet at creation time (Azure only). It cannot be changed after creation; supplying a different value returns a validation error.

Responses

Request samples

Content type
application/json
{
  • "nodes": 2,
  • "compute": {
    },
  • "loadBalancerCidr": "10.1.0.0/24"
}

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Delete App Service

Deletes an existing App Service.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Turn On App Service

Turn App Service on. App Services can only be turned on when the linked cluster is turned on and healthy.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Turn Off App Service

Turn App Service off.

Turn off an App Service to temporarily deactivate it and reduce its consumption of compute resources. The App Service itself and its related infrastructure will be removed once turned off.

Any private endpoints configured on App Services will remain and will be available when App Service is turned back on. You will continue to incur costs for any private endpoints configured on App Services. If you don’t wish to incur these costs, you must explicitly disable private endpoint service and reinstate private endpoints when App Service is turned back on again.

Free tier App Service can only be turned off when the linked free tier cluster is turned off.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Create App Service Admin User

Creates an Admin User on the specified App Service. The user can either be granted access to all App Endpoints or to specific App Endpoints by listing them in the endpoints field.

Currently, the user will be granted admin access to all App Endpoints in a bucket (that is currently associated with the App Endpoint(s) specified in the endpoints field), including ones that are created in future. An option to grant access to specific App Endpoints in a bucket will be available in the future.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Request Body schema: application/json
name
required
string

The name of the user.

password
required
string

The password of the user.

enableBucketLevelAccess
boolean
Default: true

When set to true, the user will automatically be granted admin access to all App Endpoints in a bucket (that is currently associated with the App Endpoint(s) specified in the endpoints field), including ones that are created in future. The flag defaults to true. Currently, the only supported value is true, which means that the user will have admin access to all App Endpoints in this bucket. In the future, there will be the option to set this to false.

required
UpdateAppServiceAdminUserAllEndpointsRequest (object) or UpdateAppServiceAdminUserEndpointList (object)

Responses

Request samples

Content type
application/json
Example
{
  • "name": "user1",
  • "password": "password",
  • "enableBucketLevelAccess": false,
  • "access": {
    }
}

Response samples

Content type
application/json
{
  • "id": "eeeeeeee-aaaa-1414-eeee-999999999999"
}

List App Service Admin Users

List the admin users for the specified App Service.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

query Parameters
page
integer

Sets the page you would like to view.

perPage
integer

Sets the number of results you would like to have on each page.

sortDirection
string
Enum: "asc" "desc"
Example: sortDirection=asc

The order in which the items will be sorted.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "cursor": {}
}

Update App Service Admin User

Updates the Admin User's access to App Endpoints on the specified App Service. The update operation can either grant access to all App Endpoints or to specific App Endpoints by listing them in the endpoints field.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

userId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the database credential.

Request Body schema: application/json
One of
endpoints
required
Array of strings

The list of App Endpoints that the user has access to.

Responses

Request samples

Content type
application/json
Example
{
  • "endpoints": [
    ]
}

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Delete App Service Admin User

Deletes the Admin User.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

userId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the database credential.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Get App Service Admin User

Fetches the Admin User.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

userId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the database credential.

Responses

Response samples

Content type
application/json
{
  • "id": "ffffffff-aaaa-1414-eeee-000000000000",
  • "tenantId": "ffffffff-aaaa-1414-eeee-000000000000",
  • "projectId": "ffffffff-aaaa-1414-eeee-000000000000",
  • "clusterId": "ffffffff-aaaa-1414-eeee-000000000000",
  • "name": "user1",
  • "endpoints": [
    ],
  • "accessAllEndpoints": false,
  • "audit": {
    }
}

Opt App Service Back In to Metadata Isolation

Opt an App Service back in to system metadata collection (metadata isolation) after a support-initiated opt-out. Only the value true is accepted, and opting back in is permanent: once enabled the App Service cannot be opted out again. Requires App Services version 4.1 or later.

New App Services are opted in automatically and existing App Services are opted in on upgrade to 4.1, so this endpoint is only useful after a previous opt-out via Couchbase support.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Request Body schema: application/json
enabled
required
boolean
Value: true

Whether metadata isolation is enabled on the App Service. Only true is accepted via this API to opt back in after support has previously opted the App Service out. Opting back in is permanent: the App Service cannot be opted out again once enabled.

Responses

Request samples

Content type
application/json
{
  • "enabled": true
}

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Get App Service Metadata Isolation State

Retrieve the current metadata isolation state for the App Service.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Responses

Response samples

Content type
application/json
{
  • "enabled": true
}

Get Public Certificate for App Service

The public certificate is a trusted Certificate Authority (CA) signed certificate. You can copy or download the endpoint’s SSL public certificate to bundle into your mobile application. Pinning your certificate to your App is not recommended as it can increase maintenance overhead and downtime risks. For more information, see here.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Responses

Response samples

Content type
application/json
{
  • "certificate": "-----BEGIN CERTIFICATE-----\nMIIDFTCCAf2gAwIBAgI[...]CSYBWaK0ofivA==\n-----END CERTIFICATE-----\n"
}

List App Endpoint Admin Users

Lists the Admin Users that have access to the specified App Endpoint.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

query Parameters
page
integer

Sets the page you would like to view.

perPage
integer

Sets the number of results you would like to have on each page.

sortDirection
string
Enum: "asc" "desc"
Example: sortDirection=asc

The order in which the items will be sorted.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "cursor": {}
}

App Services Audit Logging

Users can configure audit log support on Capella App Services and can export audit logs from cloud blob storage to an AWS S3 bucket. Users can retrieve audit logs from a pre-signed download URL. Logs are retained for 30 days.

Enable or Disable App Service Audit Logging

Enable or disable Audit Logging for an App Service.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Request Body schema: application/json
auditEnabled
required
boolean

Determines whether audit logging is enabled or not on the App Service.

Responses

Request samples

Content type
application/json
{
  • "auditEnabled": true
}

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Get App Service Audit Log State

Retrieves the audit logging state for a specific App Service.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Responses

Response samples

Content type
application/json
{
  • "auditEnabled": true
}

List App Endpoint Audit Log Event IDs

Retrieves all audit log event ids, their descriptions and enabled status for an App Endpoint. The list of filterable event IDs can be specified while configuring audit logging for the App Service.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

Responses

Response samples

Content type
application/json
{
  • "events": {
    }
}

Update App Endpoint Audit Logging Config

Updates the audit logging configuration for a specific App Endpoint. Operations performed by disabled users and roles are excluded from audit logs. See a list of event IDs by calling /auditLogEvents, add event IDs to the enabledEventIds field to enable audit logging for those events.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

Request Body schema: application/json
auditEnabled
boolean

Determines whether audit logging is enabled

Array of objects
Array of objects (DisabledUserRoles)
Array of objects (DisabledUserRoles)

Responses

Request samples

Content type
application/json
{
  • "auditEnabled": true,
  • "enabledEventIds": [
    ],
  • "disabledUsers": [
    ],
  • "disabledRoles": [
    ]
}

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Get App Endpoint Audit Logging Config

Retrieves the audit logging configuration for a specific App Endpoint.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

Responses

Response samples

Content type
application/json
{
  • "auditEnabled": true,
  • "enabledEventIds": [
    ],
  • "disabledUsers": [
    ],
  • "disabledRoles": [
    ]
}

Configure App Service Audit Log Streaming

Sets up audit log streaming for a specific App Service with filters. If streamingEnabled is true log streaming will begin.

Ensure you have provided collector credentials if you wish to begin streaming; log streaming cannot be enabled without credentials. Refer to schema below to see required fields for your log collection provider. Providers include Datadog, Sumo Logic, Grafana Loki, Elasticsearch (versions 8 and newer only) and generic HTTP. To start or resume streaming, set streamingEnabled to true while providing the rest of the log collector config.

To disable log streaming and remove the log streaming config including credentials, set streamingEnabled to false and leave the rest of the payload empty.

To pause log streaming, set streamingEnabled to false while providing the rest of the log collector config.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Request Body schema: application/json
streamingEnabled
required
boolean

Determines whether audit log streaming is enabled or not. To start or resume streaming, set this to true. To disable or pause log streaming, set this to false.

disabledAppEndpoints
Array of strings

List of App Endpoints to be excluded from audit log streaming.

outputType
string
Enum: "datadog" "generic_http" "sumologic" "loki" "elastic" "splunk" "dynatrace"

The type of output for the audit log streaming. Required when starting, resuming or pausing log streaming.

datadog (object) or sumologic (object) or generic_http (object) or elastic (object) or loki (object) or splunk (object) or dynatrace (object)

Secrets for audit log streaming configuration. Required when starting, resuming or pausing log streaming.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Start or Resume Audit Log Streaming

To start or resume streaming, set streamingEnabled to true. To pause log streaming, set streamingEnabled to false.

If log streaming is paused we will retain the collector credentials. To clear these use the PUT request.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Request Body schema: application/json
op
required
string
Value: "update"

Type of operation.

path
required
string

Path of resource that needs to be updated.

value
required
boolean

Determines whether audit log streaming is enabled or not.

Responses

Request samples

Content type
application/json
{
  • "op": "update",
  • "path": "/streamingEnabled",
  • "value": true
}

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Get App Service Audit Log Streaming State

Retrieves the current state of audit log streaming for a specific App Service, as well as the output type and enabled App endpoints.

The audit log streaming states are:

  • disabled
  • disabling
  • enabled
  • enabling
  • paused
  • pausing
  • errored

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Responses

Response samples

Content type
application/json
{
  • "streamingEnabled": true,
  • "logStreamingState": "enabling",
  • "disabledAppEndpoints": [
    ],
  • "outputType": "datadog"
}

Initiate Audit Log Export

Initiates an audit log export for a specific App Service.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Request Body schema: application/json
start
required
string <date-time>

Specifies the audit log's start date and time.

end
required
string <date-time>

Specifies the audit log's end date and time.

Responses

Request samples

Content type
application/json
{
  • "start": "2022-09-04T00:56:07.000Z",
  • "end": "2022-09-05T04:56:07.000Z"
}

Response samples

Content type
application/json
{
  • "exportId": "ffffffff-aaaa-1414-eeee-000000000000"
}

List Audit Log Export Jobs

Retrieves a list of all audit log export jobs for an App Service.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

query Parameters
page
integer

Sets the page you would like to view.

perPage
integer

Sets the number of results you would like to have on each page.

sortDirection
string
Enum: "asc" "desc"
Example: sortDirection=asc

The order in which the items will be sorted.

Responses

Response samples

Content type
application/json
{}

Get Audit Log Export Job

Retrieves details of a specific audit log export job for a given App Service.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

auditLogExportId
required
string
Example: ffffffff-aaaa-1414-eeee-000000000000

The export ID of the audit log export job.

Responses

Response samples

Content type
application/json
{}

App Services Log Streaming

Log Streaming provides a mechanism for real-time streaming of App Services operational logs to third-party observability platforms or self-hosted HTTP logs collectors. This is a crucial tool to gain instant insights into application behavior, enabling rapid issue detection and resolution to enhance application reliability, performance, and security.

Resume App Service Log Streaming

Re-enables Log Streaming for an App Service that was previously paused. Log Streaming needs to be previously configured for the App Service before it can be paused or resumed.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Pause App Service Log Streaming

Temporarily disables Log Streaming for an App Service. Log Streaming needs to be previously configured for the App Service before it can be paused or resumed.

In order to access this endpoint, the provided API key must have at least one of the roles referenced below:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Configure App Service Log Streaming

Sets up log streaming for a specific App Service.

Ensure you have provided collector credentials if you wish to begin streaming; log streaming cannot be enabled without credentials. Refer to schema below to see required fields for your log collection provider. Supported providers include Datadog, Sumo Logic, Grafana Loki, Elasticsearch (versions 8 and newer only), generic HTTP, Splunk, and Dynatrace.

Log streaming can only be configured while the config state is either enabled, paused, or disabled.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Request Body schema: application/json
outputType
required
string
Enum: "datadog" "generic_http" "sumologic" "loki" "elastic" "splunk" "dynatrace"

The log collector to have logs streamed to.

required
datadog (object) or sumologic (object) or generic_http (object) or elastic (object) or loki (object) or splunk (object) or dynatrace (object)

The credentials to be used to authenticate with the log collector.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Get App Service Log Streaming Configuration and State

Retrieves the configured output type, current config state, current streaming state of log streaming for a specific App Service.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Responses

Response samples

Content type
application/json
{
  • "outputType": "datadog",
  • "configState": "enabled",
  • "streamingState": "healthy"
}

Disable App Service Log Streaming

Disables log streaming for a specific App Service.

This will remove the log streaming configuration for the App Service. To enable log streaming again, you will need to provide the configuration details once more using the "Configure App Service Log Streaming" endpoint.

Log streaming can only be disabled while the config state is either enabled or paused.

It may take a few minutes for the log streaming to be fully disabled.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Update App Endpoint Log Streaming Config

Updates the log streaming config for an app endpoint, which configures log levels and keys used to filter log messages.

This app endpoint log streaming config can only be updated while the log streaming config state is either "paused" or "enabled".

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

Request Body schema: application/json
logLevel
required
string
Enum: "info" "warn" "error"

Controls the verbosity of logs based on the specified log level

logKeys
required
Array of strings
Items Enum: "Admin" "Access" "Auth" "Cache" "Changes" "CRUD" "HTTP" "HTTP+" "Import" "Javascript" "Query" "Sync" "SyncMsg"

Filter logs to specific log keys

Responses

Request samples

Content type
application/json
{
  • "logLevel": "warn",
  • "logKeys": [
    ]
}

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Get App Endpoint Log Streaming Config

Retrieves log streaming config for an app endpoint, which shows log levels and keys used to filter log messages.

This app endpoint log streaming config can only be retrieved while the log streaming config state is either "paused" or "enabled".

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

appEndpointName
required
string
Example: endpoint1

The name of the App Endpoint.

Responses

Response samples

Content type
application/json
{
  • "logLevel": "warn",
  • "logKeys": [
    ]
}

App Services Private Endpoints

App Services Private Endpoints enables you to configure a secure private network connection between the Virtual Private Cloud (VPC) hosting your applications and the VPC of your Couchbase Capella App Services. Note: This is currently only available for AWS.

Enable App Service Private Endpoints

Enable Private Endpoints for an App Service.

Supporting infrastructure is deployed and it may take a few minutes for Private Endpoints to be available. Once enabled, you can create Private Endpoints in your network. You can do this using the cloud provider's CLI. To obtain the command use the /privateEndpointService/privateEndpointCommand endpoint.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Get App Service Private Endpoints State

The App Service Private Endpoint service allows you to access your Capella cluster from your private network, using Private Endpoints.

This endpoint determines if the endpoint service is enabled or disabled for your App Service.

It returns both a state and targetState. The state indicates the current status of the service, while the targetState indicates the desired end state of the service.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Responses

Response samples

Content type
application/json
{
  • "state": "enabled",
  • "targetState": "enabled"
}

Disable App Service Private Endpoints

Disable Private Endpoints for an App Service.

Supporting infrastructure is removed and it may take a few minutes before the Private Endpoint service is disabled.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Get App Service Private Endpoints Command

Retrieves the Private Endpoints command in order to create Private Endpoints and initiate the connection between the specified VPC and the App Service.

An example for AWS:

aws ec2 create-vpc-endpoint \
  --vpc-id vpc-1234 \
  --region us-east-1 \
  --service-name com.amazonaws.vpce.us-east-1.vpce-svc-1234 \
  --vpc-endpoint-type Interface \
  --subnet-ids subnet-1234

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Request Body schema: application/json
One of
vpcID
required
string [ 12 .. 21 ] characters

The ID of your virtual network

subnetIDs
required
Array of strings

Responses

Request samples

Content type
application/json
{
  • "vpcID": "vpc-1234",
  • "subnetIDs": [
    ]
}

Response samples

Content type
application/json
{
  • "command": "aws ec2 create-vpc-endpoint --vpc-id vpc-1234 --region us-east-1 --service-name com.amazonaws.vpce.us-east-1.vpce-svc-1234 --vpc-endpoint-type Interface --subnet-ids subnet-1234"
}

List App Service Private Endpoints

Returns a list of the Private Endpoints associated with your Capella App Service with its current state. Each of these Private Endpoints is either attempting to connect or is connected to the App Service network.

In order to access this endpoint, the provided API key must have at least one of the following roles:

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

Responses

Response samples

Content type
application/json
{
  • "privateEndpointDNS": "abcdef123456.pl.cloud.couchbase.com",
  • "endpoints": [
    ]
}

Accept Private Endpoint Request

Accepts a Private Endpoint connection request for an App Service. This completes the connection and means the Private Endpoint is now associated with the App Service and available for use.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

endpointId
required
string
Example: vpce-1234

The VPC endpoint ID.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Delete Private Endpoint Request

If the Private Endpoint is already connected and accepted this will unassociate the Private Endpoint from the App Service. If the Private Endpoint is not already connected this will reject the Private Endpoint connection request.

Both cases will remove the Private Endpoint from the App Service and it will no longer be available for use and any connection will be terminated.

In order to access this endpoint, the provided API key must have at least one of the following roles:

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

appServiceId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the appService.

endpointId
required
string
Example: vpce-1234

The VPC endpoint ID.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Audit Logs

Users can configure audit log support on Capella database and can export audit logs from cloud blob storage to an AWS S3 bucket. Users can retrieve audit logs from a pre-signed download URL. Logs are retained for 30 days.

Update Cluster Audit Log Configuration

Updates the audit log configuration for the cluster.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

Request Body schema: application/json
auditEnabled
required
boolean

Determines whether audit logging is enabled or not on the cluster.

required
Array of objects (AuditSettingsDisabledUsers)

List of users whose filterable events will not be logged.

enabledEventIDs
required
Array of integers <int32> [ items <int32 > ]

List of enabled filterable audit events for the cluster.

Responses

Request samples

Content type
application/json
{
  • "auditEnabled": true,
  • "disabledUsers": [
    ],
  • "enabledEventIDs": [
    ]
}

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Get Cluster Audit Log Configuration

Fetches information on whether audit logging is enabled, and which event IDs are enabled.

To learn more about cluster audit logs, please refer to audit management.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

Responses

Response samples

Content type
application/json
{
  • "auditEnabled": true,
  • "disabledUsers": [
    ],
  • "enabledEventIDs": [
    ]
}

List Filterable Audit Log Events

Retrieves a list of audit event IDs. The list of filterable event IDs can be specified while configuring audit log for cluster.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

Responses

Response samples

Content type
application/json
{
  • "events": [
    ]
}

Create Cluster Audit Log Export job

Creates a new audit log export job.

Audit Logs for the last 30 days can be requested, otherwise they are purged. A pre-signed URL to a s3 bucket location is returned, which is used to download these audit logs.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

Request Body schema: application/json
start
required
string <date-time>

Specifies the audit log's start date and time.

end
required
string <date-time>

Specifies the audit log's end date and time.

Responses

Request samples

Content type
application/json
{
  • "start": "2022-09-04T00:56:07.000Z",
  • "end": "2022-09-05T04:56:07.000Z"
}

Response samples

Content type
application/json
{
  • "exportId": "ffffffff-aaaa-1414-eeee-000000000000"
}

List Cluster Audit Log Export Jobs

Lists all the audit log export jobs and shows the status for each job.

It will show the pre-signed URL if the export was successful, a failure error if it was unsuccessful or a message saying no audit logs available if there were no audit logs found.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

query Parameters
page
integer

Sets the page you would like to view.

perPage
integer

Sets the number of results you would like to have on each page.

Responses

Response samples

Content type
application/json
{}

Get Cluster Audit Log Export

Fetches the status of a single audit log export job.

It will show the pre-signed URL if the export was successful, a failure error if it was unsuccessful or a message saying no audit logs available if there were no audit logs found during the given timeframe.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager
  • Project Viewer
  • Database Data Reader/Writer
  • Database Data Reader

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

auditLogExportId
required
string
Example: ffffffff-aaaa-1414-eeee-000000000000

The export ID of the audit log export job.

Responses

Response samples

Content type
application/json
Example
{
  • "createdAt": "2023-05-16T04:00:08.870076042Z",
  • "auditLogExportId": "40b9318a-cc93-458d-bc3e-7d4ffa778386",
  • "start": "2023-05-15T04:56:07Z",
  • "end": "2023-05-16T04:56:07Z",
  • "status": "In Progress"
}

Backup Schedule (Bucket)

Couchbase supports a robust scheduled backup and retention time policy as part of an overall disaster recovery plan for production data. Couchbase Capella supports scheduled and on-demand backups of bucket data. A backup can be restored to the same database where it was created or another database in the same organization. On setting up a backup schedule, the bucket automatically backs up the bucket based on the chosen schedule.

Create Backup Schedule

Creates a scheduled backup for a bucket.

To learn more about backup and restore, see Backup and Restore Data.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

bucketId
required
string
Example: dGVzdA

The ID of the bucket. It is the URL-compatible base64 encoding of the bucket name.

Request Body schema: application/json
type
string
Value: "weekly"
object

Schedule a full backup once a week with regular incrementals.

Responses

Request samples

Content type
application/json
{
  • "type": "weekly",
  • "weeklySchedule": {
    }
}

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Get Backup Schedule

Fetched the backup schedule for a bucket in a cluster.

To learn more about backup and restore, see Backup and Restore Data.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

bucketId
required
string
Example: dGVzdA

The ID of the bucket. It is the URL-compatible base64 encoding of the bucket name.

Responses

Response samples

Content type
application/json
{
  • "type": "weekly",
  • "clusterID": "ffffffff-aaaa-1414-eeee-000000000000",
  • "bucketId": "dGVzdA",
  • "weeklySchedule": {
    }
}

Update Backup Schedule

Updates an existing backup schedule.

To learn more about backup and restore, see Backup and Restore Data.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

bucketId
required
string
Example: dGVzdA

The ID of the bucket. It is the URL-compatible base64 encoding of the bucket name.

Request Body schema: application/json
type
string
Value: "weekly"
object

Schedule a full backup once a week with regular incrementals.

Responses

Request samples

Content type
application/json
{
  • "type": "weekly",
  • "weeklySchedule": {
    }
}

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

Delete Backup Schedule

Deletes an existing backup schedule

To learn more about backup and restore, see Backup and Restore Data.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner
  • Project Manager

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

bucketId
required
string
Example: dGVzdA

The ID of the bucket. It is the URL-compatible base64 encoding of the bucket name.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 400,
  • "code": 1000,
  • "message": "The request was malformed or invalid.",
  • "hint": "The request was malformed or invalid."
}

List Cycles

Lists the cycles for a bucket in a cluster.

To learn more about backup and restore, see Backup and Restore Data.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

bucketId
required
string
Example: dGVzdA

The ID of the bucket. It is the URL-compatible base64 encoding of the bucket name.

query Parameters
startDate
string <date>
Example: startDate=2023-07-19

Filters bucket backups beginning from the start date. Specify the start date to retrieve relevant bucket backups from start date.

endDate
string <date>
Example: endDate=2023-07-21

Filters bucket backups till the end date. Specify the end date to retrieve relevant bucket backups till end date.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

List Backups

Lists the backups for a cycle in a bucket.

To learn more about backup and restore, see Backup and Restore Data.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

bucketId
required
string
Example: dGVzdA

The ID of the bucket. It is the URL-compatible base64 encoding of the bucket name.

cycleId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cycle.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Backups & Restore (Bucket)

Couchbase supports a robust scheduled backup and retention time policy as part of an overall disaster recovery plan for production data. Couchbase Capella supports scheduled and on-demand backups of bucket data. A backup can be restored to the same database where it was created or another database in the same organization. An on-demand backup of a bucket is always a Full backup. Capella schedules on-demand backup to start immediately.

Create Backup

Creates an on-demand backup for a bucket.

To learn more about backup and restore, see Backup and Restore Data.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

bucketId
required
string
Example: dGVzdA

The ID of the bucket. It is the URL-compatible base64 encoding of the bucket name.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

List Cluster Backups

Lists the latest backup for all buckets in a cluster.

Note: This endpoint doesn’t return queued backups and only returns ones that are actively being processed or are completed/failed.

To learn more about backup and restore, see Backup and Restore Data.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Get Backup

Fetches the details of an existing backup.

To learn more about backup and restore, see Backup and Restore Data.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

backupId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the backup.

Responses

Response samples

Content type
application/json
{
  • "id": "ffffffff-aaaa-1414-eeee-000000000000",
  • "clusterID": "ffffffff-aaaa-1414-eeee-000000000000",
  • "tenantID": "ffffffff-aaaa-1414-eeee-000000000000",
  • "projectID": "ffffffff-aaaa-1414-eeee-000000000000",
  • "cycleID": "string",
  • "date": "2021-09-01T12:34:56Z",
  • "restoreBefore": "2021-09-02T12:34:56Z",
  • "status": "pending",
  • "method": "incremental",
  • "bucketName": "My-First-Bucket",
  • "bucketID": "dGVzdA",
  • "source": "scheduled",
  • "provider": "aws",
  • "stats": {
    },
  • "elapsedTimeInSeconds": 30,
  • "scheduleInfo": {
    }
}

Delete Backup Cycle

Deletes the backup records that belong to the same cycle from the DB by using the backup ID.

To learn more about backup and restore, see Backup and Restore Data.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

backupId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the backup.

Responses

Response samples

Content type
application/json
{
  • "httpStatusCode": 403,
  • "code": 1002,
  • "message": "Access Denied.",
  • "hint": "Your access to the requested resource is denied. Please make sure you have the necessary permissions to access the resource."
}

Restore Backup

Creates an on-demand restore job for a backup immediately.

To learn more about backup and restore, see Backup and Restore Data.

In order to access this endpoint, the provided API key must have at least one of the following roles:

  • Organization Owner
  • Project Owner

To learn more, see Organization, Project, and Database Access Overview.

Authorizations:
token
path Parameters
organizationId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the organization.

projectId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the project.

clusterId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the cluster.

backupId
required
string <uuid>
Example: ffffffff-aaaa-1414-eeee-000000000000

The GUID4 ID of the backup.

Request Body schema: application/json
targetClusterID
required
string <uuid>

The ID of the target cluster to restore to.

sourceClusterID
required
string <uuid>

The ID of the source cluster the restore is based on.

backupID
required
string <uuid>

The backup record ID that contains the backup to restore from.

services
required
Array of strings (Services)
Items Enum: "data" "query"
forceUpdates
boolean

Forces data in the Couchbase cluster to be overwritten even if the data in the cluster is newer.

autoRemoveCollections
boolean

Automatically delete scopes/collections which are known to be deleted in the backup.

filterKeys
string

Only restore data where the key matches a particular regular expression.

filterValues
string

Only restore data where the value matches a particular regular expression.

includeData
string

Restores only the data specified here.

excludeData
string

Skips restoring the data specified here.

mapData
string

Specified when you want to restore source data into a different location.

replaceTTL
string
Enum: "none" "all" "expired"

Sets a new expiration (time-to-live) value for the specified keys.

replaceTTLWith
string

Updates the expiration for the keys.

Responses

Request samples

Content type
application/json
{
  • "targetClusterID":