Skip to main content
To get set up, fill in the game partner setup form. It asks how your game runs matches and names its players, so BluMint can set up your integration, and BluMint reviews your answers and replies with your staging API key.
  • Your API keys. You get one API key for each environment, staging and production, and each is bound to your game. Send it as the X-Api-Key header on every call you make to BluMint. A key works only for your game and only on its own environment, so a staging key answers 401 on production.
  • Start on staging. Build and test on staging, at https://staging.blumint.io, where every account is a test or dummy account. Production is https://app.blumint.com. Every path in this guide is relative to the environment you call, for example https://staging.blumint.io/api/tournaments/match/submit on staging, and each environment keeps its own registered URLs, so register them on each. Once your integration works on staging, ask BluMint for your production key.
The form asks for:
  • Your game and your service. The game’s title, the name players see for your service, and whether you make the game or run matches for a game someone else makes.
  • How players join a lobby. A link they open, a lobby code they type, or your own game client automatically putting them into the lobby without them having to click through an in-game menu. A join page of your own is optional: choose a link only if you host one, a web page or a link that opens your game client, and paste an example join link from staging and one from production. For your own client, paste an example of the watch-only link (spectateUrl) the host opens to follow a match. BluMint takes the hostnames from your examples and matches them exactly, so www.play.yourgame.example and play.yourgame.example are different hostnames, and a link on any other hostname fails the create (Answer the create).
  • How your server runs a match. A best-of series in one lobby, or single game sessions, with the range of teams per match and players per team your server runs. A best-of series always has two teams. Choose it only if your server can resume a series from a starting score, because a new lobby for an interrupted match carries the game sessions each team already won (startingWins). A host can’t set up a tournament of your game outside the ranges you give.
  • Spectators. Optionally, whether your lobbies admit spectators and, if they do, the most a match can have as your game sets it, or that they admit any number. BluMint reads your answer when it sets up your integration, and a create can still list more spectators than your lobby admits (Create a lobby).
  • The match settings hosts can choose. Optionally, the settings of your game a host should be able to configure for a match, such as the map, the game mode or a time limit, with a link to any API or JSON spec that defines them. BluMint sends the host’s choices with every create (Match settings).
  • How BluMint names your players. By the accounts they link on BluMint, one or more of Discord, Epic, Twitch, and Lichess, or by your own player ids. Each player links one of those accounts on BluMint before they can join your game’s tournaments. For your own ids, you host a lookup URL that turns a linked account’s id into your player id, a player can register only once your lookup finds them (Player lookup), and the form also asks for your connect page, on staging and on production: the page that shows a player how to connect their account in your game. An integration that names players by their linked accounts needs no connect page. One that names them by your own ids needs one, because BluMint links it whenever your lookup can’t find a player, at registration and before a create.
  • A technical contact. The email BluMint replies to with your staging key and writes to about your integration.
The form never asks for an API key, a callback URL, or a secret: you register your callback URLs yourself once you have a key (Register your callbacks). To change an answer later, ask through the contact form.