FiveMConnectionserver.cfgListing6 min read

Fix FiveM connection and server list errors

How to fix the 'context deadline exceeded' error by adding listing and endpoint lines to your existing server.cfg.


What does this error mean?

If you see an error like this when trying to get your server listed on FiveM:

terminal
Server list query returned an error: server request failed for endpoint
https://23.175.40.1:30120/info.json
(context deadline exceeded)

It means the FiveM master list cannot reach your server to get its information. Your server is running, but it's not responding correctly to external listing queries.

Main cause

The server is not announcing its address correctly, or the port isn't accessible from the internet. This is fixed by verifying endpoints, firewall, and optionally configuring listing variables.

Quick fix (no proxy — most cases)

If your server has a direct public IP (no proxy, no Cloudflare), verify your server.cfg has:

bash
# Network endpoints (REQUIRED — udp BEFORE tcp)
endpoint_add_udp "0.0.0.0:30120"
endpoint_add_tcp "0.0.0.0:30120"

# Project info (required to appear in the server list)
sets sv_projectName "My RP Server"
sets sv_projectDesc "Roleplay server hosted on Baires Host"

# Basic anti-cheat
sv_scriptHookAllowed 0
⚠️ Importante

endpoint_add_udp must come BEFORE endpoint_add_tcp in your server.cfg for the port configuration to work correctly.

In most cases, this is enough. FiveM automatically detects your IP and announces it on the master list.

Advanced fix (multiple IPs or proxy)

If your server has multiple IPs, is behind a proxy/Cloudflare, or the master list can't detect your IP correctly, use these additional variables:

bash
# Prevents server list from advertising your real IP (useful with proxy)
set sv_forceIndirectListing true

# Tells the server list backend which hostname to query
# IMPORTANT: must be a DOMAIN (hostname), NOT an IP with port
# The master list makes an HTTPS request to this domain
set sv_listingHostOverride "server1.yourdomain.com"

# Forces a specific IP in the listing
# Only needed with multiple IPs or when behind a firewall
# that prevents the master list from discovering your IP
set sv_listingIpOverride "23.175.40.1"

# Defines the actual endpoints where players connect
set sv_endpoints "23.175.40.1:30120"

When to use each variable

VariableWhen to useCorrect format
sv_forceIndirectListingWith proxy (Cloudflare, nginx) to hide the real IPtrue or false
sv_listingHostOverrideWith domain + HTTPS proxy. Master list requests https://hostname/Hostname only: "server1.example.com" (NO ip, NO port)
sv_listingIpOverrideOnly if multiple IPs and master list can't guess which to useIP only: "23.175.40.1"
sv_endpointsTo specify player connection IP:port (with proxy)IP and port: "23.175.40.1:30120"

Example with Cloudflare + nginx proxy (advanced setup)

If you have a domain server1.example.com proxied by Cloudflare pointing to your nginx, which redirects to FXServer:

bash
set sv_forceIndirectListing true
set sv_listingHostOverride "server1.example.com"
set sv_endpoints "23.175.40.1:30120"

In this case the master list does GET https://server1.example.com/info.json through your proxy.

Example without proxy (direct Baires Host IP)

If your server has a single direct public IP and no proxy:

bash
# Normally you DON'T need anything extra, just the base endpoints.
# If it still doesn't appear in the list, try adding:
set sv_forceIndirectListing true
set sv_listingIpOverride "23.175.40.1"
set sv_endpoints "23.175.40.1:30120"

⚠️ Do NOT use sv_listingHostOverride with an IP — that variable expects a hostname/domain. If you don't have a domain, don't use it.

HTTP flood protection (sv_requestParanoia)

This convar protects against HTTP floods but must be used carefully:

LevelEffect
0Disabled (default). No blocking.
1Blocks IPs sending Via header (generic proxies). Safe for most.
2Blocks IPs with Upgrade-Insecure-Requests header. Blocks browsersinfo.json, players.json and dynamic.json return "Nope."
3Same as 2 but also closes the socket. Very aggressive.
bash
# Recommendation: level 0 or 1 for most servers
set sv_requestParanoia 0

# Level 2+ only if under active HTTP attack
# With level 2+, you won't be able to verify info.json from browser

⚠️ Level 2 and 3 make info.json, players.json and dynamic.json return "Nope." for browser requests. This does NOT affect listing or player connections, but prevents you from manually verifying.

Verify it works

After saving server.cfg and restarting the server:

  1. Wait 2-3 minutes (can take up to 8 minutes to appear in the list)
  2. Open in browser: http://YOUR_IP:30120/info.json
  3. If it returns a JSON with server info → it's working
  4. If it doesn't respond → firewall issue (see below)
  5. If it says "Nope." → you have sv_requestParanoia at 2 or higher

You can also verify these URLs:

  • https://YOUR_DOMAIN/info.json (if using proxy)
  • http://YOUR_IP:30120/players.json
  • http://YOUR_IP:30120/dynamic.json

Verify port is open

If info.json doesn't respond at all (timeout), it's a firewall issue:

On Linux (VPS):

bash
sudo ufw allow 30120/tcp
sudo ufw allow 30120/udp
sudo ufw reload

On Windows (remote desktop):

terminal
netsh advfirewall firewall add rule name="FiveM TCP" dir=in action=allow protocol=TCP localport=30120
netsh advfirewall firewall add rule name="FiveM UDP" dir=in action=allow protocol=UDP localport=30120

Error table and solutions

ErrorCauseSolution
context deadline exceededMaster list can't reach serverVerify open ports + endpoint_add_tcp/udp configured
server request failed for endpointPort closed or firewallOpen 30120 TCP/UDP in firewall
Server not in listMissing sets sv_projectName or misconfigured endpointsAdd sets sv_projectName, sets sv_projectDesc and verify endpoints
connection refusedTCP port not open or server downVerify server is running
Nope. when accessing info.jsonsv_requestParanoia at level 2+Normal if configured that way — doesn't affect players

Summary

For most servers on Baires Host with a direct IP, you only need:

bash
# Network endpoints (udp BEFORE tcp)
endpoint_add_udp "0.0.0.0:30120"
endpoint_add_tcp "0.0.0.0:30120"

# Project info (required for listing)
sets sv_projectName "My Server"
sets sv_projectDesc "Server description"

# Anti-cheat
sv_scriptHookAllowed 0

If that's not enough because you have multiple IPs or a proxy, add sv_forceIndirectListing, sv_listingIpOverride and sv_endpoints.

Do NOT use sv_listingHostOverride with an IP — that variable only works with an HTTPS domain.

If you still have issues, open a ticket on our Discord with a console screenshot and we'll help.


Was this guide helpful?