Amazon DocumentDB Documentdb Cluster API

The Documentdb Cluster API from Amazon DocumentDB — 2 operation(s) for documentdb cluster.

GitHub OpenAPI

Operations 5

POST /cluster Create Cluster #
DELETE /cluster/{clusterArn} Delete Cluster #
GET /cluster/{clusterArn} Get Cluster #
PUT /cluster/{clusterArn} Update Cluster #
GET /clusters List Clusters #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/amazon-documentdb:amazon-documentdb-cluster-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

amazon-documentdb-cluster-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Amazon DocumentDB with MongoDB compatibility Cluster API
  version: '2014-10-31'
  description: Generated from AWS's published Smithy model for Amazon DocumentDB with MongoDB compatibility. 5 operation(s).
  contact:
    name: Amazon Web Services
    url: https://aws.amazon.com/contact-us/
  license:
    name: Apache 2.0
    identifier: Apache-2.0
    url: https://github.com/aws/api-models-aws/blob/main/LICENSE
servers:
- url: https://docdb-elastic.{region}.amazonaws.com
  variables:
    region:
      default: us-east-1
security:
- sigv4: []
paths:
  /cluster:
    post:
      operationId: CreateCluster
      summary: Create Cluster
      description: Creates a new Amazon DocumentDB elastic cluster and returns its cluster structure.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateClusterOutput'
        '403':
          description: AccessDeniedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedException'
        '409':
          description: ConflictException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConflictException'
        '500':
          description: InternalServerException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerException'
        '402':
          description: ServiceQuotaExceededException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceQuotaExceededException'
        '429':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
        '400':
          description: ValidationException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateClusterInput'
      tags:
      - Cluster
  /cluster/{clusterArn}:
    delete:
      operationId: DeleteCluster
      summary: Delete Cluster
      description: Delete an elastic cluster.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteClusterOutput'
        '403':
          description: AccessDeniedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedException'
        '409':
          description: ConflictException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConflictException'
        '500':
          description: InternalServerException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerException'
        '404':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
        '429':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
        '400':
          description: ValidationException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteClusterInput'
      tags:
      - Cluster
    get:
      operationId: GetCluster
      summary: Get Cluster
      description: Returns information about a specific elastic cluster.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetClusterOutput'
        '403':
          description: AccessDeniedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedException'
        '500':
          description: InternalServerException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerException'
        '404':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
        '429':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
        '400':
          description: ValidationException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetClusterInput'
      tags:
      - Cluster
    put:
      operationId: UpdateCluster
      summary: Update Cluster
      description: Modifies an elastic cluster. This includes updating admin-username/password, upgrading the API version,
        and setting up a backup window and maintenance window
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateClusterOutput'
        '403':
          description: AccessDeniedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedException'
        '409':
          description: ConflictException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConflictException'
        '500':
          description: InternalServerException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerException'
        '404':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
        '429':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
        '400':
          description: ValidationException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateClusterInput'
      tags:
      - Cluster
  /clusters:
    get:
      operationId: ListClusters
      summary: List Clusters
      description: Returns information about provisioned Amazon DocumentDB elastic clusters.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListClustersOutput'
        '403':
          description: AccessDeniedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedException'
        '500':
          description: InternalServerException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerException'
        '429':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
        '400':
          description: ValidationException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ListClustersInput'
      tags:
      - Cluster
components:
  securitySchemes:
    sigv4:
      type: apiKey
      in: header
      name: Authorization
      description: AWS Signature Version 4. The Authorization header carries an AWS4-HMAC-SHA256 signature over the canonical
        request, with X-Amz-Date (and X-Amz-Security-Token for temporary credentials). Not a bearer token.
      x-aws-sigv4:
        signingName: docdb-elastic
  schemas:
    AccessDeniedException:
      type: object
      properties:
        message:
          type: string
          description: An error message explaining why access was denied.
      required:
      - message
    Cluster:
      type: object
      properties:
        clusterName:
          type: string
          description: The name of the elastic cluster.
        clusterArn:
          type: string
          description: The ARN identifier of the elastic cluster.
        status:
          type: string
          description: The status of the elastic cluster.
        clusterEndpoint:
          type: string
          description: The URL used to connect to the elastic cluster.
        createTime:
          type: string
          description: The time when the elastic cluster was created in Universal Coordinated Time (UTC).
        adminUserName:
          type: string
          description: The name of the elastic cluster administrator.
        authType:
          type: string
          description: The authentication type for the elastic cluster.
        shardCapacity:
          type: integer
          description: The number of vCPUs assigned to each elastic cluster shard. Maximum is 64. Allowed values are 2, 4,
            8, 16, 32, 64.
        shardCount:
          type: integer
          description: The number of shards assigned to the elastic cluster. Maximum is 32.
        vpcSecurityGroupIds:
          type: array
          items:
            type: string
          description: A list of EC2 VPC security groups associated with thie elastic cluster.
        subnetIds:
          type: array
          items:
            type: string
          description: The Amazon EC2 subnet IDs for the elastic cluster.
        preferredMaintenanceWindow:
          type: string
          description: 'The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).
            Format: ddd:hh24:mi-ddd:hh24:mi'
        kmsKeyId:
          type: string
          description: The KMS key identifier to use to encrypt the elastic cluster.
        shards:
          type: array
          items:
            $ref: '#/components/schemas/Shard'
          description: The total number of shards in the cluster.
        backupRetentionPeriod:
          type: integer
          description: The number of days for which automatic snapshots are retained.
        preferredBackupWindow:
          type: string
          description: The daily time range during which automated backups are created if automated backups are enabled, as
            determined by backupRetentionPeriod.
        shardInstanceCount:
          type: integer
          description: The number of replica instances applying to all shards in the cluster. A shardInstanceCount value of
            1 means there is one writer instance, and any additional instances are replicas that can be used for reads and
            to improve availability.
      required:
      - clusterName
      - clusterArn
      - status
      - clusterEndpoint
      - createTime
      - adminUserName
      - authType
      - shardCapacity
      - shardCount
      - vpcSecurityGroupIds
      - subnetIds
      - preferredMaintenanceWindow
      - kmsKeyId
    ClusterInList:
      type: object
      properties:
        clusterName:
          type: string
          description: The name of the elastic cluster.
        clusterArn:
          type: string
          description: The ARN identifier of the elastic cluster.
        status:
          type: string
          description: The status of the elastic cluster.
      required:
      - clusterName
      - clusterArn
      - status
    ConflictException:
      type: object
      properties:
        message:
          type: string
        resourceId:
          type: string
          description: The ID of the resource where there was an access conflict.
        resourceType:
          type: string
          description: The type of the resource where there was an access conflict.
      required:
      - message
      - resourceId
      - resourceType
    CreateClusterInput:
      type: object
      properties:
        clusterName:
          type: string
          description: 'The name of the new elastic cluster. This parameter is stored as a lowercase string. Constraints:
            Must contain from 1 to 63 letters, numbers, or hyphens. The first character must be a letter. Cannot end with
            a hyphen or contain two consecutive hyphens. Example: my-cluster'
        authType:
          type: string
          description: The authentication type used to determine where to fetch the password used for accessing the elastic
            cluster. Valid types are PLAIN_TEXT or SECRET_ARN.
        adminUserName:
          type: string
          description: 'The name of the Amazon DocumentDB elastic clusters administrator. Constraints: Must be from 1 to 63
            letters or numbers. The first character must be a letter. Cannot be a reserved word.'
        adminUserPassword:
          type: string
          description: 'The password for the Amazon DocumentDB elastic clusters administrator. The password can contain any
            printable ASCII characters. Constraints: Must contain from 8 to 100 characters. Cannot contain a forward slash
            (/), double quote ("), or the "at" symbol (@).'
        shardCapacity:
          type: integer
          description: The number of vCPUs assigned to each elastic cluster shard. Maximum is 64. Allowed values are 2, 4,
            8, 16, 32, 64.
        shardCount:
          type: integer
          description: The number of shards assigned to the elastic cluster. Maximum is 32.
        vpcSecurityGroupIds:
          type: array
          items:
            type: string
          description: A list of EC2 VPC security groups to associate with the new elastic cluster.
        subnetIds:
          type: array
          items:
            type: string
          description: The Amazon EC2 subnet IDs for the new elastic cluster.
        kmsKeyId:
          type: string
          description: The KMS key identifier to use to encrypt the new elastic cluster. The KMS key identifier is the Amazon
            Resource Name (ARN) for the KMS encryption key. If you are creating a cluster using the same Amazon account that
            owns this KMS encryption key, you can use the KMS key alias instead of the ARN as the KMS encryption key. If an
            encryption key is not specified, Amazon DocumentDB uses the default encryption key that KMS creates for your account.
            Your account has a different default encryption key for each Amazon Region.
        clientToken:
          type: string
          description: The client token for the elastic cluster.
        preferredMaintenanceWindow:
          type: string
          description: 'The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).
            Format: ddd:hh24:mi-ddd:hh24:mi Default: a 30-minute window selected at random from an 8-hour block of time for
            each Amazon Web Services Region, occurring on a random day of the week. Valid days: Mon, Tue, Wed, Thu, Fri, Sat,
            Sun Constraints: Minimum 30-minute window.'
        tags:
          type: object
          additionalProperties:
            type: string
          description: The tags to be assigned to the new elastic cluster.
        backupRetentionPeriod:
          type: integer
          description: The number of days for which automatic snapshots are retained.
        preferredBackupWindow:
          type: string
          description: The daily time range during which automated backups are created if automated backups are enabled, as
            determined by the backupRetentionPeriod.
        shardInstanceCount:
          type: integer
          description: The number of replica instances applying to all shards in the elastic cluster. A shardInstanceCount
            value of 1 means there is one writer instance, and any additional instances are replicas that can be used for
            reads and to improve availability.
      required:
      - clusterName
      - authType
      - adminUserName
      - adminUserPassword
      - shardCapacity
      - shardCount
    CreateClusterOutput:
      type: object
      properties:
        cluster:
          $ref: '#/components/schemas/Cluster'
      required:
      - cluster
    DeleteClusterInput:
      type: object
      properties:
        clusterArn:
          type: string
          description: The ARN identifier of the elastic cluster that is to be deleted.
      required:
      - clusterArn
    DeleteClusterOutput:
      type: object
      properties:
        cluster:
          $ref: '#/components/schemas/Cluster'
      required:
      - cluster
    GetClusterInput:
      type: object
      properties:
        clusterArn:
          type: string
          description: The ARN identifier of the elastic cluster.
      required:
      - clusterArn
    GetClusterOutput:
      type: object
      properties:
        cluster:
          $ref: '#/components/schemas/Cluster'
      required:
      - cluster
    InternalServerException:
      type: object
      properties:
        message:
          type: string
      required:
      - message
    ListClustersInput:
      type: object
      properties:
        nextToken:
          type: string
          description: A pagination token provided by a previous request. If this parameter is specified, the response includes
            only records beyond this token, up to the value specified by max-results. If there is no more data in the responce,
            the nextToken will not be returned.
        maxResults:
          type: integer
          description: The maximum number of elastic cluster snapshot results to receive in the response.
    ListClustersOutput:
      type: object
      properties:
        clusters:
          type: array
          items:
            $ref: '#/components/schemas/ClusterInList'
          description: A list of Amazon DocumentDB elastic clusters.
        nextToken:
          type: string
          description: A pagination token provided by a previous request. If this parameter is specified, the response includes
            only records beyond this token, up to the value specified by max-results. If there is no more data in the responce,
            the nextToken will not be returned.
    ResourceNotFoundException:
      type: object
      properties:
        message:
          type: string
          description: An error message describing the failure.
        resourceId:
          type: string
          description: The ID of the resource that could not be located.
        resourceType:
          type: string
          description: The type of the resource that could not be found.
      required:
      - message
      - resourceId
      - resourceType
    ServiceQuotaExceededException:
      type: object
      properties:
        message:
          type: string
      required:
      - message
    Shard:
      type: object
      properties:
        shardId:
          type: string
          description: The ID of the shard.
        createTime:
          type: string
          description: The time when the shard was created in Universal Coordinated Time (UTC).
        status:
          type: string
          description: The current status of the shard.
      required:
      - shardId
      - createTime
      - status
    ThrottlingException:
      type: object
      properties:
        message:
          type: string
        retryAfterSeconds:
          type: integer
          description: The number of seconds to wait before retrying the operation.
      required:
      - message
    UpdateClusterInput:
      type: object
      properties:
        clusterArn:
          type: string
          description: The ARN identifier of the elastic cluster.
        authType:
          type: string
          description: The authentication type used to determine where to fetch the password used for accessing the elastic
            cluster. Valid types are PLAIN_TEXT or SECRET_ARN.
        shardCapacity:
          type: integer
          description: The number of vCPUs assigned to each elastic cluster shard. Maximum is 64. Allowed values are 2, 4,
            8, 16, 32, 64.
        shardCount:
          type: integer
          description: The number of shards assigned to the elastic cluster. Maximum is 32.
        vpcSecurityGroupIds:
          type: array
          items:
            type: string
          description: A list of EC2 VPC security groups to associate with the elastic cluster.
        subnetIds:
          type: array
          items:
            type: string
          description: The Amazon EC2 subnet IDs for the elastic cluster.
        adminUserPassword:
          type: string
          description: 'The password associated with the elastic cluster administrator. This password can contain any printable
            ASCII character except forward slash (/), double quote ("), or the "at" symbol (@). Constraints: Must contain
            from 8 to 100 characters.'
        clientToken:
          type: string
          description: The client token for the elastic cluster.
        preferredMaintenanceWindow:
          type: string
          description: 'The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).
            Format: ddd:hh24:mi-ddd:hh24:mi Default: a 30-minute window selected at random from an 8-hour block of time for
            each Amazon Web Services Region, occurring on a random day of the week. Valid days: Mon, Tue, Wed, Thu, Fri, Sat,
            Sun Constraints: Minimum 30-minute window.'
        backupRetentionPeriod:
          type: integer
          description: The number of days for which automatic snapshots are retained.
        preferredBackupWindow:
          type: string
          description: The daily time range during which automated backups are created if automated backups are enabled, as
            determined by the backupRetentionPeriod.
        shardInstanceCount:
          type: integer
          description: The number of replica instances applying to all shards in the elastic cluster. A shardInstanceCount
            value of 1 means there is one writer instance, and any additional instances are replicas that can be used for
            reads and to improve availability.
      required:
      - clusterArn
    UpdateClusterOutput:
      type: object
      properties:
        cluster:
          $ref: '#/components/schemas/Cluster'
      required:
      - cluster
    ValidationException:
      type: object
      properties:
        message:
          type: string
          description: An error message describing the validation exception.
        reason:
          type: string
          description: The reason why the validation exception occurred (one of unknownOperation, cannotParse, fieldValidationFailed,
            or other).
        fieldList:
          type: array
          items:
            $ref: '#/components/schemas/ValidationExceptionField'
          description: A list of the fields in which the validation exception occurred.
      required:
      - message
      - reason
    ValidationExceptionField:
      type: object
      properties:
        name:
          type: string
          description: The name of the field where the validation exception occurred.
        message:
          type: string
          description: An error message describing the validation exception in this field.
      required:
      - name
      - message
x-provenance:
  method: harvested
  publisher: Amazon Web Services
  source: https://raw.githubusercontent.com/aws/api-models-aws/3cd98287b471c106254abd89279cc87308d38bfd/models/docdb-elastic/service/2022-11-28/docdb-elastic-2022-11-28.json
  note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)