Skip to main content

Create a project and API key

Tessera's tenancy is three levels: an organization (the billing boundary) contains projects (the data and model isolation unit), and every project has two environments — live and test — with separate data planes. This whole quickstart runs in test: nothing you do here can touch models trained on live data.

In the console: create an organization, create a project, then mint a secret API key under Settings → API keys with environment test and scopes ingest, read, admin. The plaintext key (tsk_test_…) is shown exactly once — export it:

export TESSERA_API_KEY="tsk_test_..." # shown once at creation

The console supports current desktop and mobile browsers: Chrome or Edge 111 and later, Safari 16.4 and later, and Firefox 128 and later. Older versions cannot render its stylesheet.

Everything the console does here is also plain API (the console has no private surface). With a session token, the same three calls are POST /orgs, POST /projects, and POST /projects/{id}/api-keys — see the API reference. In the docs' own CI these three calls are exactly how each test project is provisioned.

Sanity-check your key (2 lines, any 200 means you're wired):

curl -H "Authorization: Bearer $TESSERA_API_KEY" "$TESSERA_API_BASE/sources"

Two things worth knowing about keys before production:

  • A key is bound to exactly one project and one environment; there is no cross-project credential. tsk_live_… keys are for production ingestion; keep them out of CI.
  • Scopes are subsets of ingest, read, admin — mint narrow keys per workload (your event producers need ingest only).

Next: send your first events.