# `Supabase.Client.Auth`

Auth configuration schema. This schema is used to configure the auth
options. This schema is embedded in the `Supabase.Client` schema.

## Fields

- `:auto_refresh_token` - Automatically refresh the token when it expires. Defaults to `true`.
- `:debug` - Enable debug mode. Defaults to `false`.
- `:detect_session_in_url` - Detect session in URL. Defaults to `true`.
- `:flow_type` - Authentication flow type. Defaults to `"implicit"`.
- `:persist_session` - Persist session. Defaults to `true`.
- `:storage` - Storage type.
- `:storage_key` - Storage key. Default to `"sb-$host-auth-token"` where $host is the hostname of your Supabase URL.

For more information about the auth options, see the documentation for
the [client](https://supabase.com/docs/reference/javascript/initializing) and
[auth guides](https://supabase.com/docs/guides/auth)

# `params`

```elixir
@type params() :: %{
  auto_refresh_token: boolean(),
  debug: boolean(),
  detect_session_in_url: boolean(),
  flow_type: String.t(),
  persist_session: boolean(),
  storage_key: String.t()
}
```

# `t`

```elixir
@type t() :: %Supabase.Client.Auth{
  auto_refresh_token: boolean(),
  debug: boolean(),
  detect_session_in_url: boolean(),
  flow_type: String.t(),
  persist_session: boolean(),
  storage_key: String.t()
}
```

# `changeset`

```elixir
@spec changeset(t(), map()) :: Ecto.Changeset.t()
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
