Dynamic Game URL

Dynamic Game URL Resolution

Overview

Groove uses a server-side redirect mechanism to dynamically resolve the actual game URL. This ensures that when you change URLs or routing logic on your side, Groove automatically picks up the new URL without requiring any manual configuration updates.

How It Works

sequenceDiagram participant Player participant Casino participant Groove participant YourAPI as Your Game Provider API participant YourGame as Your Game Server Player->>Casino: Select game to play Casino->>Groove: Request game launch Groove->>YourAPI: Forward launch request (server-side) YourAPI-->>Groove: HTTP 30X + Location header Groove-->>Casino: Return resolved game URL Casino->>Player: Redirect to game Player->>YourGame: Start playing

Flow Details:

  1. Server-side request: Groove sends the game launch request from its server (not from the player’s browser)
  2. Redirect response: Your API responds with an HTTP 30X status code (e.g., 301, 302) and a Location header containing the actual game URL
  3. URL extraction: Groove captures the Location header value from the redirect response
  4. Player redirect: The resolved URL is returned to the player to launch the game

Why This Approach

This mechanism allows you to control game URL routing entirely on your side. For example:

  • Market-based routing: Route players to different game servers based on region or regulation
  • Infrastructure changes: Update game server URLs without notifying Groove
  • A/B testing: Route different players to different game versions
  • Load balancing: Distribute traffic across multiple game servers

Groove forwards the request the same way for all markets — the routing logic is entirely up to your implementation.

Info

**Note**: This approach was initially introduced to support the Turkey market, but applies to all markets. Your API decides the redirect destination based on whatever logic you implement.

Response Requirements

Your API must return:

  • Status Code: 301, 302, 303, or 307
  • Location Header: The full URL to the actual game server

Example Response

HTTP/1.1 302 Found
Location: https://games-tr.yourplatform.com/play?session=abc123&game=80102
Warning

Groove does **not** automatically follow redirects. Your initial response must be the redirect itself — Groove extracts the `Location` header and uses it as the game URL for the player.