Postgres
TreeDescribe any Postgres database from a read-only connection string — a map of what each table holds and how to query it, with nothing copied.
- You pick
- Schemas — described as a database tree, never copied
- Stays current
- Schema checked daily
- Connects with
- Read-only connection string, stored encrypted
- Connected by
- Admins and owners
Postgres gives Pensieve an understanding of a database you host anywhere: which tables exist, what each one holds, how they relate, which parts of the organisation they serve, and how to query them. Nothing from the database is copied into your map — the connector is a routing map, not a mirror.
What you choose
Pick the schemas to describe. Each selected schema becomes a branch of one database tree — the same kind of tree a GitHub repository produces — with a Page for each table or cluster of tables describing its columns, keys, row-level security and the questions it answers. The tree lives beside your organisation's map and links into it, so a project or system Page can point at the data behind it.
Authentication
Create a read-only role in your database and paste its connection string. An admin or owner connects it from the Connectors page; Pensieve validates the string, checks it can connect, and stores it encrypted — the one connector credential Pensieve holds itself rather than through a sign-in provider. Every read opens a read-only transaction under a statement timeout, so even a role with wider grants cannot be used to write.
The database must be reachable over the public internet with TLS. Pensieve verifies the server's certificate by default; databases behind an IP allow-list cannot be connected, because Pensieve's outbound addresses are not fixed.
What lands in your map
Pages describing the selected schemas: tables, views, enums and functions; their structure, relationships and access rules; and how to query them. While building those Pages Pensieve may read a handful of sample rows to understand a column, and never retains or reproduces them.
Keeping it current
Pensieve re-reads the schema daily and rebuilds only what changed. Saving a new selection, or pressing Sync, reads it straight away.
What it can't see
- Rows, beyond the small samples read while a Page is being written — and those are never kept.
- Schemas you did not select.
- Anything the read-only role cannot read.
Up next
Slack