14.2.7
Guide

Getting a credential without Discord

One call from the game server is all it takes. Nobody asks who you are; you only prove that a server is running at that address.

  1. 01

    Call from the game server machine

    Send it from the machine the game server runs on. Sent from anywhere else, that other place is what gets registered. Put your implementation name in User-Agent so the records tell clients apart.

    POST /api/v1/servers/claim
  2. 02

    Address check

    We send A2S_INFO to the request IP and the port you gave, and wait for an SCP:SL server to answer. No answer means 403.

    {"port":7777}
  3. 03

    Store the credential

    The credential in the 200 response is returned only once. Store it and start reporting.

    {"status":"verified","credential":"slsrv_…"}
  4. 04

    Stay within the limits

    One credential per IP every 5 minutes, at most 3 live at a time. To claim again for the same IP:port, send the earlier credential as Authorization: Bearer and it is replaced at once; without it, only after that registration has been silent for over an hour.

    Authorization: Bearer slsrv_…

On a shared IP

If several servers share one public IP on different ports (typical for game hosting), another server on the same IP passes the check too. That is why replacing a live registration requires its credential in the Authorization header (409 otherwise), and one IP holds at most 3 credentials. If that cap is too small, use the Discord claim path, which is limited per account instead.

SLMAPS is the seed-map viewer for SCP: Secret Laboratory. These pages describe the public API of slmaps.com.slmaps.com ·