-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy path.env.dev
More file actions
151 lines (119 loc) · 7.7 KB
/
.env.dev
File metadata and controls
151 lines (119 loc) · 7.7 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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
# ==============| API |============= #
APP_NAME = leadminer
FRONTEND_HOST = http://localhost:8082 # ( REQUIRED )
LEADMINER_API_PORT = 8081 # ( REQUIRED )
LEADMINER_API_HOST = http://localhost:8081 # ( REQUIRED )
LEADMINER_API_HASH_SECRET = change_me # ( REQUIRED ) Used for hashing secrets
LEADMINER_MINING_ID_GENERATOR_LENGTH = 10 # ( REQUIRED ) Length of the task id
# ==============| API - LOGGING |============= #
# GRAFANA_LOKI_HOST = # Use Loki transport for logging (Default is console)
LEADMINER_API_LOG_LEVEL = debug # Logging level (debug, info, notice, warning...)
# ==============| API - SENTRY - https://sentry.io |============= #
# SENTRY_DSN_BACKEND = # ( OPTIONAL ) Sentry DSN for reporting and monitoring
# SENTRY_ENVIRONMENT_BACKEND = 'leadminer-backend-prod'
# ==============| API - SUPABASE |============= #
SUPABASE_PROJECT_URL = http://127.0.0.1:54321 # ( REQUIRED ) Supabase project URL (e.g., https://db.yourdomain.com for self-hosted/prod)
SUPABASE_SECRET_PROJECT_TOKEN = eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZS1kZW1vIiwicm9sZSI6InNlcnZpY2Vfcm9sZSIsImV4cCI6MTk4MzgxMjk5Nn0.EGIM96RAZx35lJzdJsyH-qQwv8Hdp7fsn3W0YpN81IU # ( REQUIRED ) Supabase project token
SUPABASE_SERVICE_ROLE_KEY = eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZS1kZW1vIiwicm9sZSI6InNlcnZpY2Vfcm9sZSIsImV4cCI6MTk4MzgxMjk5Nn0.EGIM96RAZx35lJzdJsyH-qQwv8Hdp7fsn3W0YpN81IU # ( REQUIRED ) Supabase service role key
PG_CONNECTION_STRING = postgresql://postgres:postgres@127.0.0.1:54322/postgres # ( REQUIRED ) Postgres connection string
# ==============| API - IMAP |============= #
IMAP_FETCH_BODY = true # Enable or disable fetching Email bodies
IMAP_MAX_CONNECTIONS = 10 # Maximum number of simultaneous IMAP connections allowed. It is recommended to keep this value between 1 and 15.
IMAP_AUTH_TIMEOUT = 10000 # Milliseconds to wait for authentication after an IMAP connection is established
IMAP_CONNECTION_TIMEOUT = 10000 # Milliseconds to wait for a connection to be established
# ==============| API - REDIS INSTANCE |============= #
REDIS_HOST = localhost # ( REQUIRED ) Redis host
REDIS_PORT = 6379 # ( REQUIRED ) Redis port
# REDIS_USERNAME = # ( OPTIONAL ) Redis username
# REDIS_PASSWORD = # ( OPTIONAL ) Redis password
REDIS_EVICTION_POLICY = allkeys-lru # ( REQUIRED ) Redis Eviction policies: noeviction, allkeys-lru, allkeys-random, volatile-lru, volatile-random, volatile-ttl
REDIS_MAXMEMORY = 1gb # ( REQUIRED ) Max memory used by redis, adjust it depending on your server capacity.
REDIS_DB = 0 # ( REQUIRED ) Redis db
REDIS_TLS = false # ( REQUIRED ) Enable or disable TLS for Redis
REDIS_EXPIRATION_TIMEOUT = 7776000 # ( REQUIRED ) Expiration timeout (90 days ) for Redis entries
REDIS_CONSUMER_BATCH_SIZE = 200 # ( REQUIRED ) The entries to read from each stream
# ==============| API - REDIS CHANNELS, STREAMS |============= #
REDIS_PUBSUB_COMMUNICATION_CHANNEL = 'stream-management' # Communication channel between task-manager & workers
REDIS_SIGNATURE_STREAM_NAME = 'email-signature-stream'
REDIS_SIGNATURE_STREAM_CONSUMER_GROUP = 'email-signature-consumer-group'
REDIS_CLEANING_STREAM_CONSUMER_GROUP = 'email-verification-consumer-group' # consumer group for cleaning worker
REDIS_EXTRACTING_STREAM_CONSUMER_GROUP = 'email-messages-consumer-group' # Consumer group for extracting worker
REDIS_EMAIL_SIGNATURE_CONSUMER_BATCH_SIZE = 500
REDIS_EMAIL_VERIFICATION_CONSUMER_BATCH_SIZE = 1000
# ==============| API - OAUTH CONFIG |============= #
GOOGLE_CLIENT_ID = 21825381029-993l33883t26n48fv11mmm049j6qn6lh.apps.googleusercontent.com # ( REQUIRED ) Google client ID
GOOGLE_SECRET = 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 # ( REQUIRED ) Google secret
AZURE_CLIENT_ID = your_azure_client_id # ( REQUIRED ) Azure client ID
AZURE_SECRET = your_azure_client_secret # ( REQUIRED ) Azure secret
# ==============| API - EMAIL SIGNATURE EXTRACTION WORKER |============= #
SIGNATURE_USE_LLM = false
# ==============| API - LLM CONFIGURATION |============= #
# LLM_ENDPOINT = # ( OPTIONAL ) Custom LLM endpoint URL (default: https://openrouter.ai/api/v1/chat/completions)
# LLM_API_KEY = # ( OPTIONAL ) LLM API key (defaults to SIGNATURE_OPENROUTER_API_KEY if not set)
# LLM_PROVIDER = openrouter # ( OPTIONAL ) LLM provider: openrouter or thaura (default: openrouter)
SIGNATURE_OPENROUTER_API_KEY = "test-key"
SIGNATURE_LLM_CACHE_TTL_SECONDS = 86400 # ( OPTIONAL ) LLM response cache TTL in seconds (default: 86400 = 24 hours)
# ==============| THIRD-PARTY - EMAIL STATUS VERIFICATION SERVICES |============= #
# Configuration settings for integrated email verification providers:
# - Reacher: https://help.reacher.email/
# - MailerCheck: https://developers.mailercheck.com/
# - ZeroBounce: https://www.zerobounce.net/docs/email-validation-api-quickstart/
#
# Verification quotas are estimated based on each service's performance & rate limits:
# - 600 emails: Approximate capacity within 10 minutes.
# - 5,000 emails: Approximate capacity within 10 minutes.
# - 3,000,000 emails: Approximate capacity within 10 minutes.
#
# ZEROBOUNCE_API_KEY =
# MAILERCHECK_API_KEY =
EMAILS_QUOTA_REACHER = 600
EMAILS_QUOTA_MAILERCHECK = 600
EMAILS_QUOTA_ZEROBOUNCE = 3000000
REACHER_HOST = https://stoplight.io/mocks/reacher/backend/68673 # ( REQUIRED )
REACHER_API_KEY = 'test-key'
# REACHER_HEADER_SECRET =
# REACHER_SMTP_FROM =
# REACHER_SMTP_HELLO =
# REACHER_PROXY_PORT =
# REACHER_PROXY_HOST =
# REACHER_PROXY_USERNAME =
# REACHER_PROXY_PASSWORD =
# REACHER_REQUEST_TIMEOUT_MS =
# REACHER_SMTP_CONNECTION_TIMEOUT_SECONDS =
# REACHER_SMTP_CONNECTION_RETRIES =
REACHER_HOTMAIL_USE_HEADLESS =true
# REACHER_MICROSOFT365_USE_API =
REACHER_GMAIL_USE_API =true
# REACHER_YAHOO_USE_API =
REACHER_RATE_LIMITER_REQUESTS = 60
REACHER_RATE_LIMITER_INTERVAL = 60000 # 1 minute
# ==============| THIRD-PARTY - EMAIL & CONTACT ENRICHMENT SERVICES |============= #
# Configuration settings for contact enrichment APIs.
# These services are used to find, verify, or enrich contact data:
# - TheDig: https://github.com/ankaboot-source/thedig
# - VoilaNorbert: https://api.voilanorbert.com/2018-01-08/
# - EnrichLayer: https://enrichlayer.com/docs/pc/#enrich-layer-overview
#
THEDIG_URL = http://127.0.0.1:8083/thedig/
THEDIG_API_KEY = test-api-key
VOILANORBERT_URL = http://127.0.0.1:8083/voilanorbert/2018-01-08/
VOILANORBERT_USERNAME = any_string
VOILANORBERT_API_KEY = test-api-key
ENRICH_LAYER_URL = http://127.0.0.1:8083/enrichlayer/
ENRICH_LAYER_API_KEY = test-api-key
# ==============| THIRD-PARTY - IMAP EMAIL FETCHING SERVICE |============= #
EMAIL_FETCHING_SERVICE_URL = http://localhost:8084
EMAIL_FETCHING_SERVICE_API_TOKEN = "test-key"
# ==============| GOOGLE CONTACTS Sync |============= #
# Critical Read Operations (API Limit: 90/min)
GOOGLE_CONTACTS_CRITICAL_READ_REQUESTS = 80 # ( OPTIONAL ) Number of requests allowed per interval
GOOGLE_CONTACTS_CRITICAL_READ_INTERVAL = 60 # ( OPTIONAL ) Rate limit interval in seconds
# Critical Write Operations (API Limit: 90/min)
GOOGLE_CONTACTS_CRITICAL_WRITE_REQUESTS = 80 # ( OPTIONAL ) Number of requests allowed per interval
GOOGLE_CONTACTS_CRITICAL_WRITE_INTERVAL = 60 # ( OPTIONAL ) Rate limit interval in seconds
# Read Operations - Groups (API Limit: 120/min)
GOOGLE_CONTACTS_READ_REQUESTS = 110 # ( OPTIONAL ) Number of requests allowed per interval
GOOGLE_CONTACTS_READ_INTERVAL = 60 # ( OPTIONAL ) Rate limit interval in seconds
# Write Operations - Groups/Delete (API Limit: 90/min)
GOOGLE_CONTACTS_WRITE_REQUESTS = 80 # ( OPTIONAL ) Number of requests allowed per interval
GOOGLE_CONTACTS_WRITE_INTERVAL = 60 # ( OPTIONAL ) Rate limit interval in seconds