Skip to main content

Datastore

The Datastore is a persistent key-value store scoped to your organization. Store JSON values, organize them with namespaces, and access them from the Dashboard, REST API, or MCP tools.

How it works

  1. Create an entry — store a JSON value under a unique key
  2. Organize with namespaces — group related entries into logical namespaces
  3. Set an optional TTL — entries can expire automatically after a given time
  4. Access from any interface — Dashboard, REST API, or MCP tools

Key features

JSON values

Store any valid JSON value — strings, numbers, booleans, arrays, or objects. Values can be up to 64 KB in size.

Namespaces

Group entries into logical namespaces like production, staging, or user-preferences. Every entry belongs to a namespace — if you don't specify one, it defaults to default.

TTL and expiration

Set a time-to-live on entries so they expire automatically. Expired entries are cleaned up by a background worker and excluded from queries. Useful for caching, temporary tokens, or time-limited configuration.

Filter entries by key prefix to find related keys quickly. For example, search for all keys starting with stripe: or config:api:.

Entry properties

PropertyTypeDescription
keystringUnique identifier within a namespace. 1–255 characters: letters, digits, _, ., -, :, /
namespacestringLogical grouping. 1–255 characters, same format as key. Defaults to "default"
valueJSONAny valid JSON value (max 64 KB encoded)
descriptionstringOptional human-readable note (max 1,000 characters)
expires_atdatetimeOptional expiration time. Entry is automatically removed after this time

Entries are uniquely identified by the combination of organization, namespace, and key.

Plan limits

PlanEntry limit
FreeNot available
Starter100
Team500–1,000
ScaleUnlimited

See Plans & Billing for details.

Getting started

Learn how to create, read, update, and delete entries in Manage Entries.