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

# Web UI

> Toggle the bundled snapr web UI on or off, or run the server in API-only mode.

`server.ui` toggles the bundled web UI (the SPA assets and HTML fallback). The HTTP listener itself is configured by the surrounding [`server`](/configuration/server/overview) block.

## Options

| Option    | Type | Required | Default | Description                                      |
| --------- | ---- | -------- | ------- | ------------------------------------------------ |
| `enabled` | bool | No       | `true`  | Serve the bundled web UI alongside the JSON API. |

<Warning>
  Setting `server.ui.enabled: true` while `server.enabled: false` is rejected at startup — the UI cannot be served
  without a listener.
</Warning>

## API-only mode

Disable the UI when snapr is driven by an external dashboard or automation and the bundled UI would only be dead weight.

```yaml snapr.yaml theme={null}
server:
  enabled: true
  address: '0.0.0.0:8080'
  secret: env:SNAPR_JWT_SECRET
  auth:
    enabled: true
    username: admin
    password: env:SNAPR_ADMIN_PASSWORD
  ui:
    enabled: false

jobs:
  - name: nightly
    schedule: '0 2 * * *'
    # ...
```

In this mode, `/api/*` endpoints behave as usual; requests to other paths return `404`. See the [API reference](/api-reference/overview) for the available endpoints.
