TimescaleDB
TimescaleDB with pREST β hypertables over the Postgres wire, auto-detect adapter in v2.3.0 (#999), _time_bucket, REST and MCP.
Last updated
TimescaleDB with pREST β hypertables over the Postgres wire, auto-detect adapter in v2.3.0 (#999), _time_bucket, REST and MCP.
TimescaleDB is a PostgreSQL extension for time-series workloads. pREST treats it as Compatible with caveats: connect like PostgreSQL, use hypertables as tables, and use Timescale-aware operators when the Timescale adapter is selected.
Last updated: July 22, 2026 Β· Label: Compatible with caveats
v2.2.0+: E2E coverage on the native PostgreSQL adapter (#988). See v2.2.0.
v2.3.0 (#999): pREST auto-detects Timescale (extension check) and selects a Timescale adapter with _time_bucket and system-schema filtering. Still not a separate dialect family β wire-compatible with PostgreSQL. MySQL/SQLite multi-adapter is roadmap. See v2.3.0.
Full Compose example: Integrations β TimescaleDB. Prefer timescale/timescaledb:latest-pg18 and CREATE EXTENSION IF NOT EXISTS timescaledb.
Connection
supported (Postgres protocol)
Schema discovery
supported β hypertables; _timescaledb_* hidden by default on Timescale adapter (v2.3.0)
CRUD
supported on underlying relations; hypertable semantics apply
Filtering / ordering / pagination
supported
_time_bucket
v2.3.0 / #999 β Timescale adapter only (5mβ¦1y)
Transactions
supported (PostgreSQL)
Scripts (/_QUERIES)
supported β preferred for policies, continuous-aggregate DDL
MCP (/_mcp)
supported (v2.1.0+) for readable relations
ACL / permissions
supported
Same as PostgreSQL β point PREST_PG_* / PREST_PG_URL at a TimescaleDB (or Timescale Cloud) instance, or register an alias in Multi-database.
Since v2.3.0 (#999), startup tries the Timescale adapter first, then falls back to Postgres.
Intervals: 5m, 15m, 1h, 6h, 1d, 7d, 30d, 1y. Include Timescale system schemas with _include_system_schemas=true.
REST CRUD: API Reference
Continuous aggregates / policies: custom queries or SQL
Multi-alias setups: Multi-database
MCP: MCP over HTTP
Stock Postgres adapter (v2.2.0 and earlier) does not implement _time_bucket β use /_QUERIES or upgrade to v2.3.0 (#999).
Compression, retention policies, and continuous-aggregate DDL stay outside generic CRUD.
Catalog listing may include hypertables and chunk children; use ACL / expose settings as needed.
Use a PostgreSQL version Timescale supports for your image/cloud tier (docs examples use PG 18 images).
Last updated
export PREST_VERSION=2
export PREST_PG_HOST=timescaledb
export PREST_PG_USER=prest
export PREST_PG_PASS=prest
export PREST_PG_DATABASE=prest
export PREST_PG_SSL_MODE=disablecurl "http://localhost:3000/prest/public/readings?_time_bucket=1h"
curl "http://localhost:3000/prest/public/readings?_time_bucket=1h,measured_at"