Kvindo™ Cloud Docs
A PostgreSQL Database is a database inside a specific PostgreSQL Cluster. It is always created owned by the cluster's root user — access is controlled via grants on PostgreSQL Users, not per-database ownership.
• Belongs to one cluster forever — spec.postgreSqlId is required and immutable, same as PostgreSqlUser
• Extensions are allowlisted — spec.extensions installs PostgreSQL extensions into this database; extensions requiring a shared_preload_libraries change (a restart) are not installable at all — shared_preload_libraries is a reserved key rejected at reconcile, with no tenant-facing path to set it
btree_gin, btree_gist, citext, cube, earthdistance,
fuzzystrmatch, hstore, intarray, ltree, pg_trgm,
pgcrypto, postgis, tablefunc, unaccent, uuid-ossp
Anything not on this list — most notably extensions needing shared_preload_libraries such as pg_stat_statements or pg_cron — is rejected here. shared_preload_libraries is a reserved key on PostgreSqlParametersSet too, so there is currently no tenant-facing way to install these extensions.
| UI Name | API / kc name | Terraform name | Optional | Format | Default | Is read only | Description |
|---|---|---|---|---|---|---|---|
| PostgreSql cluster | spec.postgreSqlId |
spec.postgre_sql_id |
No | ULID — references a PostgreSql cluster | — | No | Immutable after creation |
| Extensions | spec.extensions |
spec.extensions |
Yes | list of strings | — | No | Allowlisted PostgreSQL extensions to install into this database |
A database with an extension installed.
Terraform
Python SDK
kc CLI
Resource docs
Examples
More in this section