DataStax PCU API

Use the DevOps API to manage provisioned capacity units for eligible organizations and databases.

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/datastax-pcu-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

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

OpenAPI Specification

datastax-pcu-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  description: Use this REST API to manage your DataStax Astra DB organizations and perform lifecycle actions for your Astra DB databases.</br> </br> To get started, use the /v2/clientIdSecrets endpoints to create a token to authenticate your API calls.
  version: 2.3.0
  title: Astra DevOps Access List PCU API
  contact:
    email: ad-astra@datastax.com
servers:
- url: https://api.astra.datastax.com/
security:
- BearerAuth:
  - org-admin
  - org-db-create
  - org-db-terminate
  - org-db-view
  - org-db-expand
  - org-db-suspend
  - org-db-addpeering
  - org-db-readpeering
  - db-keyspace-create
  - db-cql
  - accesslist-write
  - accesslist-read
  - db-manage-privateendpoint
  - db-manage-telemetry
  - db-manage-backupconfiguration
tags:
- name: PCU
  description: Use the DevOps API to manage provisioned capacity units for eligible organizations and databases.
paths:
  /v2/pcus/actions/get:
    post:
      tags:
      - PCU
      summary: Gets the PCU groups
      description: Gets the PCU groups
      operationId: pcuGet
      requestBody:
        description: PCU group UUIDs
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PCUGroupGetRequest'
      responses:
        '200':
          description: Returns the PCU group
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PCUGroup'
        '400':
          $ref: '#/components/responses/BadRequest'
        5XX:
          $ref: '#/components/responses/ServerError'
  /v2/pcus/types:
    post:
      tags:
      - PCU
      summary: Gets the PCU Types
      description: Gets the PCU Types
      operationId: pcuGetTypes
      requestBody:
        description: PCU Types request
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PCUGroupTypesRequest'
      responses:
        '200':
          description: Returns the PCU Types
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PCUGroupTypeResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        5XX:
          $ref: '#/components/responses/ServerError'
  /v2/pcus/actions/get/{datacenterUUID}:
    get:
      tags:
      - PCU
      summary: Gets the PCU Group that contains the Datacenter UUID
      description: Given datacenter UUID it retrieves the PCU Group that this datacenter belongs to, if any
      operationId: pcuGroupGetByDatacenterUUID
      parameters:
      - in: path
        name: datacenterUUID
        required: true
        description: The DatacenterUUID we want the PCU Group for
        schema:
          type: string
      responses:
        '200':
          description: Returns the PCU Group
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PCUGroup'
        '400':
          $ref: '#/components/responses/BadRequest'
        5XX:
          $ref: '#/components/responses/ServerError'
  /v2/pcus/{pcuGroupUUID}:
    delete:
      tags:
      - PCU
      summary: Deletes a PCU Group
      description: Deletes a flexible capacity PCU group, based on the given PCU Group UUID.
      operationId: pcuDelete
      parameters:
      - in: path
        name: pcuGroupUUID
        required: true
        description: The PCU Group UUID to delete
        schema:
          type: string
      responses:
        '200':
          description: PCU Group deleted
        '400':
          $ref: '#/components/responses/BadRequest'
        5XX:
          $ref: '#/components/responses/ServerError'
  /v2/pcus:
    post:
      tags:
      - PCU
      summary: Creates a PCU group
      description: Given PCU group information, creates a PCU group
      operationId: pcuCreate
      requestBody:
        description: PCU group model.
        required: true
        content:
          application/json:
            schema:
              type: array
              minItems: 1
              maxItems: 1
              items:
                $ref: '#/components/schemas/PCUGroupCreateRequest'
      responses:
        '201':
          description: Returns the created PCU groups
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PCUGroup'
        '400':
          $ref: '#/components/responses/BadRequest'
        5XX:
          $ref: '#/components/responses/ServerError'
    put:
      tags:
      - PCU
      summary: Updates one or more PCU groups
      description: Given PCU group information, updates the PCU groups
      operationId: pcuUpdate
      requestBody:
        description: PCU Group model.
        required: true
        content:
          application/json:
            schema:
              type: array
              minItems: 1
              maxItems: 1
              items:
                $ref: '#/components/schemas/PCUGroupUpdateRequest'
      responses:
        '200':
          description: PCU groups updated
        '400':
          $ref: '#/components/responses/BadRequest'
        5XX:
          $ref: '#/components/responses/ServerError'
  /v2/pcus/association/{pcuGroupUUID}:
    get:
      tags:
      - PCU
      summary: Gets a PCU group UUID returns all associated datacenters and their status
      description: Given a PCU group UUID, returns all associated datacenters and their status
      operationId: pcuAssociationGet
      parameters:
      - in: path
        name: pcuGroupUUID
        required: true
        description: The PCU group UUID to get the associated datacenters and their status
        schema:
          type: string
      responses:
        '200':
          description: Returns the associated datacenters and their status
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PCUAssociation'
        '400':
          $ref: '#/components/responses/BadRequest'
        5XX:
          $ref: '#/components/responses/ServerError'
  /v2/pcus/association/transfer:
    post:
      tags:
      - PCU
      summary: Transfers a PCU group association
      description: Transfers a database, specified by datacenter ID, from one PCU group to another.
      operationId: pcuAssociationTransfer
      requestBody:
        description: PCUAssociation Transfer Request.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PCUAssociationTransferRequest'
      responses:
        '202':
          description: Successfully accepted the PCU Association Transfer request
        '400':
          $ref: '#/components/responses/BadRequest'
        5XX:
          $ref: '#/components/responses/ServerError'
  /v2/pcus/association/{pcuGroupUUID}/{datacenterUUID}:
    post:
      tags:
      - PCU
      summary: Creates a PCU group association
      description: Given PCU group UUID and datacenter UUID, creates a PCU group association
      operationId: pcuAssociationCreate
      parameters:
      - in: path
        name: pcuGroupUUID
        required: true
        description: The PCU group UUID part of this association
        schema:
          type: string
      - in: path
        name: datacenterUUID
        required: true
        description: The datacenter UUID part of this association
        schema:
          type: string
      responses:
        '201':
          description: Created PCU association
        '400':
          $ref: '#/components/responses/BadRequest'
        5XX:
          $ref: '#/components/responses/ServerError'
    delete:
      tags:
      - PCU
      summary: Deletes a PCU group association
      description: Given datacenter UUID and PCU group UUID, delete the association
      operationId: pcuAssociationDelete
      parameters:
      - in: path
        name: pcuGroupUUID
        required: true
        description: The PCU group UUID part of this association
        schema:
          type: string
      - in: path
        name: datacenterUUID
        required: true
        description: The datacenter UUID part of this association
        schema:
          type: string
      responses:
        '200':
          description: PCU association deleted
        '400':
          $ref: '#/components/responses/BadRequest'
        5XX:
          $ref: '#/components/responses/ServerError'
  /v2/pcus/park/{pcuGroupUUID}:
    post:
      tags:
      - PCU
      summary: Parks a PCU group
      description: Parks a flexible capacity PCU group
      operationId: pcuGroupPark
      parameters:
      - in: path
        name: pcuGroupUUID
        required: true
        description: The PCU Group UUID to park
        schema:
          type: string
      responses:
        '200':
          description: Successfully initialized the parking operation
        '400':
          $ref: '#/components/responses/BadRequest'
        5XX:
          $ref: '#/components/responses/ServerError'
  /v2/pcus/unpark/{pcuGroupUUID}:
    post:
      tags:
      - PCU
      summary: Unparks a PCU group
      description: Unparks a flexible capacity PCU group
      operationId: pcuGroupUnpark
      parameters:
      - in: path
        name: pcuGroupUUID
        required: true
        description: The PCU Group UUID to unpark
        schema:
          type: string
      responses:
        '200':
          description: Successfully initialized the unparking operation
        '400':
          $ref: '#/components/responses/BadRequest'
        5XX:
          $ref: '#/components/responses/ServerError'
components:
  schemas:
    PCUGroupUpdateRequest:
      type: object
      description: PCU Group Update Request Model
      properties:
        pcuGroupUUID:
          type: string
          description: UUID of the PCU group to update
          example: 9aaddbb5-4622-447c-9bc5-b036bb9d7ed8
        title:
          type: string
          description: Title of the PCU group
          example: some title
        instanceType:
          type: string
          description: Instance type of the PCU group
          example: standard
        provisionType:
          type: string
          description: Provision type of the PCU group
          example: shared
        min:
          type: integer
          description: Minimum shared hourly PCUs in the PCU group
          example: 1
        max:
          type: integer
          description: Maximum shared hourly PCUs in the PCU group
          example: 1
        reserved:
          type: integer
          description: Absolute required PCUs in the PCU group
          example: 1
        description:
          type: string
          description: Description of the PCU group
          example: some-description
    PCUGroupTypesRequest:
      type: object
      description: This object is used to fetch the types available for PCU Group
      properties:
        region:
          type: string
          description: region for which to get the PCU Group types
          example: eu-west1
        provider:
          type: string
          description: provider (cloud) to filter the PCU Group sizes by
          example: shared
    PCUAssociation:
      type: object
      description: PCUAssociation information
      properties:
        datacenterUUID:
          type: string
          description: Datacenter UUID of the PCU association
          example: 48de8fc3-b8ec-4ed2-8951-4aeaf4c9e626
        pcuGroupUUID:
          type: string
          description: PCU group this association belongs to
          example: 48de8fc3-b8ec-4ed2-8951-4aeaf4c9e626
        provisioningStatus:
          type: string
          description: Provisioning status of the PCU association
          example: Accepted
        createdAt:
          type: string
          description: Creation time of the PCU association
          example: '2021-06-01T12:00:00.000Z'
        updatedAt:
          type: string
          description: Update time of the PCU association
          example: '2021-06-01T12:00:00.000Z'
        createdBy:
          type: string
          description: User who created the PCU association
          example: user
        updatedBy:
          type: string
          description: User who updated the PCU association
          example: user
    PCUGroup:
      type: object
      description: PCU Group Model
      properties:
        uuid:
          type: string
          description: UUID of the PCU group
          example: 9aaddbb5-4622-447c-9bc5-b036bb9d7ed8
        orgId:
          type: string
          description: Organization ID
          example: org-id
        title:
          type: string
          description: Title of the PCU group
          example: some title
        cloudProvider:
          type: string
          description: Cloud provider of the PCU group
          example:
          - AWS
          - GCP
          - AZURE
        region:
          type: string
          description: Region of the PCU group
          example: us-east-1
        instanceType:
          type: string
          description: Instance type of the PCU group
          example: standard
        pcuType:
          $ref: '#/components/schemas/PCUGroupTypeResponse'
        provisionType:
          type: string
          description: Provision type of the PCU group
          example: shared
        min:
          type: integer
          description: Minimum shared hourly PCUs in the PCU group
          example: 1
        max:
          type: integer
          description: Maximum shared hourly PCUs in the PCU group
          example: 1
        reserved:
          type: integer
          description: Absolute required PCUs in the PCU group
          example: 1
        description:
          type: string
          description: Description of the PCU group
          example: some description
        createdAt:
          type: string
          description: Creation time of the PCU group
          example: '2021-06-01T12:00:00.000Z'
        updatedAt:
          type: string
          description: Update time of the PCU group
          example: '2021-06-01T12:00:00.000Z'
        createdBy:
          type: string
          description: User who created the PCU group
          example: user
        updatedBy:
          type: string
          description: User who updated the PCU group
          example: user
        status:
          type: string
          description: Status of the PCU Group
          example: INITIALIZING
    PCUGroupGetRequest:
      type: object
      description: PCU groups to get
      properties:
        pcuGroupUUIDs:
          type: array
          description: PCU group UIDs
          required: false
          items:
            type: string
            example: 1
    Error:
      description: ModelError information that is returned to users
      type: object
      required:
      - id
      - message
      properties:
        ID:
          type: integer
          example: 123
          description: API specific error code
        message:
          type: string
          example: Something is broken
          description: User-friendly description of error
    PCUGroupTypeResponse:
      type: object
      description: This object is used for the response of the PCU Group types request
      properties:
        type:
          type: string
          description: the size of the PCU Group type given the PCU Group types request
          example: standard
        region:
          type: string
          description: the region of that PCU Group type given the PCU Group types request
          example: eu-west-1
        provider:
          type: string
          description: the provider (cloud) of the PCU Group type given the PCU Group types request
          example: aws
        details:
          $ref: '#/components/schemas/PCUGroupTypeDetails'
    PCUAssociationTransferRequest:
      type: object
      description: PCU association transfer
      properties:
        fromPCUGroupUUID:
          type: string
          description: The PCU Group UUID from which we want to move an association
          example: 48de8fc3-b8ec-4ed2-8951-4aeaf4c9e626
        toPCUGroupUUID:
          type: string
          description: The PCU Group UUID to which we want to move the association
          example: 48de8fc3-b8ec-4ed2-8951-4aeaf4c9e626
        datacenterUUID:
          type: string
          description: The Datacenter UUID that is part of the fromPCUGroupUUID which we want to move to the toPCUGroupUUID
          example: 48de8fc3-b8ec-4ed2-8951-4aeaf4c9e626-1
    Errors:
      description: Errors is a collection of individual Error objects
      type: object
      required:
      - errors
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/Error'
    PCUGroupCreateRequest:
      type: object
      description: PCU Group Create Request Model
      properties:
        orgID:
          type: string
          description: OrganizationID of the PCU group, ignored for authenticated users
          example: some-org
        title:
          type: string
          description: Title of the PCU group
          example: some title
        cloudProvider:
          type: string
          description: Cloud provider of the PCU group
          example:
          - AWS
          - GCP
          - AZURE
        region:
          type: string
          description: Region of the PCU group
          example: us-east-1
        instanceType:
          type: string
          description: Instance type of the PCU group
          example: standard
        provisionType:
          type: string
          description: Provision type of the PCU group
          example: shared
        min:
          type: integer
          description: Minimum shared hourly PCUs in the PCU group
          example: 1
        max:
          type: integer
          description: Maximum shared hourly PCUs in the PCU group
          example: 1
        reserved:
          type: integer
          description: Absolute required PCUs in the PCU group
          example: 1
        description:
          type: string
          description: Description of the PCU group
          example: some-description
    PCUGroupTypeDetails:
      type: object
      description: This object holds the details regarding the PCU Type
      properties:
        vCPU:
          type: integer
          format: int32
          description: vCPUs for this pcu type
        memory:
          type: string
          description: memory for this pcu type
        disk_cache:
          type: string
          description: disk cache for this pcu type
  responses:
    ServerError:
      description: A server error occurred
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Errors'
    BadRequest:
      description: Bad request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Errors'
  securitySchemes:
    BearerAuth:
      description: An application token must be passed in header in order to access the API. https://docs.datastax.com/en/astra-db-serverless/administration/manage-application-tokens.html
      type: http
      scheme: bearer