The Satisfactory Server HTTPS Management API

A sprawling Satisfactory factory at dusk

 

    Since the 1.0 release, every Satisfactory dedicated server runs an HTTPS Management API — a small REST interface that lets outside tools read the server's state and control it (save the game, change options, shut it down) without anyone opening the game. It's what Discord bots, monitoring dashboards and home-automation setups talk to. This guide explains what the API is, how to find its address on your gamever server, how to generate the API token it needs, and some example calls — all framed for a gamever-hosted server.

 

What the HTTPS Management API is

 

    Satisfactory 1.0 shipped two first-party interfaces: a lightweight UDP query API for cheap state polling, and the HTTPS API for detailed state and control. The HTTPS API is a JSON-over-HTTPS service: you send a POST naming a function and a data object, and the server answers with a data object (or an errorCode). Most control functions require an Admin-level token; a couple of read-only functions (like a health check) need no authentication at all.

 

Where the API lives (port and address)

 

    The HTTPS API listens on the TCP side of your game port — the same port players connect over. On gamever you don't open or forward anything; the port is already assigned and open. Open the Network tab in your panel and read your Server address — the IP and game port are what the API uses too.

 

The Satisfactory Network tab showing the server address

 

ItemValue
HostYour server IP (Network tab)
PortYour game port (e.g. 29665) — TCP side, the one shown as Server address
Base path/api/v1
Example base URLhttps://62.112.222.154:29665/api/v1
TLSSelf-signed certificate by default

 

    Because the default certificate is self-signed, command-line tools like curl need the -k (insecure) flag, or you must trust the certificate yourself. Always use the exact IP and port from your Network tab — see ports and connection troubleshooting.

 

Step 1 — generate an API token

 

    Control functions need an Application Token, which acts as admin credentials. You generate one by running the Satisfactory server console command:

 

server.GenerateAPIToken

 

    In Satisfactory, server console commands are run through the in-game Server Manager: connect to your gamever server, authenticate with the Admin Password you set when you claimed it (see connecting and claiming), and open the console there. The command prints a long token string — copy it somewhere safe. Your gamever panel's Console tab, meanwhile, is where you watch the server's log output and status.

 

The gamever panel overview with the Console tab

 

    If a token is ever exposed, run server.InvalidateAPITokens to revoke all previously generated tokens, then issue a fresh one.

 

Step 2 — example management calls

 

    Every call is a POST to your base URL with a JSON body of {"function": "<Name>", "data": { ... }}. Control calls carry the token in an Authorization: Bearer <token> header. These are the common functions (all verified against the official API):

 

FunctionAuthWhat it does
HealthCheckNoneConfirms the API is up and reports tick rate.
QueryServerStateTokenReturns live server state (ServerGameState) — players online, tick rate, session name.
GetServerOptionsTokenReturns current and pending server options.
SaveGameAdminWrites an immediate manual save of the current session.
ShutdownAdminShuts the server down gracefully (the recommended way to stop it via the API).

 

    A no-auth health check:

 

curl -k -X POST https://62.112.222.154:29665/api/v1 \
  -H "Content-Type: application/json" \
  -d '{"function":"HealthCheck","data":{}}'

 

    An authenticated state query:

 

curl -k -X POST https://62.112.222.154:29665/api/v1 \
  -H "Authorization: Bearer <your-token>" \
  -H "Content-Type: application/json" \
  -d '{"function":"QueryServerState","data":{}}'

 

    Saving and shutting down follow the same shape with "function":"SaveGame" or "function":"Shutdown". Prefer the API's Shutdown over an abrupt stop so the world saves cleanly — though for everyday restarts the panel's Overview controls are simpler and safer, since they keep the panel's status in sync.

 

Keeping the token private

 

    An API token is a master key: anyone holding it can read your server, change its options, save over it or shut it down. Treat it exactly like your Admin Password:

 

  • Never paste it into public configs, screenshots, Discord messages or a repo.
  • Give it only to the specific bot or tool that needs it.
  • Rotate it with server.InvalidateAPITokens + a fresh server.GenerateAPIToken if you suspect it leaked or when a co-admin leaves.

 

Additional Tips

 

  • The API port is your game port — use the exact value from the Network tab, not the upstream default (7777). gamever assigns it for you.
  • Self-signed by default — add -k in curl, or import/trust the certificate in whatever tool you use.
  • HealthCheck needs no token — it's the safest first call to confirm you've got the address and port right before worrying about auth.
  • One revoke, all tokens — server.InvalidateAPITokens invalidates every issued token at once, so plan to re-issue to each tool afterwards.
  • For routine admin, use the panel — the API shines for automation (bots, dashboards, scheduled saves); for a quick restart or settings change, the panel's tabs are faster. See server settings.

 

Conclusion

 

    The Satisfactory HTTPS Management API turns your server into something a bot or dashboard can watch and control: point any client at https://<your-ip>:<game-port>/api/v1, generate a token with server.GenerateAPIToken, and call functions like QueryServerState, SaveGame and Shutdown. Keep that token as private as your Admin Password, and your automation has everything it needs.

 

    Rent your Satisfactory server at gamever.io — every port open out of the box, a built-in Console and panel controls, and 24/7 uptime for your factory. Free trial, promo code WELCOME.

Use promo code WELCOME to create a free server for 1 day!
Create serverStart hosting your server now
Knowledge Base