Skip to main content
POST
Create new Postgres service
Beta This endpoint is in beta. API contract is stable, and no breaking changes are expected in the future.

Creates a new Postgres service in the organization and returns it. The service is started asynchronously.

Permission

The API key must have the control-plane:organization:create-service permission.

Authorizations

Authorization
string
header
required

Use key ID and key secret obtained in ClickHouse Cloud console: https://clickhouse.com/docs/cloud/manage/openapi

Path Parameters

organizationId
string<uuid>
required

ID of the organization that will own the service.

Body

application/json
name
string
required

Name of the Postgres service. Alphanumerical string with whitespaces up to 50 characters.

Required string length: 1 - 50
provider
enum<string>
required

The cloud provider for a Postgres service.

Available options:
aws,
gcp
region
string
required

The cloud region for a Postgres service.

size
enum<string>
required

The VM size for a Postgres service.

Available options:
c6gd.large,
c6gd.xlarge,
c6gd.2xlarge,
c6gd.4xlarge,
c6gd.8xlarge,
c6gd.16xlarge,
i7i.large,
i7i.xlarge,
i7i.2xlarge,
i7i.4xlarge,
i7i.8xlarge,
i7i.12xlarge,
i7i.16xlarge,
i7i.24xlarge,
i7ie.large,
i7ie.xlarge,
i7ie.2xlarge,
i7ie.3xlarge,
i7ie.6xlarge,
i7ie.12xlarge,
i7ie.18xlarge,
i7ie.24xlarge,
i8g.large,
i8g.xlarge,
i8g.2xlarge,
i8g.4xlarge,
i8g.8xlarge,
i8g.16xlarge,
i8g.24xlarge,
i8ge.large,
i8ge.xlarge,
i8ge.2xlarge,
i8ge.3xlarge,
i8ge.6xlarge,
i8ge.12xlarge,
i8ge.18xlarge,
i8ge.24xlarge,
m6gd.large,
m6gd.xlarge,
m6gd.2xlarge,
m6gd.4xlarge,
m6gd.8xlarge,
m6gd.16xlarge,
m6id.large,
m6id.xlarge,
m6id.2xlarge,
m6id.4xlarge,
m6id.8xlarge,
m6id.16xlarge,
m8gd.large,
m8gd.xlarge,
m8gd.2xlarge,
m8gd.4xlarge,
m8gd.8xlarge,
m8gd.16xlarge,
r6gd.medium,
r6gd.large,
r6gd.xlarge,
r6gd.2xlarge,
r6gd.4xlarge,
r6gd.8xlarge,
r6gd.12xlarge,
r6gd.16xlarge,
r6id.large,
r6id.xlarge,
r6id.2xlarge,
r6id.4xlarge,
r6id.8xlarge,
r6id.12xlarge,
r6id.16xlarge,
r6id.24xlarge,
r6id.32xlarge,
r8gd.medium,
r8gd.large,
r8gd.xlarge,
r8gd.2xlarge,
r8gd.4xlarge,
r8gd.8xlarge,
r8gd.12xlarge,
r8gd.16xlarge,
r8gd.24xlarge,
r8gd.48xlarge,
c4a-highmem-lssd-4,
c4a-highmem-lssd-8,
c4a-highmem-lssd-16,
c4a-highmem-lssd-32,
c4a-highmem-lssd-48,
c4a-highmem-lssd-64,
c4a-highmem-lssd-72,
c4a-standard-lssd-4,
c4a-standard-lssd-8,
c4a-standard-lssd-16,
c4a-standard-lssd-32,
c4a-standard-lssd-48,
c4a-standard-lssd-64,
c4a-standard-lssd-72,
c4-highmem-lssd-4,
c4-highmem-lssd-8,
c4-highmem-lssd-16,
c4-highmem-lssd-24,
c4-highmem-lssd-32,
c4-highmem-lssd-48,
c4-highmem-lssd-96,
c4-highmem-lssd-144,
c4-highmem-lssd-192,
c4-highmem-lssd-288,
c4-standard-lssd-4,
c4-standard-lssd-8,
c4-standard-lssd-16,
c4-standard-lssd-24,
c4-standard-lssd-32,
c4-standard-lssd-48,
c4-standard-lssd-96,
c4-standard-lssd-144,
c4-standard-lssd-192,
c4-standard-lssd-288,
c4d-highmem-lssd-8,
c4d-highmem-lssd-16,
c4d-highmem-lssd-32,
c4d-highmem-lssd-48,
c4d-highmem-lssd-64,
c4d-highmem-lssd-96,
c4d-highmem-lssd-192,
c4d-highmem-lssd-384,
c4d-standard-lssd-8,
c4d-standard-lssd-16,
c4d-standard-lssd-32,
c4d-standard-lssd-48,
c4d-standard-lssd-64,
c4d-standard-lssd-96,
c4d-standard-lssd-192,
c4d-standard-lssd-384,
z3-highmem-highlssd-8,
z3-highmem-highlssd-16,
z3-highmem-highlssd-22,
z3-highmem-highlssd-32,
z3-highmem-highlssd-44,
z3-highmem-highlssd-88,
z3-highmem-standardlssd-14,
z3-highmem-standardlssd-22,
z3-highmem-standardlssd-44,
z3-highmem-standardlssd-88,
z3-highmem-standardlssd-176
postgresVersion
enum<string>
Available options:
18,
17
haType
enum<string>

Type of high availability: “none” for no replication, “async” for asynchronous replication to a single standby, and “sync” for synchronous replication to two standbys.

Available options:
none,
async,
sync
tags
Postgres Tags · object[]

Tags associated with the Postgres service. Tag keys starting with “chc_” are reserved for internal use.

Maximum array length: 50
ipAccessList
object[]

IPv4 TCP access rules to apply when creating the service. Omit to allow all IPv4 and IPv6 addresses on Postgres (5432) and PgBouncer (6432). Provide an empty list to block public access. When provided, only these rules are allowed; include separate rules for each required port.

pgConfig
Postgres Configuration · object

Postgres runtime configuration configuration.

Example:
pgBouncerConfig
PgBouncer Configuration · object

PgBouncer runtime configuration configuration.

Example:

Response

Successful response

status
number

HTTP status code.

Example:

200

requestId
string<uuid>

Unique id assigned to every request. UUIDv4

result
object