> ## Documentation Index
> Fetch the complete documentation index at: https://docs.focale.io/llms.txt
> Use this file to discover all available pages before exploring further.

# DSN

> How FOCALE_DSN is shaped, how it maps to the Authorization header, and what changes for a local intake host.

The DSN is the one value your app needs. Put it in `FOCALE_DSN`. Do not commit the live key.

## Shape

```bash theme={null}
FOCALE_DSN=https://<key>@intake.focale.io
```

The part before `@` is the ingest key. The host is where watching is sent. Production always uses `intake.focale.io`.

## Bearer mapping

The SDK reads the key out of the DSN and sends it as:

```text theme={null}
Authorization: Bearer <key>
```

You do not set that header yourself if you use the SDK.

## Local intake

If you are sending to a local intake instead of production, use that host in the DSN. The path layout stays the same. See [OTLP](/otlp) if you are not using the SDK.
