# Self-serve access

Everything needed to build against Layer is self-serve. There is no application to review, no waitlist, no demo call, and no form between you and a working API call.

A machine-readable version of this page is published at [/api/onboarding.json](https://www.layer.ai/api/onboarding.json) — an automated client can read it instead of this prose.

## 1\. Create a workspace

1. Go to [next.app.layer.ai](https://next.app.layer.ai/).
2. Sign up and a workspace is created immediately.
3. Invite as many members as you like — seats are free.

No payment method is required to create a workspace. Billing is opted into later, from **Workspace Settings → Billing**.

## 2\. What costs nothing

A free account includes a **one-off grant of Creative Units**, enough to run real generations before subscribing. It is not time limited and it does not expire into a locked account. Layer has no plans and no feature gates either — every capability is reachable from a new workspace, and you pay only for generation, in [Creative Units](/docs/creative-units).

Free of charge:

* Creating a workspace and inviting unlimited members ($0 per seat)
* The starter grant of Creative Units
* Browsing the full model catalog and every documented endpoint
* Creating Personal Access Tokens and connecting MCP clients
* [Cost estimates](#4-test-without-spending-creative-units) — the estimate endpoints price a run and consume no CUs

Once the starter units run out, continued generation needs a subscription (from $10/month for 300 CUs) or a standalone CU pack. See [pricing](https://www.layer.ai/pricing) — or [/pricing.json](https://www.layer.ai/pricing.json) for the machine-readable table.

## 3\. Get a credential yourself

Two paths, both self-serve:

[REST — Personal Access Token](/docs/authentication)Settings → Personal Access Tokens → Create Token. Prefixed pat\_, optional expiry, shown once.

[MCP — OAuth, no key at all](/docs/mcp/setup)OAuth 2.0 with PKCE and dynamic client registration — no API key, no pre-registered client.

Note

Tokens are minted **only in the app UI** — there is no REST endpoint that creates, lists, or revokes one. An automated integration needs a token supplied once (from a secret manager, for example); every documented operation is available to it after that. The [MCP servers](/docs/mcp) need no pre-provisioned key at all.

## 4\. Test without spending Creative Units

There is **no separate sandbox host** — `https://api.app.layer.ai/api` is the only environment, and there are no test keys. Instead, every generation family has an **estimate** operation that validates the request and returns its CU cost plus `has_sufficient_creative_units`, without starting a run or consuming any CUs:

```bash
curl -X POST https://api.app.layer.ai/api/v1/workspaces/$WORKSPACE_ID/inferences/estimate \
  -H "Authorization: Bearer $LAYER_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"model_id": "MODEL_ID", "parameters": {"prompt": "a castle at sunset"}}'
```

That single call exercises authentication, workspace access, the model id, and the parameter shape end to end — the whole integration except the generation itself. The current list of estimate operations is in [/api/onboarding.json](https://www.layer.ai/api/onboarding.json) under `test_environment.dry_run.operations`.

## 5\. Build before you have an account

These endpoints need no credential at all, so a client can be written and its requests validated before any account exists:

| Endpoint                                                                         | What it is                                                                       |
| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- |
| [/openapi.json](https://www.layer.ai/openapi.json)                               | Full OpenAPI 3.1 description of the REST API                                     |
| [/api/index.json](https://www.layer.ai/api/index.json)                           | Every Layer interface: REST, both MCP servers, auth, permissions, limits, policy |
| [/api/onboarding.json](https://www.layer.ai/api/onboarding.json)                 | This page, machine-readable — including the full list of endpoints below         |
| [/pricing.json](https://www.layer.ai/pricing.json)                               | Per-model CU prices                                                              |
| [/.well-known/api-catalog](https://www.layer.ai/.well-known/api-catalog)         | RFC 9727 API catalog                                                             |
| [/.well-known/ai-catalog.json](https://www.layer.ai/.well-known/ai-catalog.json) | APIs, auth, policy, and the readable content surface in one document             |
| [/.well-known/mcp](https://www.layer.ai/.well-known/mcp)                         | Both MCP servers, their transport, OAuth discovery, and tool lists               |
| [/llms.txt](https://www.layer.ai/llms.txt)                                       | Site index for LLM clients                                                       |

The REST API itself has no anonymous operations: every endpoint requires a bearer token, and an unauthenticated request answers `401` with an [RFC 9457 problem document](/docs/errors) — so a client can detect a missing credential rather than guess.

## When to talk to a human

Only for enterprise procurement — volume commitments, security review, MSAs. Nothing on this page requires it.

[Quickstart](/docs/quickstart)Authenticate, pick a model, estimate, generate.

[Enterprise](https://www.layer.ai/enterprise)SSO/SCIM, SOC 2 Type II, procurement.
