FlowIndex
FlowIndexGuides

Configuration

Environment variables reference for FlowIndex backend.

LLM IndexLLM Full

The FlowIndex backend is configured entirely through environment variables. This page documents the key variables organized by function.

Core

VariableDefaultDescription
DB_URL(required)PostgreSQL connection string (e.g., postgres://user:pass@host:5432/flowscan)
PORT8080HTTP port for the API server
START_BLOCK0Block height to begin forward ingestion from
RAW_ONLYfalseWhen true, disables all workers and derivers -- only raw ingestion runs

Flow Access Nodes

VariableDefaultDescription
FLOW_ACCESS_NODEmainnet28Primary Flow gRPC endpoint
FLOW_ACCESS_NODES--Comma-separated gRPC endpoints for live ingestion (node pool)
FLOW_HISTORIC_ACCESS_NODES--Comma-separated gRPC endpoints for history backfill (supports per-spork nodes)
FLOW_ARCHIVE_NODE--Archive node endpoint for pre-spork data

Forward Ingester

VariableDefaultDescription
ENABLE_FORWARD_INGESTERtrueEnable or disable the forward (live) ingester
LATEST_WORKER_COUNT2Number of concurrent workers fetching blocks
LATEST_BATCH_SIZE1Number of blocks per batch

Backward Ingester

VariableDefaultDescription
ENABLE_HISTORY_INGESTERtrueEnable or disable the backward (history) ingester
HISTORY_WORKER_COUNT5Number of concurrent workers for backfill
HISTORY_BATCH_SIZE20Number of blocks per backfill batch
HISTORY_STOP_HEIGHT0 (disabled)Stop the backward ingester at this height

Derivers

VariableDefaultDescription
ENABLE_LIVE_DERIVERStrueEnable the forward and history Live Derivers
LIVE_DERIVERS_CHUNK10Number of blocks processed per Live Deriver chunk
LIVE_DERIVERS_HEAD_BACKFILL_BLOCKS100Blocks to seed on startup for immediate UI data
ENABLE_HISTORY_DERIVERStrueEnable the History Deriver safety-net scanner
HISTORY_DERIVERS_CHUNK1000Blocks per History Deriver chunk
HISTORY_DERIVERS_SLEEP_MS0Throttle delay (ms) between History Deriver chunks

Worker Toggles

Each worker can be individually enabled or disabled:

VariableDefaultWorker
ENABLE_TOKEN_WORKERtrueFT/NFT token transfers
ENABLE_EVM_WORKERtrueEVM transaction mapping
ENABLE_META_WORKERtrueAddress transactions, account keys, contracts
ENABLE_ACCOUNTS_WORKERtrueAccount catalog
ENABLE_FT_HOLDINGS_WORKERtrueFT balance tracking
ENABLE_NFT_OWNERSHIP_WORKERtrueNFT ownership tracking
ENABLE_TOKEN_METADATA_WORKERtrueOn-chain FT/NFT metadata
ENABLE_TX_CONTRACTS_WORKERtrueTransaction contract tagging
ENABLE_TX_METRICS_WORKERtruePer-transaction metrics
ENABLE_STAKING_WORKERtrueStaking and epoch events
ENABLE_DEFI_WORKERtrueDEX swap events
ENABLE_DAILY_STATS_WORKERtrueDaily aggregate statistics
ENABLE_DAILY_BALANCE_WORKERtrueDaily balance aggregation
ENABLE_NFT_ITEM_METADATA_WORKERtruePer-NFT metadata fetching
ENABLE_NFT_OWNERSHIP_RECONCILERtrueNFT ownership verification
ENABLE_ANALYTICS_DERIVER_WORKERtrueAnalytics derivation

Worker Concurrency

Each worker has configurable concurrency and range size:

VariableDefaultDescription
TOKEN_WORKER_CONCURRENCY1Parallel token worker instances
TOKEN_WORKER_RANGE1000Block range per processing unit
EVM_WORKER_CONCURRENCY1Parallel EVM worker instances
EVM_WORKER_RANGE1000Block range per processing unit
META_WORKER_CONCURRENCY1Parallel meta worker instances
META_WORKER_RANGE1000Block range per processing unit
ACCOUNTS_WORKER_CONCURRENCY1Parallel accounts worker instances
STAKING_WORKER_CONCURRENCY1Parallel staking worker instances
DEFI_WORKER_CONCURRENCY1Parallel DeFi worker instances

The pattern {WORKER_NAME}_CONCURRENCY and {WORKER_NAME}_RANGE applies to all workers.

Rate Limiting

VariableDefaultDescription
FLOW_RPC_RPS--Requests per second to Flow Access Nodes
FLOW_RPC_BURST--Burst allowance for RPC rate limiter
API_RATE_LIMIT_*--API rate limiting configuration

Database Pool

VariableDefaultDescription
DB_MAX_OPEN_CONNS--Maximum open database connections
DB_MAX_IDLE_CONNS--Maximum idle database connections

Reorg Protection

VariableDefaultDescription
MAX_REORG_DEPTH1000Maximum rollback depth for chain reorganization handling

Market Data

VariableDefaultDescription
ENABLE_PRICE_FEEDfalseEnable CoinGecko price feed
PRICE_REFRESH_MIN--Price refresh interval in minutes

Authentication

VariableDefaultDescription
SUPABASE_DB_URL--Supabase PostgreSQL connection string
SUPABASE_JWT_SECRET--JWT secret for Supabase auth verification
ADMIN_TOKEN--Static admin API token
ADMIN_JWT_SECRET--JWT secret for admin authentication
ADMIN_ALLOWED_ROLES--Comma-separated list of allowed admin roles

Webhooks

VariableDefaultDescription
SVIX_AUTH_TOKEN--Svix authentication token for webhook delivery
SVIX_SERVER_URL--Svix server URL

Frontend

VariableDefaultDescription
VITE_API_URLhttp://localhost:8080Backend API URL used by the frontend
VITE_SUPABASE_URL--Supabase gateway URL for authentication

On this page