How many accounts can be processed at the same time
1
3
ACCOUNT_CONCURRENCY
A list of accounts to work with
A list of excluded game titles to skip during processing.
['Gigabash Demo', 'Another Blacklisted Game']
BLACKLISTED_GAMES (comma separated)
How many times to attempt retry attempts to launch a browser after it times out
2
5
BROWSER_LAUNCH_RETRY_ATTEMPTS
In seconds, how long before a stuck Chromium process times out and gets restarted
30
15
BROWSER_LAUNCH_TIMEOUT
How long in milliseconds the browser navigation will wait before timing out. 0 disables timeout (not recommended). See: https://github.com/puppeteer/puppeteer/blob/main/docs/api.md#pagesetdefaulttimeouttimeout
120000
30000
BROWSER_NAVIGATION_TIMEOUT
The 2 character country code associated with your account. Used when determining if a game is blacklisted for your account. Commonly blacklisted countries: "MO","HK","RU","BY","CN"
RU
blacklisting is not checked
COUNTRY_CODE
Cron string of when to run the process.
It is recommended to run every 6 hours, otherwise the refresh tokens will expire after 8 hours and a new login will be prompted every run.
If you want the check to occur immediately after the new free game is released, you can offset the cron schedule. For example in a timezone where the free games release at 11:00am: 0 5,11,17,23 * * *
0 5,11,17,23 * * *
0 0,6,12,18 * * * (every six hours)
CRON_SCHEDULE
The Epic Games application client ID used for device code authorization to check your account's ownership of a game List of available clients here.
b070f20729f84693b5d621c904fc5bc2 (Diesel - Dauntless)
e645e4b96298419cbffbfa353ebf8b82 (wexAndroidGameClient)
98f7e42c2e3a4f86a74eb43fbb41ed39 (fortniteNewSwitchGameClient client ID)
DEVICE_AUTH_CLIENT_ID
After redirecting to a device authorization verification URL, how often the Epic Games API is polled for a successful login.
20
10
DEVICE_AUTH_POLL_RATE_SECONDS
The Epic Games application secret used for device code authorization to check your account's ownership of a game. List of available clients here.
HG@XE&TGCxEJsgT#&_p2]=aRo#~>=>+c6PhR)zXP (Diesel - Dauntless)
d03089fd-628a-448a-ac39-0e8c5b022a11 (wexAndroidGameClient)
0a2449a2-001a-451e-afec-3e812901c4d7 (fortniteNewSwitchGameClient client secret)
DEVICE_AUTH_SECRET
The full path where the browser automation error screenshots will be output
/errors
${CONFIG_DIR}/errors
ERRORS_DIR
The delay interval between runs of each account in seconds. (Only effective when multiple accounts are configured)
30
60
INTERVAL_TIME
Log level in lower case. Can be [silent, error, warn, info, debug, trace]
debug
info
LOG_LEVEL
Optional
notifiersGlobal default notification configuration.
You may configure multiple notifiers, and they will all be triggered simultaneously.
If true, the process will run on startup in addition to the scheduled time.
true
false
RUN_ON_STARTUP
If true, don't schedule runs. Use with RUN_ON_STARTUP to run once and shutdown.
true
false
RUN_ONCE
The search criteria for finding free games. Either the weekly promotion, and free promotion, or all free products.
weekly
all
SEARCH_STRATEGY
Skip the call to api.github.com that checks for the latest version on launch
true
false
SKIP_VERSION_CHECK
When true, the process will send test notifications with a test redirect to example.com for all configured accounts. Be sure to disable this after a successful test. This test will block normal operation until the test link is accessed by one account. The test page can only be used once.
true
false
TEST_NOTIFIERS
TZ name from this list: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List
America/Chicago
UTC
TZ
Optional
webWeb server configurations for the remote web portal
Generated using TypeDoc
Example: ```jsonc { "runOnStartup": true, "cronSchedule": "0 0,6,12,18 * * *", "logLevel": "info", "webPortalConfig": { "baseUrl": "https://epic.example.com", }, "accounts": [ { "email": "example@gmail.com", }, ], "notifiers": [ // You may configure as many of any notifier as needed // Here are some examples of each type { "type": "email", "smtpHost": "smtp.gmail.com", "smtpPort": 587, "emailSenderAddress": "hello@gmail.com", "emailSenderName": "Epic Games Free Games", "emailRecipientAddress": "hello@gmail.com", "secure": false, "auth": { "user": "hello@gmail.com", "pass": "abc123", }, }, { "type": "discord", "webhookUrl": "https://discord.com/api/webhooks/123456789123456789/A-abcdefghijklmn-abcdefghijklmnopqrst12345678-abcdefghijklmnop123456", }, { "type": "telegram", "token": "644739147:AAGMPo-Jz3mKRnHRTnrPEDi7jUF1vqNOD5k", "chatId": "-987654321", }, { "type": "apprise", "apiUrl": "http://192.168.1.2:8000", "urls": "mailto://user:pass@gmail.com", }, ], } ```