Quickstart
Go from zero to a live event in an afternoon.
This guide walks you from signup to running your first tournament.
1. Create a studio
Open the dashboard and sign in with Google or GitHub. A studio is your top-level workspace — it holds members, games, and audit history.
2. Add a game
Inside your studio, create a game. A game scopes everything below it: players, events, items, bots, reward tables, and webhooks.
3. Issue an API key
Under the game's API keys tab, issue a client_sdk key (for
players' game clients) or a server_integration key (for your own
backend). The full secret is shown once — store it somewhere
safe.
export KRATY_API_KEY=<your-client-sdk-key>The key alone identifies your studio + game, so the SDKs don't ask for those separately.
4. Wire the SDK
Install the SDK for your stack — same behavior across all three.
TypeScript (web games, Node services):
import { Kraty } from '@kraty/sdk';
const kraty = new Kraty({
apiKey: process.env.KRATY_API_KEY!,
});Unity (C#, 2022 LTS+):
using Kraty;
var kraty = new Kraty(new KratyClientOptions
{
ApiKey = Environment.GetEnvironmentVariable("KRATY_API_KEY"),
});Flutter (Dart, mobile/web/desktop):
import 'package:kraty/kraty.dart';
final kraty = Kraty(KratyClientOptions(
apiKey: const String.fromEnvironment('KRATY_API_KEY'),
));Full per-SDK guides are under SDKs.
5. Create your first event
In the portal, create an event with a metric like score, a
leaderboard mode, and a schedule. Save and flip it to live.
6. Players show up
Your players' attempts flow in through the SDK. Bots fill the leaderboard if it's quiet. Rewards drop when the event ends — your backend gets a signed webhook the moment each grant lands, and the SDK lets the client claim or open them on the player's next session.
That's it — you're running live ops.