Docs / FiveM / Whitelist Sync
Whitelist Sync
When a whitelist application is approved in Docket, the player is automatically whitelisted on your FiveM server. No manual entry, no spreadsheets, no copy-paste.
Setup — three steps
- On Dashboard > Integrations, connect your FiveM server, then under Whitelist Sync click Generate API key and Download resource
- Drop the
docket_whitelistfolder into your server'sresources/directory - Add to
server.cfg(the key is shown once at generation):
ensure docket_whitelist set docket_api_key "YOUR_KEY_FROM_THE_INTEGRATIONS_PAGE" set docket_fail_open "0"
Restart the server (or refresh + ensure docket_whitelist). That's it — from then on, approving a whitelist application in Docket means the player can join; everyone else is turned away at connect with a friendly message telling them to apply in your Discord.
Verify it's working
Back on Dashboard > Integrations, press Test connection. It checks both directions and tells you in plain words:
- Docket → your server — whether
players.jsonresponds at the IP you connected (and the live player count) - Your server → Docket — whether the resource has actually contacted Docket with your API key. If it says the server has never contacted Docket, the resource isn't started or
docket_api_keyisn't set — fixserver.cfgand restart the resource
The resource pre-loads the whitelist about a minute after startup, so a freshly restarted server shows up on the tester within a couple of minutes even before the first player connects.
How it works
- On connect, the resource reads the player's Discord ID from their FiveM identifiers (Discord must be running for players — the resource explains this to them if it isn't)
- It checks that ID against your Docket whitelist — everyone with an approved whitelist application
- Results cache for 60 seconds, and the full approved list is pre-loaded at startup and refreshed every 5 minutes — so joins are instant and a burst of connections doesn't hammer anything
- Newly approved players can join within seconds of approval — the live check catches them even before the next cache refresh
If Docket is unreachable
You choose the failure policy in server.cfg: docket_fail_open "0" denies joins while the check is down (safest for strict whitelist servers), "1" lets everyone in until it recovers. Checks also time out after 10 seconds so a player is never left staring at a connecting screen.
Revoking access
Deny or reverse an application on the dashboard and the player stops passing checks within at most 60 seconds (the cache window). Regenerating or revoking your API key on the Integrations page instantly invalidates the old key.
Framework compatibility
The resource works at the connection level, before any framework loads the player — so it works identically with QB-Core, ESX, vMenu, or fully custom servers. No framework configuration needed.