openapi: 3.1.0 info: title: YugabyteDB Aeon REST Access Keys ReadReplicas API description: The YugabyteDB Aeon REST API provides programmatic access to YugabyteDB's fully managed cloud database service. Developers and operators can use it to deploy and manage database clusters, configure read replicas, schedule and execute on-demand backups and restores, manage IP allow lists, and set up monitoring and alerts. Authentication is performed using API keys passed as bearer tokens in the Authorization header. All paths are scoped to an account and project, which can be obtained from the YugabyteDB Aeon UI profile page. version: v1 contact: name: Yugabyte Support url: https://support.yugabyte.com termsOfService: https://www.yugabyte.com/yugabytedb-managed-service-terms/ x-generated-from: documentation x-source-url: https://api-docs.yugabyte.com/docs/managed-apis/ x-last-validated: '2026-05-03' servers: - url: https://cloud.yugabyte.com/api/public/v1 description: YugabyteDB Aeon Production Server security: - bearerAuth: [] tags: - name: ReadReplicas description: Manage read replicas for a cluster to serve low-latency read requests from remote regions without affecting the primary cluster workload. paths: /accounts/{accountId}/projects/{projectId}/clusters/{clusterId}/read-replicas: get: operationId: listReadReplicas summary: YugabyteDB Aeon List Read Replicas description: Returns all read replicas configured for the specified cluster. Read replicas allow routing read traffic to geographically distributed nodes to reduce latency for remote clients. tags: - ReadReplicas parameters: - $ref: '#/components/parameters/accountId' - $ref: '#/components/parameters/projectId' - $ref: '#/components/parameters/clusterId' responses: '200': description: List of read replicas returned successfully content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/ReadReplica' examples: ListReadReplicas200Example: summary: Default listReadReplicas 200 response x-microcks-default: true value: data: - id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 cloud_info: code: AWS region: us-east-1 cluster_info: num_nodes: 10 fault_tolerance: NONE cluster_tier: FREE yugabytedb_version: 2.20.0.0 state: ACTIVE '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: operationId: createReadReplica summary: YugabyteDB Aeon Create Read Replica description: Adds a read replica to the specified cluster in the configured cloud region. Read replicas serve read-only traffic and are asynchronously replicated from the primary cluster. tags: - ReadReplicas parameters: - $ref: '#/components/parameters/accountId' - $ref: '#/components/parameters/projectId' - $ref: '#/components/parameters/clusterId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ReadReplicaSpec' examples: CreateReadReplicaRequestExample: summary: Default createReadReplica request x-microcks-default: true value: cloud_info: code: AWS region: us-east-1 cluster_info: num_nodes: 10 fault_tolerance: NONE cluster_tier: FREE node_info: num_cores: 10 memory_mb: 100 disk_size_gb: 10 yugabytedb_version: 2.20.0.0 responses: '200': description: Read replica creation initiated successfully content: application/json: schema: $ref: '#/components/schemas/ReadReplica' examples: CreateReadReplica200Example: summary: Default createReadReplica 200 response x-microcks-default: true value: id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 cloud_info: code: AWS region: us-east-1 cluster_info: num_nodes: 10 fault_tolerance: NONE cluster_tier: FREE node_info: num_cores: 10 memory_mb: 100 disk_size_gb: 10 yugabytedb_version: 2.20.0.0 state: ACTIVE '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: operationId: deleteReadReplica summary: YugabyteDB Aeon Delete Read Replica description: Removes all read replicas from the specified cluster. This operation is irreversible and immediately terminates read replica nodes. tags: - ReadReplicas parameters: - $ref: '#/components/parameters/accountId' - $ref: '#/components/parameters/projectId' - $ref: '#/components/parameters/clusterId' responses: '200': description: Read replica deletion initiated successfully '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK components: parameters: accountId: name: accountId in: path required: true description: The unique identifier of the YugabyteDB Aeon account. schema: type: string format: uuid example: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 clusterId: name: clusterId in: path required: true description: The unique identifier of the cluster. schema: type: string format: uuid example: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 projectId: name: projectId in: path required: true description: The unique identifier of the project within the account. schema: type: string format: uuid example: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 schemas: ReadReplica: type: object description: A read replica configuration attached to a primary cluster. properties: id: type: string format: uuid description: Unique identifier for the read replica. example: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 cloud_info: $ref: '#/components/schemas/CloudInfo' cluster_info: $ref: '#/components/schemas/ClusterInfo' state: type: string description: Current operational state of the read replica. enum: - ACTIVE - CREATING - DELETING - FAILED example: ACTIVE ErrorResponse: type: object description: Standard error response returned by the API on failure. properties: error: type: object properties: code: type: string description: Machine-readable error code. example: OK message: type: string description: Human-readable description of the error. example: Example message status: type: integer description: HTTP status code. example: 100 example: code: OK message: Example message status: 100 ClusterInfo: type: object description: Compute and storage configuration for a cluster. properties: num_nodes: type: integer description: Number of nodes in the cluster. Must be a multiple of the replication factor. minimum: 1 example: 10 fault_tolerance: type: string description: Fault tolerance level determining replication factor and quorum settings. enum: - NONE - NODE - ZONE - REGION example: NONE cluster_tier: type: string description: Cluster tier controlling available features and node sizes. enum: - FREE - DEDICATED example: FREE node_info: $ref: '#/components/schemas/NodeInfo' yugabytedb_version: type: string description: YugabyteDB software version to deploy on the cluster. example: 2.20.0.0 ReadReplicaSpec: type: object description: Specification for creating a read replica on a cluster. required: - cloud_info - cluster_info properties: cloud_info: $ref: '#/components/schemas/CloudInfo' cluster_info: $ref: '#/components/schemas/ClusterInfo' NodeInfo: type: object description: Per-node compute and storage resource allocation. properties: num_cores: type: integer description: Number of vCPU cores per node. example: 10 memory_mb: type: integer description: Memory in megabytes per node. example: 100 disk_size_gb: type: integer description: Storage disk size in gigabytes per node. example: 10 CloudInfo: type: object description: Cloud provider and region configuration for a cluster. properties: code: type: string description: Cloud provider code. enum: - AWS - GCP - AZURE example: AWS region: type: string description: Cloud provider region identifier (e.g., us-east-1 for AWS, us-east1 for GCP, eastus for Azure). example: us-east-1 responses: NotFound: description: The requested resource was not found. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: NotFoundExample: summary: Default NotFound response x-microcks-default: true value: error: code: OK message: Example message status: 100 BadRequest: description: The request was malformed or contained invalid parameters. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: BadRequestExample: summary: Default BadRequest response x-microcks-default: true value: error: code: OK message: Example message status: 100 Unauthorized: description: The API key is missing, invalid, or expired. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: UnauthorizedExample: summary: Default Unauthorized response x-microcks-default: true value: error: code: OK message: Example message status: 100 securitySchemes: bearerAuth: type: http scheme: bearer description: API key obtained from the YugabyteDB Aeon UI under User Profile > API Keys. Pass the key as a Bearer token in the Authorization header. externalDocs: description: YugabyteDB Aeon REST API Documentation url: https://docs.yugabyte.com/stable/yugabyte-cloud/managed-automation/managed-api/