forked from accesslayerorg/accesslayer-server
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
83 lines (70 loc) · 2.35 KB
/
Copy path.env.example
File metadata and controls
83 lines (70 loc) · 2.35 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
PORT=3000
MODE=development
DATABASE_URL=postgresql://postgres:postgres@localhost:5432/accesslayer
BACKEND_URL=http://localhost:3000
FRONTEND_URL=http://localhost:5173
# Required third-party credentials
GMAIL_USER=
GMAIL_APP_PASSWORD=
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=
CLOUDINARY_CLOUD_NAME=
CLOUDINARY_API_KEY=
CLOUDINARY_API_SECRET=
PAYSTACK_SECRET_KEY=
# Optional third-party credentials
PAYSTACK_PUBLIC_KEY=
# Runtime defaults
DB_QUERY_TIMEOUT_MS=5000
APP_SECRET=your_32_character_long_secret_string_here
API_VERSION=1.0.0
ENABLE_RESPONSE_TIMING=true
ENABLE_API_VERSION_HEADER=true
ENABLE_SCHEMA_VERSION_HEADER=true
ENABLE_REQUEST_LOGGING=true
# JWT auth
JWT_SECRET=your_32_character_long_jwt_secret_string_here
JWT_ISSUER=accesslayer-server
JWT_ACCESS_TOKEN_TTL_SECONDS=900
# Redis cache
REDIS_URL=redis://localhost:6379
ENABLE_REDIS_CACHE=true
# Key trade lockup (seconds between a buy and when the keys unlock for sale)
LOCKUP_DURATION_SECONDS=0
# Creator and indexer tuning
INDEXER_JITTER_FACTOR=0.1
BACKGROUND_JOB_LOCK_TTL_MS=300000
SLOW_QUERY_THRESHOLD_MS=500
CREATOR_LIST_SLOW_QUERY_THRESHOLD_MS=500
INDEXER_CURSOR_STALE_AGE_WARNING_MS=300000
INDEXER_HEARTBEAT_STALE_THRESHOLD_MS=300000
ENABLE_INDEXER_DEDUPE=true
ENABLE_INDEXER_DLQ=true
ENABLE_INDEXER_CURSOR_STALENESS_WARNING=true
# Stellar network
STELLAR_NETWORK=testnet
STELLAR_HORIZON_URL=https://horizon-testnet.stellar.org
STELLAR_SOROBAN_RPC_URL=https://soroban-testnet.stellar.org
# Webhook settings
WEBHOOK_MAX_PER_CREATOR=5
WEBHOOK_RETRY_MAX_ATTEMPTS=3
WEBHOOK_RETRY_BASE_DELAY_MS=1000
# Ownership snapshot cleanup job
OWNERSHIP_SNAPSHOT_TABLE_NAME=creator_ownership_snapshots
OWNERSHIP_SNAPSHOT_CLEANUP_DRY_RUN=true
OWNERSHIP_SNAPSHOT_RETENTION_DAYS=30
OWNERSHIP_SNAPSHOT_CLEANUP_ENABLED=false
OWNERSHIP_SNAPSHOT_CLEANUP_INTERVAL_MINUTES=60
# Price movement detection job (feeds price_moved notifications)
DETECT_PRICE_MOVEMENTS_ENABLED=true
DETECT_PRICE_MOVEMENTS_INTERVAL_MINUTES=5
# Request body size limits (see docs/body-size-limits.md)
BODY_SIZE_LIMIT_DEFAULT=10mb
# BODY_SIZE_LIMIT_AUTH=100kb
# BODY_SIZE_LIMIT_ADMIN=10mb
# BODY_SIZE_LIMIT_CREATORS=10mb
# Distributed tracing
# Shared secret trusted internal callers present in the
# x-internal-service-token header to have their incoming X-Trace-Id header
# honored instead of a freshly generated one. Leave unset to trust no caller.
TRACE_ID_TRUSTED_TOKEN=