A game is pinned to exactly one node — its players, rooms and leaderboards exist only there. Resolve the node once, then point every call at it; a key presented on the wrong node answers 421 with a home_api_url hint.
client.regions.list() -> DiscoverResponse
GET /api/discover.php — every enabled node plus the server's geo hint. No auth needed.
Example Usage:
d = client.regions.list()
client.regions.resolve_game(api_key) -> GameNodeResponse
POST /api/discover.php with the key in X-Api-Token (never in a URL) — returns the game's pinned node.
Example Usage:
r = client.regions.resolve_game(api_key)
home = Client(api_key, base_url=r.node.api_url)