Live - no signup required

State infrastructure for AI agents.

One curl creates a real JSON database. No API keys, no .env, no SDK, no signup - the URL is the credential. Free for 24 hours, kept alive from $1, always-on with Pro.

Read the agent docs

0
api keys required
~155 bit
capability entropy
24h
free window
from $1
keep alive
bash - guest@tmpstate.dev
$

s

provisioning…

~/tmpstate/lifecycle

  1. t+0.4s

    Create

    curl tmpstate.dev returns a live database in under a second - URL, admin viewer, limits, docs.

  2. t+5m

    Build

    Write JSON from your agent, script, or prototype. Collections appear on first write; the admin page shows data live.

  3. t+24h

    Keep or let go

    Let it expire for free, extend it from $1 when the data matters, or go Pro when it becomes the database behind your apps.

~/tmpstate/platform

A real database, deliberately scoped.

Everything an agent or a prototype needs from a backing store - and nothing that requires a platform team to operate.

$ curl $DB/__schema6 fields
  • "json_crud"

    JSON CRUD over HTTP

    POST creates collections implicitly, PATCH shallow-merges, cursor pagination on every list. Any HTTP client is the SDK.

  • "capability_auth"

    Capability-URL auth

    One unguessable URL per database, hashed at rest. No keys to provision, rotate, leak into repos, or paste into .env files.

  • "ttl_default"

    Disposable by default

    Databases expire after 24 hours, freeze restorably for 72 hours, then delete on schedule. State you don't have to remember to clean up.

  • "introspection"

    Introspection built in

    __meta for usage and expiry, __schema for inferred types, __export for the full dataset, plus a read-only web admin for humans.

  • "agent_native"

    Built for agents first

    Creation responses link llms.txt, the OpenAPI spec, and skill playbooks - an agent goes from zero to a working, well-architected app without a human in the loop.

  • "growth_path"

    Grows with the work

    Extensions keep one database alive from $1, one-time. Pro ($8/month) makes 3 databases always-on with raised quotas and a management dashboard.

~/tmpstate/anywhere

Wherever an agent runs, state is one curl away.

No regions to pick, no console to log into, no account to create first. A database is born at the end of a shell command - from a laptop, a CI runner, a sandboxed agent loop, or a cron job that cleans up after itself. The URL that comes back is the whole story: credential, endpoint, and expiry in one line.

$ curl tmpstate.dev/new - from any shell, no config
  • agent@warsaw-> iad1201 Created
  • ci@berlin-> iad1201 Created
  • laptop@sf-> iad1201 Created
  • cron@tokyo-> iad1201 Created

~/tmpstate/guides

Learn the pattern before you ship the prototype.

TmpState is most useful when you know what should be temporary, what should be hidden server-side, and when a database deserves to become permanent.

~/tmpstate/pricing

Pricing that fits in a sentence.

Free to build. $1$9 one-time to keep a database alive. $8/month for always-on. Every number below is rendered from the same constants the API enforces.

Free

$0

Every database. 24 hours, 100 documents, 100 writes, anonymous. Expired data stays restorable for 72 hours.

Extensions

$1 one-time, from

Keep one database alive 7 days for $1, 30 days for $3, or 90 days for $9 - with raised quotas. No subscription.

Pro

$8/month

3 always-on databases, 10,000 docs and 100,000 writes each, extras $1.50/month. Cancel with one API call or one click.

Full pricing details

~/tmpstate/trust

Security through capability, not credentials.

Each database URL carries ~155 bits of entropy and is stored only as a SHA-256 hash - we could not enumerate your database if we wanted to. Rate limits guard every endpoint, dangerous JSON keys are rejected at any depth, and payments run entirely on Stripe: card data never touches our servers.

Read the security model →

Deletion is a feature, honored on schedule.

Temporary means temporary: expiry is enforced on every request, frozen data is restorable for exactly 72 hours, and a daily job deletes what has lapsed. You can also delete any database immediately, yourself, with one request - no support ticket.

See the full lifecycle in the docs →

~/tmpstate/faq

Frequently asked questions

Is TmpState really free?
Yes. Every database is free for 24 hours with 100 documents and 100 writes - no signup, no card. Paying is only for keeping data longer: one-time extensions from $1, or the Pro subscription at $8/month for always-on databases.
How can a database with no API key be secure?
The URL itself is the credential - a capability with roughly 155 bits of entropy, the same model as a private share link. Only a SHA-256 hash is stored server-side, so a database can't be recovered from our records. Treat the URL like a password and it is exactly as strong as one.
What happens when a database expires?
Every request returns 410 and the data freezes - it is not deleted immediately. For 72 hours it stays fully restorable: buy any extension and everything comes back intact. After the grace window a scheduled job deletes it for good.
Can I keep a database permanently?
Pro ($8/month) makes databases always-on: expiry tracks the subscription, quotas rise to 10,000 documents and 100,000 writes, and 3 databases are included with extras at $1.50/month. Cancellation is one API call or one click on the dashboard.
How do AI agents discover how to use it?
Every creation response links the complete documentation (/llms.txt), a machine-readable OpenAPI 3.1 spec (/openapi.json), and ready-to-use agent skills (/skills) that encode the data-modeling and architecture dos and don'ts. Every API response also carries RFC 8288 Link headers pointing at both.
Is it a real database or a toy?
Real JSON CRUD over HTTP: implicit collections, server-generated ids, shallow-merge PATCH, cursor pagination, schema inference, full export, quotas, and rate limits - backed by Postgres. It is deliberately scoped for prototypes, agent workflows, demos, and hackathons rather than as a general production database.
Is it TmpState, TempState, or temp state?
All of them reach the same place. The product is TmpState (tmp as in /tmp), but say it out loud - to a teammate or to a voice-driven coding agent - and it comes out 'temp state', so we answer to TempState and temp state too. The service lives at tmpstate.dev.

Your next prototype has a database before your coffee cools.

See pricing

Press D to toggle light/dark theme