ENV Variables
ENV Variables
Set ENV Variables with CLI
Use the export command to set variables. For example:$ export ETHEREUM_JSONRPC_VARIANT=nethermind$ export COIN=POA$ export NETWORK=POA
Example ENV Variables Set
The following variables are set for the Gauss Induction Labs Instance. Note that some variables are not included as they contain private information which should not be exposed.
Available ENV Variables
This table is horizontally scrollable, version information is located in the last column. ENVs are listed by category:
General
Variable
Required
Description
Default
Version
Need recompile
DATABASE_URL
✅
Variable to define the Postgres Database endpoint.
(empty)
all
ETHEREUM_JSONRPC_VARIANT
✅
Tells the application which RPC Client the node is using (i.e. erigon
, geth
, nethermind
, besu
, or ganache
)
ganache
all
ETHEREUM_JSONRPC_HTTP_URL
✅
The RPC endpoint used to fetch blocks, transactions, receipts, tokens.
localhost:8545
all
ETHEREUM_JSONRPC_TRACE_URL
The RPC endpoint specifically for the Erigon/Geth/Nethermind/Besu client used by trace_block and trace_replayTransaction. This can be used to designate a tracing node.
localhost:8545
all
ETHEREUM_JSONRPC_WS_URL
The WebSockets RPC endpoint used to subscribe to the newHeads
subscription alerting the indexer to fetch new blocks.
ws://localhost:8546
all
ETHEREUM_JSONRPC_TRANSPORT
Specifies the transport for Blockscout to connect to the Ethereum Node. Available transports are http
and ipc
. If ipc
is selected, also set IPC_PATH
variable.
http
v3.1.0+
ETHEREUM_JSONRPC_HTTP_INSECURE
If true
is set, allows insecure HTTP connections to the archive node. For instance, it allows to bypass expired SSL certificate at the archive node endpoint. Implemented in (#6573)[https://github.com/blockscout/blockscout/pull/6573]
(empty)
v5.0.0+
NETWORK
Environment variable for the main EVM network such as Ethereum or POA.
POA
all
SUBNETWORK
Environment variable for the subnetwork such as Core or Sokol Network. This will be displayed as selected in the chains list dropdown.
POA Sokol
all
IPC_PATH
Path to the IPC file of the running node if IPC transport is chosen.
(empty)
v2.1.1+
NETWORK_PATH
Used to set a network path other than what is displayed in the root directory. An example would be to add /eth/mainnet/
to the root directory.
/
all
API_PATH
PATH in API endpoint URL at API docs page.
/
v3.1.0+
SOCKET_ROOT
Custom websocket path.
(empty)
v3.0.0+
BLOCKSCOUT_HOST
Host for API endpoint examples.
localhost
v2.1.0+
BLOCKSCOUT_PROTOCOL
Url scheme for blockscout.
in prod env https
is used, in dev env http
is used
v2.1.0+
SECRET_KEY_BASE
Use mix phx.gen.secret to generate a new Secret Key Base string to protect production assets.
(empty)
all
CHECK_ORIGIN
Used to check the origin of requests when the origin header is present. It defaults to false
. In case of true, it will check against the host value.
false
all
PORT
Default port the application runs on is 4000.
4000
all
COIN
The coin here is checked via the CoinGecko API to obtain USD prices on graphs and other areas of the UI.
POA
all
COIN_NAME
Displayed name of the coin. Also used for "Add chain to MetaMask" button and for Account functionality as native coin name in the email letters for watch list.
(empty)
v4.1.2+
EMISSION_FORMAT
Should be set to POA
if you have block emission identical to POA Network. This env var is used only if CHAIN_SPEC_PATH
is set.
DEFAULT
v2.0.4+
CHAIN_SPEC_PATH
Chain specification path (absolute file system path or URL) to import block emission reward ranges and genesis account balances from. Geth- and OpenEthereum-style specs are supported.
(empty)
v2.0.4+
SUPPLY_MODULE
This environment variable is used by the xDai Chain/RSK in order to tell the application how to calculate the total supply of the chain. Available values are TokenBridge
, RSK
(empty)
all
POOL_SIZE
Variable to define the number of database connections allowed excluding read-only API endpoints requests.
50
all
POOL_SIZE_API
Variable to define the number of database connections allowed for read-only API endpoints requests.
50
v4.1.0+
ECTO_USE_SSL
Production environment variable to use SSL on Ecto queries.
true
all
HEART_BEAT_TIMEOUT
Production environment variable to restart the application in the event of a crash.
30
all
HEART_COMMAND
Production environment variable to restart the application in the event of a crash.
(empty)
all
ELIXIR_VERSION
Elixir version to install on the node before Blockscout deploy. It is used in bash script in Terraform / Ansible deployment script
(empty)
all
GRAPHIQL_TRANSACTION
Default transaction hash in a sample query to GraphiQL.
(empty)
v1.2.0+
✅
DISABLE_WEBAPP
If true
, endpoints to webapp are hidden (compile-time). Also, enabling it makes notifications go through db_notify
false
v2.0.3+
✅
DISABLE_READ_API
If true
, read-only endpoints to API are hidden (compile-time).
false
v2.0.3+
✅
DISABLE_WRITE_API
If true
, write endpoints to API are hidden (compile-time).
false
v2.0.3+
✅
WEBAPP_URL
Link to web application instance, e.g. protocol://host/path
(empty)
v2.0.3+
API_URL
Link to API instance, e.g. protocol://host/path
(empty)
v2.0.3+
WOBSERVER_ENABLED
If true
enables wobserver interface.
(empty)
v3.3.2+
✅
CHECKSUM_ADDRESS_HASHES
If set to true
, redirects to checksummed version of address hashes.
true
v3.1.0+
CHECKSUM_FUNCTION
Defines checksum address function. 2 available values: rsk
, eth
eth
v2.0.1+
RESTRICTED_LIST
A comma-separated list of addresses to enable restricted access to them.
(empty)
v3.3.3+
RESTRICTED_LIST_KEY
A key to access addresses listed inRESTRICTED_LIST
variable. Can be passed via query param to the page's URL: ?key=...
(empty)
v3.3.3+
CUSTOM_CONTRACT_ADDRESSES_TEST_TOKEN
List of test tokens addresses: test label will be applied and those tokens will be excluded from omni bridge market cap calculation.
(empty)
v3.6.0+
CHAIN_ID
Chain ID of the network. For instance, 100 in the case of xDai chain.
(empty)
v3.7.0+
JSON_RPC
(empty)
v4.1.0+
HEALTHY_BLOCKS_PERIOD
5 mins
v2.0.2+
NEW_TAGS
(empty)
v5.0.0+
CUSTOM_CONTRACT_ADDRESSES_${tag_name}
(empty)
v5.0.0+
API_V2_ENABLED
(empty)
v5.0.0+
TOKEN_ID_MIGRATION_FIRST_BLOCK
0
v5.0.0+
TOKEN_ID_MIGRATION_CONCURRENCY
1
v5.0.0+
TOKEN_ID_MIGRATION_BATCH_SIZE
500
v5.0.0+
SESSION_COOKIE_DOMAIN
(empty)
v5.0.0+
Indexer management
Variable
Required
Description
Default
Version
BLOCK_TRANSFORMER
Transformer for blocks: base or clique.
base
v1.3.4+
DISABLE_INDEXER
If true
, indexer application doesn't run.
false
v2.0.3+
INDEXER_DISABLE_PENDING_TRANSACTIONS_FETCHER
If true
, pending transactions fetcher is disabled.
false
v4.1.2+
INDEXER_DISABLE_INTERNAL_TRANSACTIONS_FETCHER
If true
, internal transactions fetcher is disabled.
false
v4.1.2+
INDEXER_DISABLE_BLOCK_REWARD_FETCHER
if true
, block rewards fetcher is disabled.
false
v4.1.3+
INDEXER_DISABLE_ADDRESS_COIN_BALANCE_FETCHER
If true
, coin balances fetcher is disabled.
false
v4.1.3+
INDEXER_DISABLE_CATALOGED_TOKEN_UPDATER_FETCHER
If true
, cataloged tokens metadata fetcher is disabled.
false
v4.1.3+
INDEXER_MEMORY_LIMIT
Memory soft limit for the indexer.
1Gb
v4.1.3+
INDEXER_EMPTY_BLOCKS_SANITIZER_BATCH_SIZE
Batch size for empty block sanitizer (re-fetcher).
100
v4.1.3+
INDEXER_CATCHUP_BLOCKS_BATCH_SIZE
10
v5.0.0+
INDEXER_CATCHUP_BLOCKS_CONCURRENCY
10
v5.0.0+
INDEXER_DISABLE_EMPTY_BLOCK_SANITIZER
Empty blocks sanitizer is disabled if true
false
v4.1.3+
DISABLE_REALTIME_INDEXER
If true
, realtime fetcher doesn't run
false
v4.1.6+
DISABLE_KNOWN_TOKENS
Disables or enables token symbol for known contract.
false
v3.4.0+
FIRST_BLOCK
The block number, where import of blocks by catchup fetcher begins from.
0
v1.3.8+
LAST_BLOCK
The block number, where import of blocks by catchup fetcher stops.
(empty)
v2.0.3+
TRACE_FIRST_BLOCK
The block number, where indexing of internal transactions begins from.
0
v4.1.0+
TRACE_LAST_BLOCK
The block number, where indexing of internal transactions stops.
(empty)
v4.1.0+
BLOCK_RANGES
v4.1.7+
FETCH_REWARDS_WAY
Tells the application how to calculate block rewards, by fetching via json_rpc (trace_block
) or manual by block params (manual
).
trace_block
v4.1.4+
ETHEREUM_JSONRPC_DEBUG_TRACE_TRANSACTION_TIMEOUT
5s
v4.1.3+
ETHEREUM_JSONRPC_DISABLE_ARCHIVE_BALANCES
false
v5.0.0+
ETHEREUM_JSONRPC_PENDING_TRANSACTIONS_TYPE
default
v5.0.0+
DISABLE_TOKEN_INSTANCE_FETCHER
If true
, token instance fetcher doesn't run
false
v5.0.0+
INDEXER_INTERNAL_TRANSACTIONS_BATCH_SIZE
10
v5.0.0+
INDEXER_INTERNAL_TRANSACTIONS_CONCURRENCY
4
v5.0.0+
INDEXER_RECEIPTS_BATCH_SIZE
250
v5.0.0+
INDEXER_RECEIPTS_CONCURRENCY
10
v5.0.0+
INDEXER_COIN_BALANCES_BATCH_SIZE
500
v5.0.0+
INDEXER_COIN_BALANCES_CONCURRENCY
4
v5.0.0+
INDEXER_CATCHUP_MISSING_RANGES_BATCH_SIZE
100000
v5.0.0+
MIN_MISSING_BLOCK_NUMBER_BATCH_SIZE
100000
v5.0.0+
INDEXER_INTERNAL_TRANSACTIONS_TRACER_TYPE
call_tracer
master
Exchange rates management
Variable
Required
Description
Default
Version
DISABLE_EXCHANGE_RATES
Disables or enables fetching of coin price from Coingecko API.
false
v3.1.2+
EXCHANGE_RATES_SOURCE
This environment variable is used to calculate the exchange rates. Available value is token_bridge
. Available values are also coin_gecko
and coin_market_cap
.
(empty)
v4.1.4+
EXCHANGE_RATES_COINGECKO_COIN_ID
Explicitly set CoinGecko coin ID.
(empty)
v4.1.4+
EXCHANGE_RATES_COINGECKO_API_KEY
CoinGecko API key.
(empty)
v4.1.4+
EXCHANGE_RATES_COINMARKETCAP_API_KEY
CoinMarketCap API key.
(empty)
v4.1.4+
EXCHANGE_RATES_FETCH_BTC_VALUE
(empty)
v4.1.5+
Cache management
Variable
Required
Description
Default
Version
CACHE_TXS_COUNT_PERIOD
Interval in seconds to restart the task, which calculates the total txs count.
2 hours
v4.1.3+
CACHE_ADDRESS_COUNT_PERIOD
2 hours
v4.1.3+
CACHE_ADDRESS_SUM_PERIOD
1 hour
v4.1.3+
CACHE_TOTAL_GAS_USAGE_PERIOD
Interval in seconds to restart the task, which calculates the total gas usage.
2 hours
v4.1.3+
CACHE_ADDRESS_TRANSACTIONS_GAS_USAGE_COUNTER_PERIOD
Interval in seconds to restart the task, which calculates gas usage at the address.
30 minutes
v4.1.3+
CACHE_TOKEN_HOLDERS_COUNTER_PERIOD
Interval in seconds to restart the task, which calculates holders count of the token.
1 hour
v4.1.3+
CACHE_TOKEN_TRANSFERS_COUNTER_PERIOD
Interval in seconds to restart the task, which calculates transfers count of the token.
1 hour
v4.1.3+
CACHE_ADDRESS_WITH_BALANCES_UPDATE_INTERVAL
Interval in seconds to restart the task, which calculates addresses with balances.
30 minutes
v4.1.3+
TOKEN_METADATA_UPDATE_INTERVAL
Interval in seconds to restart the task which updates token metadata.
60 * 60 * 24 * 2
v2.0.1+
CACHE_AVERAGE_BLOCK_PERIOD
Update of average block period cache, in seconds.
30 minutes
v4.1.3+
CACHE_MARKET_HISTORY_PERIOD
Update of market history cache, in seconds.
6 hours
v4.1.3+
CACHE_ADDRESS_TRANSACTIONS_COUNTER_PERIOD
1 hour
v3.4.0+
CACHE_TOKEN_EXCHANGE_RATE_PERIOD
Managing cache invalidation for token's exchange rate.
1 hour
v3.5.0+
CACHE_ADDRESS_TOKENS_USD_SUM_PERIOD
Managing of cache invalidation period for the sum of USD value of tokens per tokens' holder address.
(empty)
v3.5.0+
CACHE_EXCHANGE_RATES_PERIOD
10 minutes
v4.1.5+
TOKEN_BALANCE_ON_DEMAND_FETCHER_THRESHOLD_MINUTES
60 minutes
v3.7.1+
COIN_BALANCE_ON_DEMAND_FETCHER_THRESHOLD_MINUTES
60 minutes
v4.1.2+
CACHE_ADDRESS_TOKEN_TRANSFERS_COUNTER_PERIOD
(empty)
v4.0.0+
CACHE_BLOCK_COUNT_PERIOD
2 hours
v4.1.3+
Gas price oracle management
Variable
Required
Description
Default
Version
GAS_PRICE_ORACLE_NUM_OF_BLOCKS
Gas price oracle: number of blocks to calculate average gas price from
200
v4.1.4+
GAS_PRICE_ORACLE_SAFELOW_PERCENTILE
Gas price oracle: safelow percentile
35
v4.1.4+
GAS_PRICE_ORACLE_AVERAGE_PERCENTILE
Gas price oracle: average percentile
60
v4.1.4+
GAS_PRICE_ORACLE_FAST_PERCENTILE
Gas price oracle: fast percentile
90
v4.1.4+
GAS_PRICE_ORACLE_CACHE_PERIOD
Gas price oracle: period of gas prices update
30 sec
v4.1.4+
Main page dashboard management
Variable
Required
Description
Default
Version
GAS_PRICE
Gas price in Gwei. If the variable is present, gas price displays on the main page.
(empty)
v3.3.2+
ENABLE_TXS_STATS
Disables or enables txs per day stats gathering.
true
v3.1.2+
SHOW_PRICE_CHART
Disables or enables price and market cap of coin charts on the main page.
false
v3.1.2+
SHOW_TXS_CHART
Disables or enables txs count per day chart on the main page.
true
v3.1.2+
HISTORY_FETCH_INTERVAL
Interval in minutes how often to request count of txs per current day in order to display txs count per day chart on the main page.
60
v3.1.2+
TXS_HISTORIAN_INIT_LAG
The initial delay in minutes in txs count history fetching in order to display txs count per day history chart on the main page.
0
v3.1.2+
TXS_STATS_DAYS_TO_COMPILE_AT_INIT
Number of days for fetching of history of txs count per day in order to display it in txs count per day history chart on the main page.
365
v3.1.2+
Header management
Variable
Required
Description
Default
Version
LOGO
/images/blockscout_logo.svg
all
SHOW_TESTNET_LABEL
(empty)
v4.1.6+
TESTNET_LABEL_TEXT
Testnet
v4.1.6+
SUPPORTED_CHAINS
[ { title: "POA", url: "https://blockscout.com/poa/core" }, { title: "Sokol", url: "https://blockscout.com/poa/sokol", test_net?: true }, { title: "Gnosis Chain", url: "https://blockscout.com/xdai/mainnet" }, { title: "Ethereum Classic", url: "https://blockscout.com/etc/mainnet", other?: true }, { title: "RSK", url: "https://blockscout.com/rsk/mainnet", other?: true } ]
v2.0.0+
APPS_MENU
true/false. If true, the Apps navigation menu item appears.
false
v3.3.1+
APPS
(empty)
v5.0.0+
Footer management
Variable
Required
Description
Default
Version
LOGO_FOOTER
/images/blockscout_logo.svg
RELEASE_LINK
The link to Blockscout release notes in the footer.
https: //github.com/poanetwork/ blockscout/releases/ tag/${BLOCKSCOUT_VERSION}
v1.3.5+
BLOCKSCOUT_VERSION
Added to the footer to signify the current BlockScout version.
(empty)
v1.3.4+
FOOTER_CHAT_LINK
https://discord.gg/3CtNAqVMRV
v4.1.6+
FOOTER_ENABLE_FORUM_LINK
false
v5.0.0+
FOOTER_FORUM_LINK
https://forum.poa.network/c/blockscout
v4.1.6+
FOOTER_GITHUB_LINK
https://github.com/blockscout/blockscout
v4.1.6+
LINK_TO_OTHER_EXPLORERS
true/false. If true, links to other explorers are added in the footer.
(empty)
v1.3.0+
OTHER_EXPLORERS
(empty)
v3.4.0+
Misc UI management
Variable
Required
Description
Default
Version
SHOW_ADDRESS_MARKETCAP_PERCENTAGE
Configures market cap percentage column on the top accounts page.
true
v2.1.1+
SHOW_MAINTENANCE_ALERT
Disables/enables announcement at the top of the explorer.
false
v3.6.0+
MAINTENANCE_ALERT_MESSAGE
Message text of the announcement at the top of the explorer.
(empty)
v3.6.0+
MAX_SIZE_UNLESS_HIDE_ARRAY
50
v3.7.1+
MAX_STRING_LENGTH_WITHOUT_TRIMMING
2040
v4.0.0+
HIDE_BLOCK_MINER
(empty)
v4.0.0+
DISPLAY_TOKEN_ICONS
(empty)
v4.0.0+
ALLOWED_EVM_VERSIONS
"homestead, tangerineWhistle, spuriousDragon, byzantium, constantinople, petersburg,istanbul"
v2.0.0+
UNCLES_IN_AVERAGE_BLOCK_TIME
Include or exclude non-consensus blocks in avg block time calculation. Exclude if false
.
false
v2.0.1+
COIN_BALANCE_HISTORY_DAYS
Number of days to consider at coin balance history chart.
10
v3.1.3+
ADMIN_PANEL_ENABLED
(empty)
v4.1.2+
CONTRACT_VERIFICATION_MAX_LIBRARIES
(empty)
v5.0.0+
PERMANENT_DARK_MODE_ENABLED
(empty)
master
CSV export
Variable
Required
Description
Default
Version
RE_CAPTCHA_SECRET_KEY
(empty)
v4.0.0+
RE_CAPTCHA_CLIENT_KEY
(empty)
v4.0.0+
API rate limit management
Variable
Required
Description
Default
Version
API_RATE_LIMIT
50
v4.1.1+
API_RATE_LIMIT_BY_KEY
50
v4.1.1+
API_RATE_LIMIT_BY_IP
50
v4.1.1+
API_RATE_LIMIT_WHITELISTED_IPS
(empty)
v4.1.1+
API_RATE_LIMIT_STATIC_API_KEY
(empty)
v4.1.1+
Specific smart-contracts
Variable
Required
Description
Default
Version
METADATA_CONTRACT
This environment variable is specifically used by POA Network to obtain Validators information to display in the UI.
(empty)
all
VALIDATORS_CONTRACT
This environment variable is specifically used by POA Network to obtain the list of current validators.
(empty)
all
KEYS_MANAGER_CONTRACT
This environment variable is specifically used by POA Network to set KeysManager proxy contract in order to obtain payout key by mining key. This needs to identify distributed reward to the validator.
(empty)
v3.1.2+
REWARDS_CONTRACT
Emission rewards contract address. This env var is used only if EMISSION_FORMAT
is set to POA
0xeca443e8e1ab29971a45a9c57a6a9875701698a5
v2.0.4+
TOKEN_BRIDGE_CONTRACT
Token bridge proxy contract. For `TokenBridge` supply module.
0x7301CFA0e1756B71869E93d4e4Dca5c7d0eb0AA6
v1.3.2+
Account-related ENV variables
Variable
Required
Description
Default
Version
ACCOUNT_ENABLED
Turn on/off account functionality. If value istrue
, account functionality is enabled.
(empty)
5.0.0
ACCOUNT_DATABASE_URL
Account DB connection string
value from DATABASE_URL
5.0.0
ACCOUNT_REDIS_URL
Account Redis connection string (for session storing configuration)
(empty)
5.0.0
ACCOUNT_POOL_SIZE
Account DB pool_size
50
5.0.0
ACCOUNT_AUTH0_DOMAIN
(empty)
5.0.0
ACCOUNT_AUTH0_CLIENT_ID
(empty)
5.0.0
ACCOUNT_AUTH0_CLIENT_SECRET
(empty)
5.0.0
ACCOUNT_AUTH0_LOGOUT_URL
(empty)
5.0.0
ACCOUNT_AUTH0_LOGOUT_RETURN_URL
(empty)
5.0.0
ACCOUNT_PUBLIC_TAGS_AIRTABLE_URL
Airtable URL for public tag requests functionality
(empty)
5.0.0
ACCOUNT_PUBLIC_TAGS_AIRTABLE_API_KEY
Airtable API key for public tag requests functionality
(empty)
5.0.0
ACCOUNT_SENDGRID_API_KEY
Sendgrid API key for watchlist notifications functionality
(empty)
5.0.0
ACCOUNT_SENDGRID_SENDER
Sendgrid sender email for watchlist notifications functionality
(empty)
5.0.0
ACCOUNT_SENDGRID_TEMPLATE
Sendgrid email template for watchlist notifications functionality
(empty)
5.0.0
ACCOUNT_CLOAK_KEY
(empty)
5.0.0
Integrations
Smart-contract verifier
Variable
Required
Description
Default
Version
ENABLE_RUST_VERIFICATION_SERVICE
(empty)
v4.1.8+
RUST_VERIFICATION_SERVICE_URL
(empty)
v4.1.8+
Sol2Uml
Variable
Required
Description
Default
Version
VISUALIZE_SOL2UML_ENABLED
(empty)
v5.0.0+
VISUALIZE_SOL2UML_SERVICE_URL
(empty)
v5.0.0+
Sourcify
Variable
Required
Description
Default
Version
ENABLE_SOURCIFY_INTEGRATION
Enables or disables verification of contracts through Sourcify.
false
v3.7.0+
SOURCIFY_SERVER_URL
URL to Sourcify backend.
v3.7.0+
SOURCIFY_REPO_URL
URL to Sourcify repository with fully verified contracts.
v3.7.0+
Tenderly
Variable
Required
Description
Default
Version
SHOW_TENDERLY_LINK
(empty)
v4.0.0+
TENDERLY_CHAIN_PATH
(empty)
v4.0.0+
Datadog
Variable
Required
Description
Default
Version
DATADOG_HOST
(empty)
all
DATADOG_PORT
(empty}
all
Spandex
Variable
Required
Description
Default
Version
SPANDEX_BATCH_SIZE
(empty)
all
SPANDEX_SYNC_THRESHOLD
(empty)
all
Analytics
Variable
Required
Description
Default
Version
MIXPANEL_TOKEN
(empty)
v5.0.0+
MIXPANEL_URL
(empty)
v5.0.0+
AMPLITUDE_API_KEY
(empty)
v5.0.0+
AMPLITUDE_URL
(empty)
v5.0.0+
Last updated