Skip to main content

Headers

Every request to the storage API carries both keys:
Do not send a dashboard Authorization: Bearer token to the storage API. Session tokens belong to the web application surface and will not authenticate these routes.

Example

Where keys come from

Keys are created in the dashboard, under the company’s API key area. Creation requires:
  • company context,
  • the permission to manage API keys,
  • active billing access,
  • a verified email on trial accounts,
  • step-up authentication.
There is no public endpoint to create, rotate, or revoke a key. See API keys.

Which surface am I on?

The API key is a machine credential. The browser session is a human credential. They do not substitute for one another.

Company scope

A key authenticates as its company workspace. It cannot reach another company’s resources, even with a valid bucket ID. Individual EverSpark accounts are refused with 403 API_COMPANY_ONLY. The single first-party exception is a device-bound backup key used by the enrolled desktop agent.

Server-side only

API-key headers are not allowed by CORS. A browser fetch from another origin that includes these headers will fail preflight. This is deliberate: an API key embedded in a browser bundle is a leaked key. Proxy requests through your server if you need a browser front end. See Requests and CORS for details.

Failure modes

API keys

Creation, rotation, revocation.

Scopes

Which scopes each operation needs.

Requests and CORS

Why this is server-side only.

Rate limits

Quotas and throttling.