---
id: config
slug: /config
title: Configuration
toc_max_heading_level: 3
---

<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY -->

A `config.toml` file is generated after running `supabase init`.

This file is located in the `supabase` folder under `supabase/config.toml`.

<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY -->

## General {#general}

### `project_id` {#project_id}

A string used to distinguish different Supabase projects on the same host. Defaults to the working directory name when running `supabase init`.

<ul>
  <li>
    Required: <code>true</code>
  </li>
  <li>
    Default: <code>None</code>
  </li>
</ul>

<br />

<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY -->

## Auth Settings {#auth}

### `auth.site_url` {#auth.site_url}

The base URL of your website. Used as an allow-list for redirects and for constructing URLs used in emails.

<ul>
<li>Required: <code>true</code></li>
<li>Default: <code>"http://localhost:3000"</code></li>
<li>
<span>See also:</span>
<ul><li><a href="https://supabase.com/docs/reference/auth">Auth Server configuration</a></li></ul>
</li>

</ul>

<br />

### `auth.additional_redirect_urls` {#auth.additional_redirect_urls}

A list of _exact_ URLs that auth providers are permitted to redirect to post authentication.

<ul>
<li>Required: <code>true</code></li>
<li>Default: <code>["https://localhost:3000"]</code></li>
<li>
<span>See also:</span>
<ul><li><a href="https://supabase.com/docs/reference/auth">Auth Server configuration</a></li></ul>
</li>

</ul>

<br />

### `auth.jwt_expiry` {#auth.jwt_expiry}

How long tokens are valid for, in seconds. Defaults to 3600 (1 hour), maximum 604,800 seconds (one week).

<ul>
<li>Required: <code>true</code></li>
<li>Default: <code>3600</code></li>
<li>
<span>See also:</span>
<ul><li><a href="https://supabase.com/docs/reference/auth">Auth Server configuration</a></li></ul>
</li>

</ul>

<br />

### `auth.enable_signup` {#auth.enable_signup}

Allow/disallow new user signups to your project.

<ul>
<li>Required: <code>true</code></li>
<li>Default: <code>true</code></li>
<li>
<span>See also:</span>
<ul><li><a href="https://supabase.com/docs/reference/auth">Auth Server configuration</a></li></ul>
</li>

</ul>

<br />

### `auth.email.enable_signup` {#auth.email.enable_signup}

Allow/disallow new user signups via email to your project.

<ul>
<li>Required: <code>true</code></li>
<li>Default: <code>true</code></li>
<li>
<span>See also:</span>
<ul><li><a href="https://supabase.com/docs/reference/auth">Auth Server configuration</a></li></ul>
</li>

</ul>

<br />

### `auth.email.double_confirm_changes` {#auth.email.double_confirm_changes}

If enabled, a user will be required to confirm any email change on both the old, and new email addresses. If disabled, only the new email is required to confirm.

<ul>
<li>Required: <code>true</code></li>
<li>Default: <code>true</code></li>
<li>
<span>See also:</span>
<ul><li><a href="https://supabase.com/docs/reference/auth">Auth Server configuration</a></li></ul>
</li>

</ul>

<br />

### `auth.email.enable_confirmations` {#auth.email.enable_confirmations}

If enabled, users need to confirm their email address before signing in.

<ul>
<li>Required: <code>true</code></li>
<li>Default: <code>true</code></li>
<li>
<span>See also:</span>
<ul><li><a href="https://supabase.com/docs/reference/auth">Auth Server configuration</a></li></ul>
</li>

</ul>

<br />

### `auth.external.<provider>.enabled` {#auth.external.provider.enabled}

Use an external OAuth provider. The full list of providers are:

- `apple`
- `azure`
- `bitbucket`
- `discord`
- `facebook`
- `github`
- `gitlab`
- `google`
- `twitch`
- `twitter`
- `slack`
- `spotify`

<ul>
<li>Required: <code>true</code></li>
<li>Default: <code>true</code></li>
<li>
<span>See also:</span>
<ul><li><a href="https://supabase.com/docs/reference/auth">Auth Server configuration</a></li></ul>
</li>

</ul>

<br />

### `auth.external.<provider>.client_id` {#auth.external.provider.client_id}

Client ID for the external OAuth provider.

<ul>
<li>Required: <code>true</code></li>
<li>Default: <code>""</code></li>
<li>
<span>See also:</span>
<ul><li><a href="https://supabase.com/docs/reference/auth">Auth Server configuration</a></li></ul>
</li>

</ul>

<br />

### `auth.external.<provider>.secret` {#auth.external.provider.secret}

Client secret for the external OAuth provider.

<ul>
<li>Required: <code>true</code></li>
<li>Default: <code>""</code></li>
<li>
<span>See also:</span>
<ul><li><a href="https://supabase.com/docs/reference/auth">Auth Server configuration</a></li></ul>
</li>

</ul>

<br />

<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY -->

## API Settings {#api}

### `api.port` {#api.port}

Port to use for the API URL.

<ul>
<li>Required: <code>true</code></li>
<li>Default: <code>54321</code></li>
<li>
<span>See also:</span>
<ul><li><a href="https://postgrest.org/en/stable/configuration.html">PostgREST configuration</a></li></ul>
</li>

</ul>

<br />

### `api.extra_search_path` {#api.extra_search_path}

Extra schemas to add to the `search_path` of every request.

<ul>
<li>Required: <code>true</code></li>
<li>Default: <code>["extensions"]</code></li>
<li>
<span>See also:</span>
<ul><li><a href="https://postgrest.org/en/stable/configuration.html">PostgREST configuration</a></li></ul>
</li>

</ul>

<br />

### `api.max_rows` {#api.max_rows}

The maximum number of rows returned from a view, table, or stored procedure. Limits payload size for accidental or malicious requests.

<ul>
<li>Required: <code>true</code></li>
<li>Default: <code>1000</code></li>
<li>
<span>See also:</span>
<ul><li><a href="https://postgrest.org/en/stable/configuration.html">PostgREST configuration</a></li></ul>
</li>

</ul>

<br />

<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY -->

## Database Settings {#database}

### `db.port` {#db.port}

Port to use for the local database URL.

<ul>
<li>Required: <code>true</code></li>
<li>Default: <code>54322</code></li>
<li>
<span>See also:</span>
<ul><li><a href="https://postgrest.org/en/stable/configuration.html">PostgreSQL configuration</a></li></ul>
</li>

</ul>

<br />

### `db.major_version` {#db.major_version}

The database major version to use. This has to be the same as your remote database's. Run `SHOW server_version;` on the remote database to check.

<ul>
<li>Required: <code>true</code></li>
<li>Default: <code>14</code></li>
<li>
<span>See also:</span>
<ul><li><a href="https://postgrest.org/en/stable/configuration.html">PostgreSQL configuration</a></li></ul>
</li>

</ul>

<br />

<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY -->

## Dashboard Settings {#dashboard}

### `studio.port` {#studio.port}

Port to use for Supabase Studio.

<ul>
  <li>
    Required: <code>true</code>
  </li>
  <li>
    Default: <code>54323</code>
  </li>
</ul>

<br />

<!-- AUTOGENERATED: DO NOT EDIT DIRECTLY -->

## Local Development {#local}

### `inbucket.port` {#inbucket.port}

Port to use for the email testing server web interface.

Emails sent with the local dev setup are not actually sent - rather, they are monitored, and you can view the emails that would have been sent from the web interface.

<ul>
<li>Required: <code>true</code></li>
<li>Default: <code>54324</code></li>
<li>
<span>See also:</span>
<ul><li><a href="https://www.inbucket.org">Inbucket documentation</a></li></ul>
</li>

</ul>

<br />
