|
| 1 | +# A string used to distinguish different Supabase projects on the same host. Defaults to the |
| 2 | +# working directory name when running `supabase init`. |
| 3 | +project_id = "service" |
| 4 | + |
| 5 | +[api] |
| 6 | +enabled = true |
| 7 | +# Port to use for the API URL. |
| 8 | +port = 54321 |
| 9 | +# Schemas to expose in your API. Tables, views and stored procedures in this schema will get API |
| 10 | +# endpoints. `public` is always included. |
| 11 | +schemas = ["public", "graphql_public"] |
| 12 | +# Extra schemas to add to the search_path of every request. `public` is always included. |
| 13 | +extra_search_path = ["public", "extensions"] |
| 14 | +# The maximum number of rows returns from a view, table, or stored procedure. Limits payload size |
| 15 | +# for accidental or malicious requests. |
| 16 | +max_rows = 1000 |
| 17 | + |
| 18 | +[api.tls] |
| 19 | +enabled = false |
| 20 | + |
| 21 | +[db] |
| 22 | +# Port to use for the local database URL. |
| 23 | +port = 54322 |
| 24 | +# Port used by db diff command to initialize the shadow database. |
| 25 | +shadow_port = 54320 |
| 26 | +# The database major version to use. This has to be the same as your remote database's. Run `SHOW |
| 27 | +# server_version;` on the remote database to check. |
| 28 | +major_version = 15 |
| 29 | + |
| 30 | +[db.pooler] |
| 31 | +enabled = false |
| 32 | +# Port to use for the local connection pooler. |
| 33 | +port = 54329 |
| 34 | +# Specifies when a server connection can be reused by other clients. |
| 35 | +# Configure one of the supported pooler modes: `transaction`, `session`. |
| 36 | +pool_mode = "transaction" |
| 37 | +# How many server connections to allow per user/database pair. |
| 38 | +default_pool_size = 20 |
| 39 | +# Maximum number of client connections allowed. |
| 40 | +max_client_conn = 100 |
| 41 | + |
| 42 | +[db.seed] |
| 43 | +# If enabled, seeds the database after migrations during a db reset. |
| 44 | +enabled = true |
| 45 | +# Specifies an ordered list of seed files to load during db reset. |
| 46 | +# Supports glob patterns relative to supabase directory. For example: |
| 47 | +# sql_paths = ['./seeds/*.sql', '../project-src/seeds/*-load-testing.sql'] |
| 48 | +sql_paths = ['./seed.sql'] |
| 49 | + |
| 50 | +[realtime] |
| 51 | +enabled = true |
| 52 | +# Bind realtime via either IPv4 or IPv6. (default: IPv4) |
| 53 | +# ip_version = "IPv6" |
| 54 | +# The maximum length in bytes of HTTP request headers. (default: 4096) |
| 55 | +# max_header_length = 4096 |
| 56 | + |
| 57 | +[studio] |
| 58 | +enabled = true |
| 59 | +# Port to use for Supabase Studio. |
| 60 | +port = 54323 |
| 61 | +# External URL of the API server that frontend connects to. |
| 62 | +api_url = "http://127.0.0.1" |
| 63 | +# OpenAI API Key to use for Supabase AI in the Supabase Studio. |
| 64 | +openai_api_key = "env(OPENAI_API_KEY)" |
| 65 | + |
| 66 | +# Email testing server. Emails sent with the local dev setup are not actually sent - rather, they |
| 67 | +# are monitored, and you can view the emails that would have been sent from the web interface. |
| 68 | +[inbucket] |
| 69 | +enabled = true |
| 70 | +# Port to use for the email testing server web interface. |
| 71 | +port = 54324 |
| 72 | +# Uncomment to expose additional ports for testing user applications that send emails. |
| 73 | +# smtp_port = 54325 |
| 74 | +# pop3_port = 54326 |
| 75 | + |
| 76 | +[storage] |
| 77 | +enabled = true |
| 78 | +# The maximum file size allowed (e.g. "5MB", "500KB"). |
| 79 | +file_size_limit = "50MiB" |
| 80 | + |
| 81 | +[storage.image_transformation] |
| 82 | +enabled = true |
| 83 | + |
| 84 | +# Uncomment to configure local storage buckets |
| 85 | +# [storage.buckets.images] |
| 86 | +# public = false |
| 87 | +# file_size_limit = "50MiB" |
| 88 | +# allowed_mime_types = ["image/png", "image/jpeg"] |
| 89 | +# objects_path = "./images" |
| 90 | + |
| 91 | +[auth] |
| 92 | +enabled = true |
| 93 | +# The base URL of your website. Used as an allow-list for redirects and for constructing URLs used |
| 94 | +# in emails. |
| 95 | +site_url = "http://127.0.0.1:3000" |
| 96 | +# A list of *exact* URLs that auth providers are permitted to redirect to post authentication. |
| 97 | +additional_redirect_urls = ["https://127.0.0.1:3000"] |
| 98 | +# How long tokens are valid for, in seconds. Defaults to 3600 (1 hour), maximum 604,800 (1 week). |
| 99 | +jwt_expiry = 3600 |
| 100 | +# If disabled, the refresh token will never expire. |
| 101 | +enable_refresh_token_rotation = true |
| 102 | +# Allows refresh tokens to be reused after expiry, up to the specified interval in seconds. |
| 103 | +# Requires enable_refresh_token_rotation = true. |
| 104 | +refresh_token_reuse_interval = 10 |
| 105 | +# Allow/disallow new user signups to your project. |
| 106 | +enable_signup = true |
| 107 | +# Allow/disallow anonymous sign-ins to your project. |
| 108 | +enable_anonymous_sign_ins = false |
| 109 | +# Allow/disallow testing manual linking of accounts |
| 110 | +enable_manual_linking = false |
| 111 | + |
| 112 | +[auth.email] |
| 113 | +# Allow/disallow new user signups via email to your project. |
| 114 | +enable_signup = true |
| 115 | +# If enabled, a user will be required to confirm any email change on both the old, and new email |
| 116 | +# addresses. If disabled, only the new email is required to confirm. |
| 117 | +double_confirm_changes = true |
| 118 | +# If enabled, users need to confirm their email address before signing in. |
| 119 | +enable_confirmations = false |
| 120 | +# If enabled, users will need to reauthenticate or have logged in recently to change their password. |
| 121 | +secure_password_change = false |
| 122 | +# Controls the minimum amount of time that must pass before sending another signup confirmation or password reset email. |
| 123 | +max_frequency = "1s" |
| 124 | + |
| 125 | +# Use a production-ready SMTP server |
| 126 | +# [auth.email.smtp] |
| 127 | +# host = "smtp.sendgrid.net" |
| 128 | +# port = 587 |
| 129 | +# user = "apikey" |
| 130 | +# pass = "env(SENDGRID_API_KEY)" |
| 131 | +# admin_email = "admin@email.com" |
| 132 | +# sender_name = "Admin" |
| 133 | + |
| 134 | +# Uncomment to customize email template |
| 135 | +# [auth.email.template.invite] |
| 136 | +# subject = "You have been invited" |
| 137 | +# content_path = "./supabase/templates/invite.html" |
| 138 | + |
| 139 | +[auth.sms] |
| 140 | +# Allow/disallow new user signups via SMS to your project. |
| 141 | +enable_signup = true |
| 142 | +# If enabled, users need to confirm their phone number before signing in. |
| 143 | +enable_confirmations = false |
| 144 | +# Template for sending OTP to users |
| 145 | +template = "Your code is {{ .Code }} ." |
| 146 | +# Controls the minimum amount of time that must pass before sending another sms otp. |
| 147 | +max_frequency = "5s" |
| 148 | + |
| 149 | +# Use pre-defined map of phone number to OTP for testing. |
| 150 | +# [auth.sms.test_otp] |
| 151 | +# 4152127777 = "123456" |
| 152 | + |
| 153 | +# Configure logged in session timeouts. |
| 154 | +# [auth.sessions] |
| 155 | +# Force log out after the specified duration. |
| 156 | +# timebox = "24h" |
| 157 | +# Force log out if the user has been inactive longer than the specified duration. |
| 158 | +# inactivity_timeout = "8h" |
| 159 | + |
| 160 | +# This hook runs before a token is issued and allows you to add additional claims based on the authentication method used. |
| 161 | +# [auth.hook.custom_access_token] |
| 162 | +# enabled = true |
| 163 | +# uri = "pg-functions://<database>/<schema>/<hook_name>" |
| 164 | + |
| 165 | +# Configure one of the supported SMS providers: `twilio`, `twilio_verify`, `messagebird`, `textlocal`, `vonage`. |
| 166 | +[auth.sms.twilio] |
| 167 | +enabled = false |
| 168 | +account_sid = "" |
| 169 | +message_service_sid = "" |
| 170 | +# DO NOT commit your Twilio auth token to git. Use environment variable substitution instead: |
| 171 | +auth_token = "env(SUPABASE_AUTH_SMS_TWILIO_AUTH_TOKEN)" |
| 172 | + |
| 173 | +[auth.mfa] |
| 174 | +# Control how many MFA factors can be enrolled at once per user. |
| 175 | +max_enrolled_factors = 10 |
| 176 | + |
| 177 | +# Control use of MFA via App Authenticator (TOTP) |
| 178 | +[auth.mfa.totp] |
| 179 | +enroll_enabled = true |
| 180 | +verify_enabled = true |
| 181 | + |
| 182 | +# Configure Multi-factor-authentication via Phone Messaging |
| 183 | +# [auth.mfa.phone] |
| 184 | +# enroll_enabled = true |
| 185 | +# verify_enabled = true |
| 186 | +# otp_length = 6 |
| 187 | +# template = "Your code is {{ .Code }} ." |
| 188 | +# max_frequency = "10s" |
| 189 | + |
| 190 | +# Use an external OAuth provider. The full list of providers are: `apple`, `azure`, `bitbucket`, |
| 191 | +# `discord`, `facebook`, `github`, `gitlab`, `google`, `keycloak`, `linkedin_oidc`, `notion`, `twitch`, |
| 192 | +# `twitter`, `slack`, `spotify`, `workos`, `zoom`. |
| 193 | +[auth.external.apple] |
| 194 | +enabled = false |
| 195 | +client_id = "" |
| 196 | +# DO NOT commit your OAuth provider secret to git. Use environment variable substitution instead: |
| 197 | +secret = "env(SUPABASE_AUTH_EXTERNAL_APPLE_SECRET)" |
| 198 | +# Overrides the default auth redirectUrl. |
| 199 | +redirect_uri = "" |
| 200 | +# Overrides the default auth provider URL. Used to support self-hosted gitlab, single-tenant Azure, |
| 201 | +# or any other third-party OIDC providers. |
| 202 | +url = "" |
| 203 | +# If enabled, the nonce check will be skipped. Required for local sign in with Google auth. |
| 204 | +skip_nonce_check = false |
| 205 | + |
| 206 | +# Use Firebase Auth as a third-party provider alongside Supabase Auth. |
| 207 | +[auth.third_party.firebase] |
| 208 | +enabled = false |
| 209 | +# project_id = "my-firebase-project" |
| 210 | + |
| 211 | +# Use Auth0 as a third-party provider alongside Supabase Auth. |
| 212 | +[auth.third_party.auth0] |
| 213 | +enabled = false |
| 214 | +# tenant = "my-auth0-tenant" |
| 215 | +# tenant_region = "us" |
| 216 | + |
| 217 | +# Use AWS Cognito (Amplify) as a third-party provider alongside Supabase Auth. |
| 218 | +[auth.third_party.aws_cognito] |
| 219 | +enabled = false |
| 220 | +# user_pool_id = "my-user-pool-id" |
| 221 | +# user_pool_region = "us-east-1" |
| 222 | + |
| 223 | +[edge_runtime] |
| 224 | +enabled = true |
| 225 | +# Configure one of the supported request policies: `oneshot`, `per_worker`. |
| 226 | +# Use `oneshot` for hot reload, or `per_worker` for load testing. |
| 227 | +policy = "oneshot" |
| 228 | +inspector_port = 8083 |
| 229 | + |
| 230 | +[analytics] |
| 231 | +enabled = true |
| 232 | +port = 54327 |
| 233 | +# Configure one of the supported backends: `postgres`, `bigquery`. |
| 234 | +backend = "postgres" |
| 235 | + |
| 236 | +# Experimental features may be deprecated any time |
| 237 | +[experimental] |
| 238 | +# Configures Postgres storage engine to use OrioleDB (S3) |
| 239 | +orioledb_version = "" |
| 240 | +# Configures S3 bucket URL, eg. <bucket_name>.s3-<region>.amazonaws.com |
| 241 | +s3_host = "env(S3_HOST)" |
| 242 | +# Configures S3 bucket region, eg. us-east-1 |
| 243 | +s3_region = "env(S3_REGION)" |
| 244 | +# Configures AWS_ACCESS_KEY_ID for S3 bucket |
| 245 | +s3_access_key = "env(S3_ACCESS_KEY)" |
| 246 | +# Configures AWS_SECRET_ACCESS_KEY for S3 bucket |
| 247 | +s3_secret_key = "env(S3_SECRET_KEY)" |
0 commit comments