Skip to main content

Session archive

A Tauric application you use, such as the Tauric app, keeps a complete record of its sessions in your Tauric account, per application, so you can find, read, and restore them on another device.

Access​

The archive needs the sessions entitlement, which comes with your tier (entitlements). What you can do depends on how you connect:

credentialallows
an API keylist and find sessions, read a session and its content, delete it
your website sessionlist, read, and delete the sessions of every application on your account
a connected app (MCP client)nothing: the archive is not reachable
  • Any key on the account reaches the archives of every application.
  • The usage page (tauric.ai/settings/usage) shows the bytes your sessions hold against your allowance.
  • Revoking a key stops its future access; the sessions stay on your account.
  • Another account's sessions are never visible: a session id you do not own is 404 not_found.

Sessions​

The application id is the Tauric product id, for example tauric; GET /v1/applications lists the applications enabled for your account. The session id is the application's own id for the session: 1–128 characters of A–Z a–z 0–9 . _ -, the first a letter or digit.

callmeaning
GET /v1/applicationsthe applications you can reach, with session counts, the bytes they hold, and your allowance
GET /v1/applications/{application}/sessionssessions, newest first, optionally filtered (find sessions); limit and after (lists)
GET /v1/applications/{application}/sessions/{session_id}the session without its content: metadata, size (the bytes it holds), parent, and its timestamps
GET /v1/applications/{application}/sessions/{session_id}/contentthe record (application/octet-stream), uncompressed; one Range: bytes=a-b or bytes=a- answers 206 with Content-Range
DELETE /v1/applications/{application}/sessions/{session_id}delete the session (delete a session); 204

Sizes and ranges count the bytes of the uncompressed record. A record's content is the application's own.

parent ({"session_id", "offset"}) marks a fork: the session continues another one from that byte offset. A session's parent never changes.

Metadata​

metadata describes a session in key-value pairs, for example {"ticker": "MSFT", "status": "completed"}. An application keeps any status it wants there, and the list can filter on it.

Find sessions​

The session list takes three optional filters, which combine:

filterkeeps
created_aftersessions created at or after this instant (RFC 3339)
created_beforesessions created before this instant (RFC 3339)
metadata=key=valuesessions whose metadata holds the pair; repeat it for several pairs, all of which must hold (metadata=experiment=e1)

Allowance​

The archive allowance is set by your tier (tiers). Archive calls are limited by your per-minute rate; they draw on no credit pool. When the allowance is full, reading and deleting still work. GET /v1/applications and GET /v1/account/usage (account.storage) show what is used.

Delete a session​

Sessions are kept until you delete them. Deleting removes the content and metadata at once. Afterwards the session answers 410 session_deleted, and its id stays reserved and is not reused. Deleting again answers 204.

Deleting a session does not delete its forks, but a fork's history before its fork point is then unavailable.

Example​

Find an application's sessions and restore one's record:

import os
import httpx

app = "tauric"
api = httpx.Client(base_url="https://api.tauric.ai", timeout=30.0,
headers={"Authorization": f"Bearer {os.environ['TAURIC_API_KEY']}"})

page = api.get(f"/v1/applications/{app}/sessions",
params={"created_after": "2026-10-01T00:00:00Z", "metadata": "ticker=MSFT"}).raise_for_status().json()
session_id = page["data"][0]["session_id"]
restored = api.get(f"/v1/applications/{app}/sessions/{session_id}/content").content
print(len(restored), "bytes restored")