DataStax PCU API

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

Operations 12

POST /v2/pcus/actions/get Gets the PCU groups #
POST /v2/pcus/types Gets the PCU Types #
GET /v2/pcus/actions/get/{datacenterUUID} Gets the PCU Group that contains the Datacenter UUID #
DELETE /v2/pcus/{pcuGroupUUID} Deletes a PCU Group #
POST /v2/pcus Creates a PCU group #
PUT /v2/pcus Updates one or more PCU groups #
GET /v2/pcus/association/{pcuGroupUUID} Gets a PCU group UUID returns all associated datacenters and their status #
POST /v2/pcus/association/transfer Transfers a PCU group association #
POST /v2/pcus/association/{pcuGroupUUID}/{datacenterUUID} Creates a PCU group association #
DELETE /v2/pcus/association/{pcuGroupUUID}/{datacenterUUID} Deletes a PCU group association #
POST /v2/pcus/park/{pcuGroupUUID} Parks a PCU group #
POST /v2/pcus/unpark/{pcuGroupUUID} Unparks a PCU group #

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 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

datastax-pcu-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: 'Use this REST API to manage your DataStax Astra DB organizations and perform lifecycle actions for your Astra DB databases.


    To get started, use the /v2/clientIdSecrets endpoints to create a token to authenticate your API calls.'
  version: 2.3.0
  title: Astra DevOps 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
      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
      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:
  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'
  schemas:
    Errors:
      description: Errors is a collection of individual Error objects
      type: object
      required:
      - errors
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/Error'
    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
    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
    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
    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
    PCUGroupGetRequest:
      type: object
      description: PCU groups to get
      properties:
        pcuGroupUUIDs:
          type: array
          description: PCU group UIDs
          required: false
          items:
            type: string
            example: 1
    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
    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
    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'
    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
    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
  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