### Backup Instance Schema Source: https://api.clickhouse.cloud/v1/v1 Defines the properties of a single backup instance, including its unique ID, current status, associated service, and timestamps for start and finish, along with its size. ```APIDOC Backup: properties: id: description: Unique backup ID. type: string format: uuid status: description: "Status of the backup: 'done', 'error', 'in_progress'." type: string enum: - done - error - in_progress serviceId: description: Name type: string startedAt: description: Backup start timestamp. ISO-8601. type: string format: date-time finishedAt: description: Backup finish timestamp. ISO-8601. Available only for finished backups type: string format: date-time sizeInBytes: ``` -------------------------------- ### Backup Configuration Schema Source: https://api.clickhouse.cloud/v1/v1 Defines the properties for configuring automated backups, including the interval between backups, retention period, and a specific start time. ```APIDOC Backup configuration: properties: backupPeriodInHours: description: The interval in hours between each backup. type: number backupRetentionPeriodInHours: description: The minimum duration in hours for which the backups are available. type: number backupStartTime: description: The time in HH:MM format for the backups to be performed (evaluated in UTC timezone). When defined the backup period resets to every 24 hours. type: string ``` -------------------------------- ### List Organization Services API (GET) Source: https://api.clickhouse.cloud/v1/v1 Returns a list of all services associated with a given organization. The response includes status, request ID, and an array of service details. An error response is provided for client-side issues. ```APIDOC Endpoint: /v1/organizations/{organizationId}/services Method: GET summary: List of organization services description: Returns a list of all services in the organization. parameters: - in: path name: organizationId description: ID of the requested organization. required: true schema: type: string format: uuid responses: 200: description: Successful response content: application/json: schema: type: object properties: status: type: number description: HTTP status code. example: 200 requestId: type: string description: Unique id assigned to every request. UUIDv4 format: uuid result: type: array # ... (schema truncated in source) ``` -------------------------------- ### API Schema: BackupConfigurationPatchRequest Source: https://api.clickhouse.cloud/v1/v1 Defines the request structure for patching a service's backup configuration. It allows setting backup frequency, retention period, and a specific start time. ```APIDOC BackupConfigurationPatchRequest: backupPeriodInHours: number (The interval in hours between each backup.) backupRetentionPeriodInHours: number (The minimum duration in hours for which the backups are available.) backupStartTime: string (The time in HH:MM format for the backups to be performed (evaluated in UTC timezone). When defined the backup period resets to every 24 hours.) ``` -------------------------------- ### API Schema: ClickPipeStatePatchRequest Source: https://api.clickhouse.cloud/v1/v1 Defines the request body for changing the state of a ClickPipe, supporting commands like 'start', 'stop', or 'resync'. ```APIDOC ClickPipeStatePatchRequest: properties: command: description: Command to change the state: 'start', 'stop', 'resync'. type: string enum: - start - stop - resync ``` -------------------------------- ### Update ClickPipe Operational State API Source: https://api.clickhouse.cloud/v1/v1 This API endpoint allows starting, stopping, or resyncing a specific ClickPipe. It is in beta with a stable contract. Requires organization, service, and ClickPipe IDs in the path, and a request body for the state patch. Resyncing is specific to Postgres pipes. ```APIDOC PATCH /v1/organizations/{organizationId}/services/{serviceId}/clickpipes/{clickPipeId}/state Summary: Update ClickPipe state Description: This endpoint is in beta. API contract is stable, and no breaking changes are expected in the future. Start, stop or resync ClickPipe. Stopping a ClickPipe will stop the ingestion process from any state. Starting is allowed for ClickPipes in the "Stopped" state or with a "Failed" state. Resyncing is only for Postgres pipes and can be done from any state. Parameters: - organizationId (path, string, uuid, required): ID of the organization that owns the service. - serviceId (path, string, uuid, required): ID of the service that owns the ClickPipe. - clickPipeId (path, string, uuid, required): ID of the ClickPipe to update state. Request Body (application/json): Schema: #/components/schemas/ClickPipeStatePatchRequest Responses: 200 OK (application/json): Description: Successful response Schema: type: object properties: {} ``` -------------------------------- ### GET /v1/organizations/{organizationId}/services/{serviceId}/clickpipes/{clickPipeId} API Source: https://api.clickhouse.cloud/v1/v1 This endpoint is in beta. API contract is stable, and no breaking changes are expected in the future. Returns the specified ClickPipe, requiring organization, service, and ClickPipe IDs as path parameters. It provides a successful response with ClickPipe details or a 400 error for client-side issues. ```APIDOC Endpoint: /v1/organizations/{organizationId}/services/{serviceId}/clickpipes/{clickPipeId} Method: GET Summary: Get ClickPipe Description: This endpoint is in beta. API contract is stable, and no breaking changes are expected in the future. Returns the specified ClickPipe. Parameters: - organizationId (string, path): ID of the organization that owns the service. (Required: Yes, Format: uuid) - serviceId (string, path): ID of the service that owns the ClickPipe. (Required: Yes, Format: uuid) - clickPipeId (string, path): ID of the requested ClickPipe. (Required: Yes, Format: uuid) Responses: - 200 (Successful response): Schema: type: object properties: status: type: number description: HTTP status code. example: 200 requestId: type: string description: Unique id assigned to every request. UUIDv4 format: uuid result: $ref: #/components/schemas/ClickPipe - 400 (The server cannot or will not process the request due to something that is perceived to be a client error.): Schema: type: object properties: status: type: number description: HTTP status code. example: 400 error: type: string description: Detailed error description. Tags: beta ``` -------------------------------- ### List Organization Invitations API (GET) Source: https://api.clickhouse.cloud/v1/v1 This API endpoint retrieves a list of all pending invitations for a specific organization. It requires the `organizationId` as a path parameter to specify which organization's invitations to fetch. A successful request returns a 200 status with a list of invitations, while client-side errors (e.g., invalid organization ID) result in a 400 status. ```APIDOC "/v1/organizations/{organizationId}/invitations": { "get": { "summary": "List all invitations", "description": "Returns list of all organization invitations.", "parameters": [ { "in": "path", "name": "organizationId", "description": "ID of the requested organization.", "required": true, "schema": { "type": "string", "format": "uuid" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "status": { "type": "number", "description": "HTTP status code.", "example": 200 }, "requestId": { "type": "string", "description": "Unique id assigned to every request. UUIDv4", "format": "uuid" } } } } } } } } } ``` -------------------------------- ### ClickPipe Object Storage Source Schema for Creation (POST) Source: https://api.clickhouse.cloud/v1/v1 Defines the schema for creating a new ClickPipe Object Storage source, including properties for source type, file format, URL with wildcards, delimiter, compression, continuous ingestion, and authentication details. ```APIDOC { "ClickPipePostObjectStorageSource": { "properties": { "type": { "description": "Type of the ObjectStorage source.", "type": "string", "enum": [ "s3", "gcs", "dospaces" ] }, "format": { "description": "Format of the files.", "type": "string", "enum": [ "JSONEachRow", "CSV", "CSVWithNames", "Parquet", "Avro" ] }, "url": { "description": "Provide a path to the file(s) you want to ingest. You can specify multiple files using bash-like wildcards. For more information, see the documentation on using wildcards in path: https://clickhouse.com/docs/en/integrations/clickpipes/object-storage#limitations", "type": "string", "example": "https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz" }, "delimiter": { "description": "Delimiter used in the files.", "nullable": true, "type": "string", "example": "," }, "compression": { "description": "Compression algorithm used for the files.", "nullable": true, "type": "string", "enum": [ "gzip", "gz", "brotli", "br", "xz", "LZMA", "zstd", "auto" ], "example": "auto" }, "isContinuous": { "description": "If set to true, the pipe will continuously read new files from the source. If set to false, the pipe will read the files only once. New files have to be uploaded lexically order.", "nullable": true, "type": "boolean" }, "authentication": { "description": "Authentication method. If not provided, no authentication is used. It can be used to access public buckets.", "nullable": true, "type": "string", "enum": [ "IAM_ROLE", "IAM_USER" ] }, "iamRole": { "description": "IAM role to be used with IAM role authentication. Read more in ClickPipes documentation: https://clickhouse.com/docs/en/integrations/clickpipes/object-storage#authentication", "nullable": true, "type": "string", "example": "arn:aws:iam::123456789012:role/MyRole" }, "accessKey": { "oneOf": [ { "$ref": "#/components/schemas/MSK IAM user" } ], "nullable": true } } } } ``` -------------------------------- ### Get Organization Member Details API Endpoint Source: https://api.clickhouse.cloud/v1/v1 Documents the GET method for retrieving a single organization member's details. It specifies path parameters for organization and user IDs, and outlines the successful (200) and error (400) response structures. ```APIDOC Path: /v1/organizations/{organizationId}/members/{userId} Method: GET Summary: Get member details Description: Returns a single organization member details. Parameters: - in: path name: organizationId description: ID of the organization the member is part of. required: true schema: type: string format: uuid - in: path name: userId description: ID of the requested user. required: true schema: type: string format: uuid Responses: 200: description: Successful response content: application/json: schema: type: object properties: status: type: number description: HTTP status code. example: 200 requestId: type: string description: Unique id assigned to every request. UUIDv4 format: uuid result: $ref: #/components/schemas/Member 400: description: The server cannot or will not process the request due to something that is perceived to be a client error. content: application/json: schema: type: object properties: status: type: number description: HTTP status code. example: 400 error: type: string description: Detailed error description. ``` -------------------------------- ### Get Organization Prometheus Metrics API (GET) Source: https://api.clickhouse.cloud/v1/v1 Retrieves Prometheus metrics for all services within a specified organization. This endpoint supports filtering metrics via a query parameter. It returns plain text metrics on success or a JSON error object on failure. ```APIDOC Endpoint: /v1/organizations/{organizationId}/prometheus Method: GET summary: Get organization metrics description: Returns prometheus metrics for all services in an organization. parameters: - in: path name: organizationId description: ID of the requested organization. required: true schema: type: string format: uuid - in: query name: filtered_metrics description: Return a filtered list of Prometheus metrics. schema: type: string format: boolean responses: 200: description: Successful response content: text/plain: schema: type: string 400: description: The server cannot or will not process the request due to something that is perceived to be a client error. content: application/json: schema: type: object properties: status: type: number description: HTTP status code. example: 400 error: type: string description: Detailed error description. ``` -------------------------------- ### Get Organization Activity by ID Source: https://api.clickhouse.cloud/v1/v1 Returns a single organization activity by ID. ```APIDOC GET /v1/organizations/{organizationId}/activities/{activityId} Summary: Organization activity Description: Returns a single organization activity by ID. Parameters: - organizationId (path): ID of the requested organization. (string, uuid, required) - activityId (path): ID of the requested activity. (string, required) Responses: 200 OK: Successful response Schema: status (number): HTTP status code. (example: 200) requestId (string, uuid): Unique id assigned to every request. UUIDv4 result ($ref): #/components/schemas/Activity 400 Bad Request: The server cannot or will not process the request due to something that is perceived to be a client error. Schema: status (number): HTTP status code. (example: 400) error (string): Detailed error description. ``` -------------------------------- ### APIDOC: ClickPipe Postgres Replication and Snapshot Settings Source: https://api.clickhouse.cloud/v1/v1 Defines various settings for replication and snapshot behavior when configuring a ClickHouse pipe from a PostgreSQL source. These properties control how data is replicated and how initial snapshots are performed. ```APIDOC replicationMode: string (enum: cdc, snapshot, cdc_only) - Replication mode to use for the pipe. replicationSlotName: string - Replication slot name to use for replication. allowNullableColumns: boolean - Allow nullable columns in the destination table. initialLoadParallelism: number - Number of parallel tables to sync during initial load. snapshotNumRowsPerPartition: number - Number of rows to snapshot per partition. snapshotNumberOfParallelTables: number - Number of parallel tables to snapshot. ``` -------------------------------- ### GET Reverse Private Endpoint by ID Source: https://api.clickhouse.cloud/v1/v1 Retrieve a specific reverse private endpoint by its ID. ```APIDOC GET /v1/organizations/{organizationId}/services/{serviceId}/clickpipesReversePrivateEndpoints/{reversePrivateEndpointId} ``` -------------------------------- ### API Schema: ClickPipePostSource Source: https://api.clickhouse.cloud/v1/v1 Defines the source configuration for creating a new ClickPipe, supporting Kafka, Object Storage, Kinesis, and Postgres sources, with an option to validate data samples. ```APIDOC ClickPipePostSource: properties: kafka: oneOf: - $ref: #/components/schemas/ClickPipePostKafkaSource nullable: true objectStorage: oneOf: - $ref: #/components/schemas/ClickPipePostObjectStorageSource nullable: true kinesis: oneOf: - $ref: #/components/schemas/ClickPipePostKinesisSource nullable: true postgres: $ref: #/components/schemas/ClickPipeMutatePostgresSource validateSamples: description: Validate data samples received from data source. It will validate the connection and data availability and correctness. If not enabled, only connection will be validated. This has no effect on Postgres pipes, they always only validate the connection and table definitions. This is experimental and can be removed in the future. type: boolean ``` -------------------------------- ### Get Backup Details Source: https://api.clickhouse.cloud/v1/v1 Retrieves detailed information for a single specific backup using its ID. ```APIDOC GET /v1/organizations/{organizationId}/services/{serviceId}/backups/{backupId} Summary: Get backup details Description: Returns a single backup info. Parameters: - organizationId (path, string, uuid, required): ID of the organization that owns the backup. ``` -------------------------------- ### API Schema: ClickPipeScaling Source: https://api.clickhouse.cloud/v1/v1 Defines parameters for scaling ClickPipe instances, including the number of replicas for scalable pipes and concurrency for S3 pipes. ```APIDOC ClickPipeScaling: properties: replicas: description: Desired number of replicas. Only for scalable pipes. type: integer concurrency: description: Desired number of concurrency. Only for S3 pipes. If set to 0, concurrency is auto-scaled based on the cluster memory. type: integer ``` -------------------------------- ### API Schema: ServiceStatePatchRequest Properties Source: https://api.clickhouse.cloud/v1/v1 Defines the command to change the state of a ClickHouse Cloud service, allowing it to be started or stopped. ```APIDOC ServiceStatePatchRequest: command: string, Command to change the state: 'start', 'stop'. Enum: ["start", "stop"] ``` -------------------------------- ### APIDOC: ClickPipePatchPostgresPipeSettings Schema Source: https://api.clickhouse.cloud/v1/v1 Schema for patching or updating general settings of a ClickHouse pipe connected to a PostgreSQL source. It includes properties for controlling data synchronization intervals and batch sizes. ```APIDOC ClickPipePatchPostgresPipeSettings: syncIntervalSeconds: number (nullable) - Interval in seconds to sync data from Postgres. pullBatchSize: number (nullable) - Number of rows to pull in each batch. ``` -------------------------------- ### Get List of API Keys Source: https://api.clickhouse.cloud/v1/v1 Retrieves a list of all API keys associated with a specific organization. This endpoint provides details on existing keys. ```APIDOC GET /v1/organizations/{organizationId}/keys Summary: Get list of all keys Description: Returns a list of all keys in the organization. Parameters: - in: path name: organizationId description: ID of the requested organization. required: true schema: type: string format: uuid Responses: 200: description: Successful response content: application/json: schema: type: object properties: status: type: number description: HTTP status code. example: 200 requestId: type: string description: Unique id assigned to every request. UUIDv4 format: uuid result: type: array items: $ref: "#/components/schemas/ApiKey" 400: description: The server cannot or will not process the request due to something that is perceived to be a client error. content: application/json: schema: type: object properties: status: type: number description: HTTP status code. example: 400 error: type: string description: Detailed error description. ``` -------------------------------- ### Create ClickPipe API Endpoint Source: https://api.clickhouse.cloud/v1/v1 This endpoint is in beta and creates a new ClickPipe. It requires the organization and service IDs as path parameters and a request body conforming to the ClickPipePostRequest schema. The response includes a status and request ID. ```APIDOC POST /v1/organizations/{organizationId}/services/{serviceId}/clickpipes Summary: Create ClickPipe Description: This endpoint is in beta. API contract is stable, and no breaking changes are expected in the future. Create a new ClickPipe. Tags: beta Parameters: - in: path name: organizationId description: ID of the organization that owns the service. required: true schema: type: string format: uuid - in: path name: serviceId description: ID of the service to create the ClickPipe for. required: true schema: type: string format: uuid RequestBody: content: application/json: schema: $ref: "#/components/schemas/ClickPipePostRequest" Responses: 200: description: Successful response content: application/json: schema: type: object properties: status: type: number description: HTTP status code. example: 200 requestId: type: string description: Unique id assigned to every request. UUIDv4 400: description: The server cannot or will not process the request due to something that is perceived to be a client error. content: application/json: schema: type: object properties: status: type: number description: HTTP status code. example: 400 error: type: string description: Detailed error description. ``` -------------------------------- ### Get Prometheus Metrics for a Service Source: https://api.clickhouse.cloud/v1/v1 Retrieves Prometheus metrics for a specific service within an organization. This endpoint allows for optional filtering of metrics. ```APIDOC GET /v1/organizations/{organizationId}/services/{serviceId}/metrics Description: Returns prometheus metrics for a service. Parameters: - organizationId (path, string, uuid, required): ID of the organization that owns the service. - serviceId (path, string, uuid, required): ID of the requested service. - filtered_metrics (query, string, boolean): Return a filtered list of Prometheus metrics. Responses: 200 OK: Description: Successful response Content: text/plain, type: string 400 Bad Request: Description: The server cannot or will not process the request due to something that is perceived to be a client error. Content: application/json Schema: status (number): HTTP status code. Example: 400 error (string): Detailed error description. ``` -------------------------------- ### API Schema: ClickPipeSource Source: https://api.clickhouse.cloud/v1/v1 Defines the various possible source types for a ClickPipe, allowing selection from Kafka, Object Storage, Kinesis, or Postgres. ```APIDOC ClickPipeSource: properties: kafka: oneOf: - $ref: "#/components/schemas/ClickPipeKafkaSource" nullable: true objectStorage: oneOf: - $ref: "#/components/schemas/ClickPipeObjectStorageSource" nullable: true kinesis: oneOf: - $ref: "#/components/schemas/ClickPipeKinesisSource" nullable: true postgres: oneOf: - $ref: "#/components/schemas/ClickPipePostgresSource" nullable: true ``` -------------------------------- ### API Schema: ClickPipeDestination (Partial) Source: https://api.clickhouse.cloud/v1/v1 Defines the destination details for a ClickPipe, including the target database and table. This snippet is a partial definition. ```APIDOC ClickPipeDestination: properties: database: description: Destination database. type: string table: description: Destination table. Required field for all pipe types except Postgres. type: string managedTable: ``` -------------------------------- ### Create API Key Source: https://api.clickhouse.cloud/v1/v1 Creates a new API key for the specified organization. This allows for programmatic access to the organization's resources. ```APIDOC POST /v1/organizations/{organizationId}/keys Summary: Create key Description: Creates new API key. Parameters: - ``` -------------------------------- ### InstanceServiceQueryApiEndpointsPostRequest Schema Source: https://api.clickhouse.cloud/v1/v1 Defines the request body for creating or updating service query API endpoints, specifying roles, API keys, and allowed origins. ```APIDOC InstanceServiceQueryApiEndpointsPostRequest: roles: Type: array Description: The roles Items: Type: string Enum: - sql_console_read_only - sql_console_admin openApiKeys: Type: array Description: The version of the service query endpoint Items: Type: string allowedOrigins: Type: string Description: The allowed origins as comma separated list of domains ``` -------------------------------- ### GET List Reverse Private Endpoints Source: https://api.clickhouse.cloud/v1/v1 Retrieve a list of reverse private endpoints for a given service. This endpoint is in beta, but its API contract is stable, and no breaking changes are expected in the future. ```APIDOC GET /v1/organizations/{organizationId}/services/{serviceId}/clickpipesReversePrivateEndpoints Parameters: - organizationId (path, string, uuid, required): ID of the organization that owns the service. - serviceId (path, string, uuid, required): ID of the service that owns the Reverse Private Endpoint. Responses: - 200 OK: Successful response Content (application/json): Schema: status (number): HTTP status code. Example: 200 requestId (string, uuid): Unique id assigned to every request. UUIDv4 result (array): List of ReversePrivateEndpoint objects. - 400 Bad Request: The server cannot or will not process the request due to something that is perceived to be a client error. Content (application/json): Schema: status (number): HTTP status code. Example: 400 error (string): Detailed error description. Tags: beta ``` -------------------------------- ### Get Private Endpoint Configuration for Organization Source: https://api.clickhouse.cloud/v1/v1 Retrieves the necessary information to set up a private endpoint for a specific organization, cloud provider, and region. This endpoint provides details required for secure network connectivity. ```APIDOC GET /v1/organizations/{organizationId}/privateEndpointConfig Summary: Get private endpoint configuration for region within cloud provider for an organization Description: Information required to set up a private endpoint Parameters: - organizationId (path): Type: string (uuid) Description: ID of the requested organization. Required: true - cloud_provider (query): Type: string Description: Cloud provider identifier. One of aws, gcp, or azure. Required: true - region_id (query): Type: string Description: Region identifier within specific cloud providers. Required: true Responses: - 200 OK: Description: Successful response Content: application/json Schema: type: object properties: status: type: number description: HTTP status code. example: 200 requestId: type: string description: Unique id assigned to every request. UUIDv4 format: uuid result: $ref: #/components/schemas/OrganizationCloudRegionPrivateEndpointConfig - 400 Bad Request: Description: The server cannot or will not process the request due to something that is perceived to be a client error. Content: application/json Schema: type: object properties: status: type: number description: HTTP status code. example: 400 error: type: string description: Detailed error description. ``` -------------------------------- ### ClickHouse Cloud API Basic Authentication Scheme Definition Source: https://api.clickhouse.cloud/v1/v1 This JSON snippet illustrates a portion of an OpenAPI specification, defining a 'basic' security scheme. It specifies that authentication requires a key ID and key secret, and directs users to the ClickHouse Cloud console documentation for obtaining these credentials. The snippet also shows how this 'basicAuth' scheme is referenced in the global 'security' array. ```JSON "scheme": "basic", "description": "Use key ID and key secret obtained in ClickHouse Cloud console: https://clickhouse.com/docs/cloud/manage/openapi" } } }, "security": [ { "basicAuth": [] } ] } ``` -------------------------------- ### Get List of Organizations - ClickHouse Cloud API Source: https://api.clickhouse.cloud/v1/v1 This endpoint retrieves a list containing the single organization associated with the API key used in the request. It's useful for verifying the organization linked to your credentials. ```APIDOC GET /v1/organizations Summary: Get list of available organizations Description: Returns a list with a single organization associated with the API key in the request. Parameters: None Responses: 200 OK: Description: Successful response Content: application/json: Schema: status (number): HTTP status code. Example: 200 requestId (string, uuid): Unique id assigned to every request. UUIDv4 result (array): items: Reference to #/components/schemas/Organization 400 Bad Request: Description: The server cannot or will not process the request due to something that is perceived to be a client error. Content: application/json: Schema: status (number): HTTP status code. Example: 400 error (string): Detailed error description. ``` -------------------------------- ### ClickHouse Cloud Service Configuration Properties Schema Source: https://api.clickhouse.cloud/v1/v1 Defines the various parameters available for configuring a ClickHouse Cloud service instance. This includes settings for service tier, memory limits (total and per replica), number of replicas, idle scaling behavior, IP access lists, and encryption options. Several properties are marked as deprecated. ```APIDOC Service Configuration Properties: tier: description: DEPRECATED for BASIC, SCALE and ENTERPRISE organization tiers. Tier of the service: 'development', 'production', 'dedicated_high_mem', 'dedicated_high_cpu', 'dedicated_standard', 'dedicated_standard_n2d_standard_4', 'dedicated_standard_n2d_standard_8', 'dedicated_standard_n2d_standard_32', 'dedicated_standard_n2d_standard_128', 'dedicated_standard_n2d_standard_32_16SSD', 'dedicated_standard_n2d_standard_64_24SSD'. Production services scale, Development are fixed size. Azure services don't support Development tier type: string enum: - development - production - dedicated_high_mem - dedicated_high_cpu - dedicated_standard - dedicated_standard_n2d_standard_4 - dedicated_standard_n2d_standard_8 - dedicated_standard_n2d_standard_32 - dedicated_standard_n2d_standard_128 - dedicated_standard_n2d_standard_32_16SSD - dedicated_standard_n2d_standard_64_24SSD deprecated: true minTotalMemoryGb: description: DEPRECATED - inaccurate for services with non-default numbers of replicas. Minimum memory of three workers during auto-scaling in Gb. Available only for 'production' services. Must be a multiple of 12 and greater than or equal to 24. type: number minimum: 24 maximum: 1068 multipleOf: 12 example: 48 deprecated: true maxTotalMemoryGb: description: DEPRECATED - inaccurate for services with non-default numbers of replicas. Maximum memory of three workers during auto-scaling in Gb. Available only for 'production' services. Must be a multiple of 12 and lower than or equal to 360 for non paid services or 1068 for paid services. type: number minimum: 24 maximum: 1068 multipleOf: 12 example: 360 deprecated: true minReplicaMemoryGb: description: Minimum total memory of each replica during auto-scaling in Gb. Must be a multiple of 4 and greater than or equal to 8. type: number minimum: 8 maximum: 356 multipleOf: 4 example: 16 maxReplicaMemoryGb: description: Maximum total memory of each replica during auto-scaling in Gb. Must be a multiple of 4 and lower than or equal to 120* for non paid services or 356* for paid services.* - maximum replica size subject to cloud provider hardware availability in your selected region. type: number minimum: 8 maximum: 356 multipleOf: 4 example: 120 numReplicas: description: Number of replicas for the service. The number of replicas must be between 2 and 20 for the first service in a warehouse. Services that are created in an existing warehouse can have a number of replicas as low as 1. Further restrictions may apply based on your organization's tier. It defaults to 1 for the BASIC tier and 3 for the SCALE and ENTERPRISE tiers. type: number minimum: 1 maximum: 20 example: 3 idleScaling: description: When set to true the service is allowed to scale down to zero when idle. True by default. type: boolean idleTimeoutMinutes: description: Set minimum idling timeout (in minutes). Must be >= 5 minutes. type: number ipAccessList: type: array description: List of IP addresses allowed to access the service items: $ref: "#/components/schemas/IpAccessListEntry" createdAt: description: Service creation timestamp. ISO-8601. type: string format: date-time encryptionKey: description: Optional customer provided disk encryption key type: string encryptionAssumedRoleIdentifier: description: Optional role to use for disk encryption type: string iamRole: description: IAM role used for accessing objects in s3 type: string privateEndpointIds: type: array description: List of private endpoints items: type: string availablePrivateEndpointIds: ``` -------------------------------- ### API Schema: ClickPipeDestinationTableDefinition Source: https://api.clickhouse.cloud/v1/v1 Defines the schema for a ClickPipe destination table, including its engine, sorting key, partition key, and primary key. ```APIDOC ClickPipeDestinationTableDefinition: properties: engine: $ref: "#/components/schemas/ClickPipeDestinationTableEngine" sortingKey: type: array description: Sorting key of the destination table. List of columns. items: type: string partitionBy: description: Partition key SQL expression. type: string primaryKey: description: Primary key of SQL expression. type: string ``` -------------------------------- ### API: GET /v1/organizations/{organizationId}/services/{serviceId}/prometheus Source: https://api.clickhouse.cloud/v1/v1 Defines the API specification for retrieving Prometheus metrics for a specific ClickHouse Cloud service. This endpoint provides monitoring data for integration with Prometheus-compatible systems. ```APIDOC Path: /v1/organizations/{organizationId}/services/{serviceId}/prometheus Method: GET Summary: Get prometheus metrics ``` -------------------------------- ### API Schema: ClickPipePatchSource Source: https://api.clickhouse.cloud/v1/v1 Defines the source configuration for updating an existing ClickPipe, supporting Kafka, Object Storage, Kinesis, and Postgres sources, with an option to validate data samples. ```APIDOC ClickPipePatchSource: properties: kafka: oneOf: - $ref: #/components/schemas/ClickPipePatchKafkaSource nullable: true objectStorage: oneOf: - $ref: #/components/schemas/ClickPipePatchObjectStorageSource nullable: true kinesis: oneOf: - $ref: #/components/schemas/ClickPipePatchKinesisSource nullable: true postgres: $ref: #/components/schemas/ClickPipePatchPostgresSource validateSamples: description: Validate data samples received from data source. It will validate the connection and data availability and correctness. If not enabled, only connection will be validated. This has no effect on Postgres pipes, they always only validate the connection and table definitions. This is experimental and can be removed in the future. type: boolean ``` -------------------------------- ### ClickPipe PostgreSQL Pipe Settings Schema Source: https://api.clickhouse.cloud/v1/v1 Defines the schema for configuring ClickPipe settings for PostgreSQL sources, including synchronization interval, batch size for data pulls, and the publication name for replication. ```APIDOC { "ClickPipePostgresPipeSettings": { "properties": { "syncIntervalSeconds": { "description": "Interval in seconds to sync data from Postgres.", "type": "number" }, "pullBatchSize": { "description": "Number of rows to pull in each batch.", "type": "number" }, "publicationName": { "description": "Publication name to use for replication.", "type": "string" } } } } ``` -------------------------------- ### Get Organization Details by ID - ClickHouse Cloud API Source: https://api.clickhouse.cloud/v1/v1 This endpoint fetches detailed information for a specific organization, identified by its ID. The API key used for the request must be associated with the organization to retrieve its details. ```APIDOC GET /v1/organizations/{organizationId} Summary: Get organization details Description: Returns details of a single organization. In order to get the details, the auth key must belong to the organization. Parameters: organizationId (path, string, uuid): ID of the requested organization. (Required) Responses: 200 OK: Description: Successful response Content: application/json: Schema: status (number): HTTP status code. Example: 200 requestId (string, uuid): Unique id assigned to every request. UUIDv4 result: Reference to #/components/schemas/Organization 400 Bad Request: Description: The server cannot or will not process the request due to something that is perceived to be a client error. Content: application/json: Schema: status (number): HTTP status code. Example: 400 error (string): Detailed error description. ``` -------------------------------- ### POST Create Reverse Private Endpoint Source: https://api.clickhouse.cloud/v1/v1 Create a new reverse private endpoint. This endpoint is in beta, and its API contract is stable with no breaking changes expected in the future. ```APIDOC POST /v1/organizations/{organizationId}/services/{serviceId}/clickpipesReversePrivateEndpoints Parameters: - organizationId (path, string, uuid, required): ID of the organization that owns the service. - serviceId (path, string, uuid, required): ID of the service that owns the Reverse Private Endpoint. Request Body (application/json): Schema: #/components/schemas/CreateReversePrivateEndpoint Responses: - 200 OK: Successful response Content (application/json): Schema: status (number): HTTP status code. Example: 200 requestId (string, uuid): Unique id assigned to every request. UUIDv4 result (object): ReversePrivateEndpoint object. - 400 Bad Request: The server cannot or will not process the request due to something that is perceived to be a client error. Content (application/json): Schema: status (number): HTTP status code. Example: 400 error (string): Detailed error description. Tags: beta ``` -------------------------------- ### Get Organization Usage Costs Source: https://api.clickhouse.cloud/v1/v1 Returns a grand total and a list of daily, per-entity organization usage cost records for the organization in the queried time period (maximum 31 days). All days in both the request and the response are evaluated based on the UTC timezone. ```APIDOC GET /v1/organizations/{organizationId}/usageCost Summary: Get organization usage costs Description: Returns a grand total and a list of daily, per-entity organization usage cost records for the organization in the queried time period (maximum 31 days). All days in both the request and the response are evaluated based on the UTC timezone. Parameters: - organizationId (path): ID of the requested organization. (string, uuid, required) - from_date (query): Start date for the report, e.g. 2024-12-19. (string, date-time, required) - to_date (query): End date (inclusive) for the report, e.g. 2024-12-20. This date cannot be more than 30 days after from_date (for a maximum queried period of 31 days). (string, date-time, required) Responses: 200 OK: Successful response Schema: status (number): HTTP status code. ``` -------------------------------- ### List ClickPipes API Endpoint Source: https://api.clickhouse.cloud/v1/v1 This endpoint is in beta and returns a list of ClickPipes. It requires the organization and service IDs as path parameters to identify the scope of the ClickPipes to be listed. The response includes a status, request ID, and an array of ClickPipe objects. ```APIDOC GET /v1/organizations/{organizationId}/services/{serviceId}/clickpipes Summary: List ClickPipes Description: This endpoint is in beta. API contract is stable, and no breaking changes are expected in the future. Returns a list of ClickPipes. Tags: beta Parameters: - in: path name: organizationId description: ID of the organization that owns the service. required: true schema: type: string format: uuid - in: path name: serviceId description: ID of the service that owns the ClickPipe. required: true schema: type: string format: uuid Responses: 200: description: Successful response content: application/json: schema: type: object properties: status: type: number description: HTTP status code. example: 200 requestId: type: string description: Unique id assigned to every request. UUIDv4 format: uuid result: type: array items: $ref: "#/components/schemas/ClickPipe" 400: description: The server cannot or will not process the request due to something that is perceived to be a client error. content: application/json: schema: type: object properties: status: type: number description: HTTP status code. example: 400 error: type: string description: Detailed error description. ``` -------------------------------- ### Retrieve API Key Details (GET) Source: https://api.clickhouse.cloud/v1/v1 Describes the API endpoint for retrieving details of a specific API key. It requires both the organization ID and the key ID as path parameters. Returns the key details on success (200) or an error on failure (400). ```APIDOC { "get": { "summary": "Get key details", "description": "Returns a single key details.", "parameters": [ { "in": "path", "name": "organizationId", "description": "ID of the requested organization.", "required": true, "schema": { "type": "string", "format": "uuid" } }, { "in": "path", "name": "keyId", "description": "ID of the requested key.", "required": true, "schema": { "type": "string", "format": "uuid" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "status": { "type": "number", "description": "HTTP status code.", "example": 200 }, "requestId": { "type": "string", "description": "Unique id assigned to every request. UUIDv4", "format": "uuid" }, "result": { "$ref": "#/components/schemas/ApiKey" } } } } } }, "400": { "description": "The server cannot or will not process the request due to something that is perceived to be a client error.", "content": { "application/json": { "schema": { "type": "object", "properties": { "status": { "type": "number", "description": "HTTP status code.", "example": 400 }, "error": { "type": "string", "description": "Detailed error description." } } } } } } } } } ```