# auth

> Shoplazza CLI auth commands: log in and out over OAuth 2.0, check credential status, list granted scopes, and switch the store the session points at.

Manage authentication, credentials, and store connections.

## login

Log in to Shoplazza via OAuth 2.0.

```shell
shoplazza auth login [flags]
```

### Flags

| Flag | Type | Description |
|------|------|-------------|
| `--store-domain, -s <domain>` | string | Store domain to connect to (e.g. `my-store.myshoplaza.com`) |
| `--domain <domains>` | StringSlice | Comma-separated business domains for scope expansion (e.g. `products,orders`) |
| `--scope <scopes>` | StringSlice | Comma-separated OAuth scopes (e.g. `read_product,write_product`) |
| `--uat <token>` | string | User Access Token for non-interactive login (CI/CD) |
| `--timeout <seconds>` | int | Web-flow polling timeout in seconds (default: `300`) |
| `--poll-interval <seconds>` | int | Web-flow poll interval in seconds (default: `2`) |

### Examples

```shell
# Interactive login with browser
shoplazza auth login --store-domain my-store.myshoplaza.com

# Login with specific domain scopes
shoplazza auth login --store-domain my-store.myshoplaza.com --domain products,orders,customers

# Non-interactive login for CI/CD
shoplazza auth login --uat $SHOPLAZZA_UAT --store-domain my-store.myshoplaza.com
```

## logout

Remove all stored credentials from OS keychain.

```shell
shoplazza auth logout
```

## status

Display current authentication state including account, store, and granted scopes.

```shell
shoplazza auth status
```

## scopes

List all available OAuth scopes that can be requested during login.

```shell
shoplazza auth scopes
```

## store use

Switch the active store without re-authenticating.

```shell
shoplazza auth store use [flags]
```

### Flags

| Flag | Type | Description |
|------|------|-------------|
| `--store-domain, -s <domain>` | string | Store domain to switch to |

### Examples

```shell
shoplazza auth store use --store-domain another-store.myshoplaza.com
```
