API keys

Each project gets two credentials: an always-visible API key that identifies it, and a secret, shown once, that authenticates its servers.

Credential types

CredentialPrefixesVisiblePurpose
API key zyneo_key_test_
zyneo_key_live_
Always Identifies the project (X-Zyneo-Key)
Secret zyneo_sk_test_
zyneo_sk_live_
Once, at creation Authenticates the server (Authorization: Bearer)

The secret is displayed exactly once. Copy it into your secret manager when it is created. If it is lost, issue a new pair — there is no recovery.

Test vs live

TestLive
Prefix _test_ _live_
Data Sandbox users and sessions Real end users
Network localhost allowed Allowlisted origins / server IPs only

Issuing a pair

POST /v1/projects writes the tenant, project, and hashed secret to D1. The first call bootstraps an empty database. Later calls require a valid existing pair. The plaintext secret is never stored and never returned again.

How secrets are stored

Rotation

  1. Issue a new key + secret pair from your project settings.
  2. Deploy the new secret to your servers.
  3. The old secret keeps a short grace window, then stops working.

Next step

Make your first call with the Quickstart.