SQL Operations
Run SQL against one or more databases: create databases, execute transactions, and run prepared queries.
The Hoody SQLite service is an embedded database runtime co-located with every container. It exposes three complementary surfaces — a SQL engine for relational workloads, a high-throughput key-value store with rich atomic operations, and a set of health endpoints for liveness and observability — all reachable over the container’s SQLite subdomain.
Use these endpoints when you need durable storage inside a container without provisioning an external database. SQL operations back multi-row transactions, the KV store handles counters, queues and snapshots, and the health endpoints feed your dashboards and readiness probes.
SQL Operations
Run SQL against one or more databases: create databases, execute transactions, and run prepared queries.
Key-Value Store
Overview of the KV store and listing of keys in a namespace.
KV Basic Operations
Get, set, delete, increment, decrement and expiry operations on individual keys.
KV Batch Operations
Batch get, set, and delete operations that round-trip multiple keys in a single request.
KV Atomic Operations
Push, pop, and remove array elements atomically against a single key.
KV Time-Travel & History
Snapshots, diffs, and rollbacks for KV state recovery.
The SQLite service exposes two scrape-friendly endpoints. The first returns a full health snapshot covering service identity, process counters, and the cache subsystem. The second returns only the cache sub-object so dashboards can poll cache pressure cheaply without re-reading process-level data.
GET /api/v1/sqlite/healthLiveness/observability endpoint. Returns service identity (status/service/built/started), process-level memory and file-descriptor counters (pid/memory/fds), and hardening snapshots (cache, counters). One scrape covers both liveness and observability signals.
This endpoint takes no parameters.
curl -X GET "https://{projectId}-{containerId}-sqlite-1.{server}.containers.hoody.com/api/v1/sqlite/health" \ -H "Authorization: Bearer $HOODY_TOKEN"import { HoodyClient } from 'hoody-sdk';
const client = new HoodyClient({ baseURL: 'https://{projectId}-{containerId}-sqlite-1.{server}.containers.hoody.com', token: process.env.HOODY_TOKEN });
await client.sqlite.health.getHealth();{ "status": "ok", "service": "sqlite", "built": "2026-01-14T09:00:00Z", "started": "2026-01-14T10:32:11Z", "pid": 42, "memory": { "rss": 134217728, "heapUsed": 41943040, "external": 2097152 }, "fds": { "open": 18, "limit": 1024 }, "cache": { "size": 4096, "capacity": 16384, "hits": 9821, "misses": 174, "evictions": 12 }}GET /api/v1/sqlite/health/cacheReturns only the cache sub-object from /health. Dedicated endpoint for dashboards that poll cache pressure without re-reading process-level memory and file-descriptor counters.
This endpoint takes no parameters.
curl -X GET "https://{projectId}-{containerId}-sqlite-1.{server}.containers.hoody.com/api/v1/sqlite/health/cache" \ -H "Authorization: Bearer $HOODY_TOKEN"import { HoodyClient } from 'hoody-sdk';
const client = new HoodyClient({ baseURL: 'https://{projectId}-{containerId}-sqlite-1.{server}.containers.hoody.com', token: process.env.HOODY_TOKEN });
await client.sqlite.health.getHealthCache();{ "size": 4096, "capacity": 16384, "hits": 9821, "misses": 174, "evictions": 12, "oldestEntryAgeMs": 4210, "hotKeys": ["user:67e89abc123def456789abcd", "session:890abcdef12345678901cdef"]}