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

# Authentication

> Sign in once and use the same user identity across Synth workflows.

[Create an account](https://app.synthlabs.ai), then sign in from the CLI. You only need to do this once on each machine.

## Sign in

```bash theme={null}
synth login
synth status
```

`synth login` opens the Synth app in your browser. Approve the sign-in, then use `synth status` to check your account. The CLI stores your sign-in locally without printing the access token.

For a remote machine without a browser:

```bash theme={null}
synth login --no-browser
```

Open the displayed URL on any device and enter the short verification code. The CLI only needs outbound HTTPS; it does not start a callback server or require an SSH tunnel.

## Switch accounts or organizations

Refresh the current user's organization context:

```bash theme={null}
synth login --reauthenticate
```

To switch to a different user:

```bash theme={null}
synth logout
synth login
```

## Automation

Use `synth login` for interactive work; you do not need to create an API key or supply your user UUID. For CI, use a user-scoped credential supplied by your Synth administrator. Keep it in your CI secret store and expose it only to the process that runs Synth.

The current release requires the UUID-valued owner alongside an opaque personal access token:

```bash theme={null}
export SYNTH_ACCESS_TOKEN="<customer-token>"
export SYNTH_USER_ID="<customer-user-uuid>"
```

A JWT carries its owner subject and does not require the separate variable.

<Warning>
  Use a user-scoped credential for customer commands. Never place access tokens in a project `.env`, command history, documentation example, or task archive.
</Warning>

## Troubleshoot login

| Symptom | What to do |
| - | - |
| `already_authenticated` | Your cached identity is still valid. Use `synth status`. |
| Wrong organization | Run `synth login --reauthenticate` after selecting the organization in the Dashboard. |
| Wrong user | Run `synth logout`, then sign in again. |
| Remote browser did not open | Use `synth login --no-browser`. |
| Managed command reports service-key auth | Sign in through `synth login`; do not substitute a service key. |

<Card title="Run the quickstart" icon="rocket" href="/getting-started/quickstart">
  Choose an existing task, launch it with an explicit agent, and inspect the outcome.
</Card>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.