openapi: 3.1.0 info: title: CockroachDB Cloud APIKeys MaintenanceWindows API description: The CockroachDB Cloud API is a REST interface that provides programmatic access to manage the lifecycle of clusters within a CockroachDB Cloud organization. It enables developers and operators to create, configure, scale, and delete CockroachDB Serverless and Dedicated clusters without using the web console. The API supports cluster provisioning, node management, network authorization, customer-managed encryption keys, backup and restore, log and metric export, role management, and folder organization. Authentication is handled via bearer tokens, and the API is rate-limited to 10 requests per second per user. version: '2024-09-16' contact: name: Cockroach Labs Support url: https://support.cockroachlabs.com termsOfService: https://www.cockroachlabs.com/cloud-terms-and-conditions/ servers: - url: https://cockroachlabs.cloud description: CockroachDB Cloud Production Server security: - bearerAuth: [] tags: - name: MaintenanceWindows description: Configure maintenance windows and blackout periods for cluster upgrade scheduling. paths: /api/v1/clusters/{cluster_id}/maintenance-window: get: operationId: GetMaintenanceWindow summary: Get maintenance window description: Retrieves the maintenance window configuration for the specified cluster, defining when automatic upgrades and maintenance operations may occur. tags: - MaintenanceWindows parameters: - $ref: '#/components/parameters/clusterId' responses: '200': description: Maintenance window retrieved successfully. content: application/json: schema: $ref: '#/components/schemas/MaintenanceWindow' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' put: operationId: SetMaintenanceWindow summary: Set maintenance window description: Sets or replaces the maintenance window configuration for the specified cluster. tags: - MaintenanceWindows parameters: - $ref: '#/components/parameters/clusterId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MaintenanceWindow' responses: '200': description: Maintenance window set successfully. content: application/json: schema: $ref: '#/components/schemas/MaintenanceWindow' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' delete: operationId: DeleteMaintenanceWindow summary: Delete maintenance window description: Removes the maintenance window configuration from the specified cluster, reverting to the default maintenance schedule. tags: - MaintenanceWindows parameters: - $ref: '#/components/parameters/clusterId' responses: '200': description: Maintenance window deleted successfully. content: application/json: schema: $ref: '#/components/schemas/MaintenanceWindow' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' components: responses: BadRequest: description: The request body or parameters are invalid. content: application/json: schema: $ref: '#/components/schemas/Error' Unauthorized: description: Authentication credentials are missing or invalid. content: application/json: schema: $ref: '#/components/schemas/Error' NotFound: description: The requested resource was not found. content: application/json: schema: $ref: '#/components/schemas/Error' parameters: clusterId: name: cluster_id in: path required: true description: Unique identifier of the CockroachDB Cloud cluster. schema: type: string schemas: Error: type: object description: Standard error response returned by the API. properties: code: type: integer description: HTTP status code of the error. message: type: string description: Human-readable description of the error. details: type: array description: Additional detail objects providing error context. items: type: object MaintenanceWindow: type: object description: Defines the time window during which CockroachDB Cloud may perform automatic maintenance and version upgrade operations on a cluster. properties: day_of_week: type: integer description: Day of the week for maintenance. 0=Sunday, 6=Saturday. minimum: 0 maximum: 6 start_hour: type: integer description: Hour of day (UTC) when the maintenance window begins. minimum: 0 maximum: 23 securitySchemes: bearerAuth: type: http scheme: bearer description: Bearer token authentication. Generate a token in the CockroachDB Cloud Console under Organization Settings > API Access. externalDocs: description: CockroachDB Cloud API Documentation url: https://www.cockroachlabs.com/docs/cockroachcloud/cloud-api