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

# anaconda auth login

export const GCell = ({children, className}) => <div className={`grid-table-cell ${className || ""}`} role="cell">
    {children}
  </div>;

export const GTH = ({children, className}) => <div className={`grid-table-th ${className || ""}`} role="columnheader">
    {children}
  </div>;

export const GRow = ({children}) => <div className="grid-table-row" role="row">{children}</div>;

export const GBody = ({children}) => <div className="grid-table-body" role="rowgroup">{children}</div>;

export const GHead = ({children}) => <div className="grid-table-head" role="rowgroup">{children}</div>;

export const GTable = ({children, className, cols}) => <div className={`grid-table not-prose overflow-hidden rounded-2xl ${className || ""}`} style={{
  "--grid-table-cols": cols
}} role="table">
    {children}
  </div>;

## Usage

```bash theme={null}
anaconda auth login [OPTIONS]
```

## Description

Opens the browser to complete OAuth authentication and store an API key in the configured keyring. If you are already authenticated, you are prompted to confirm before re-authenticating.

<Note>
  If the site is configured with `use_device_flow = true`, a device code flow is used instead of a browser redirect (useful for SSH sessions and headless servers).

  ***

  If you need to authenticate on a system without browser access, you can set the `ANACONDA_AUTH_API_KEY` environment variable. See [Non-interactive usage](/cli-reference/anaconda-auth/getting-started#non-interactive-usage).
</Note>

## Options

<GTable cols="25% 25% 50%">
  <GHead>
    <GRow>
      <GTH>Option</GTH>
      <GTH>Default</GTH>
      <GTH>Description</GTH>
    </GRow>
  </GHead>

  <GBody>
    <GRow>
      <GCell>`--force`</GCell>
      <GCell>`--no-force`</GCell>
      <GCell>Force a new login even if already authenticated</GCell>
    </GRow>

    <GRow>
      <GCell>`--ssl-verify / --no-ssl-verify`</GCell>
      <GCell>`--ssl-verify`</GCell>
      <GCell>Enable or disable SSL verification</GCell>
    </GRow>

    <GRow>
      <GCell>`--at <SITE>`</GCell>

      <GCell />

      <GCell>Target a specific Anaconda site (name or domain)</GCell>
    </GRow>

    <GRow>
      <GCell>`-h, --help`</GCell>

      <GCell />

      <GCell>Show help for this command</GCell>
    </GRow>
  </GBody>
</GTable>

## Examples

**Logging in**

```bash theme={null}
anaconda auth login
```

**Forcing a new login**

```bash theme={null}
anaconda auth login --force
```

<Note>
  If you're already logged in, you'll be prompted to confirm whether to force a new login. Using `--force` skips this prompt.
</Note>
