> ## Documentation Index
> Fetch the complete documentation index at: https://docs.qwacks.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Quickstart

> From zero to an authenticated player in five steps with the Flock SDK.

This guide takes you from a fresh game to your first signed-in player using the Flock SDK.

<Steps>
  <Step title="Create a studio and game">
    Sign in to the [Qwacks dashboard](https://flock-saas.qwacks.com), create a **studio**, then create a
    **game** inside it. A game is the container for your players, economy, and config.

    <Frame caption="Create a studio and a game in the Qwacks dashboard.">
      <img src="https://mintcdn.com/qwacks/TGGmq_oWzDacAqHl/images/getting-started/create-game.png?fit=max&auto=format&n=TGGmq_oWzDacAqHl&q=85&s=c06ee3bd32712ab27d3d9ad89c047b9e" alt="Create a studio and game" width="1440" height="866" data-path="images/getting-started/create-game.png" />
    </Frame>
  </Step>

  <Step title="Get your credentials">
    Open your game in the dashboard and copy its **API Key**, **Game ID**, and **Game Version**.
    You'll plug these into the SDK so it can connect to your game.

    <Frame caption="Copy your game's credentials from the dashboard.">
      <img src="https://mintcdn.com/qwacks/TGGmq_oWzDacAqHl/images/getting-started/credentials.png?fit=max&auto=format&n=TGGmq_oWzDacAqHl&q=85&s=52f49700ba4103e24f00858b6842d58b" alt="Game credentials" width="1440" height="866" data-path="images/getting-started/credentials.png" />
    </Frame>

    <Warning>
      Treat your API Key like a password. Use a key scoped to the right environment, keep dev and
      production separate, and rotate it on the dashboard if it leaks.
    </Warning>
  </Step>

  <Step title="Install and configure the SDK">
    Add the [Flock Unity SDK](/sdk/unity), then open **Qwacks → Flock** and paste in your
    credentials. The window prepares the two things the SDK needs before it can start:

    * **Resolve Game Version** — looks up your version's ID and bakes it into the config. Runtime init
      uses that ID directly and never calls the server, so it must resolve before you play or build.
      The window does this automatically as you fill in your credentials.
    * **Verify** — confirms your credentials reach Flock (Setup checklist → **Verify**).

    Then choose how the SDK starts:

    * **Automatic (default):** with **Auto-Initialize On Load** on, the SDK initializes itself before
      the first scene — nothing to call. Just use `FlockClient.Instance`.
    * **Manual:** turn it off and call `FlockClient.Create(config.ToInitConfig())` yourself (or use the
      `FlockBootstrap` component) — handy to wait for a splash screen or EULA.

    <Note>
      Full details on all three init styles are on the [Unity SDK](/sdk/unity) page.
    </Note>
  </Step>

  <Step title="Sign in a player">
    Sign the player in. The first sign-in registers them automatically; the SDK manages the session
    from there. Auth methods **throw** on failure.

    ```csharp theme={null}
    await FlockClient.Instance.Authentication.LoginWithEmailAsync("player@example.com", "hunter2");
    Debug.Log($"Signed in as {FlockClient.Instance.CurrentPlayerId}");
    ```
  </Step>

  <Step title="Use a feature">
    Once a player is signed in, call any service through `FlockClient.Instance`:

    ```csharp theme={null}
    var game = await FlockClient.Instance.Game.GetGameAsync();
    Debug.Log($"Playing {game.Name}");
    ```

    That's it — you're live. 🎉
  </Step>
</Steps>

## Next steps

<CardGroup cols={2}>
  <Card title="Understand authentication" icon="key" href="/authentication">
    How the SDK manages game and player sessions.
  </Card>

  <Card title="Explore the guides" icon="layer-group" href="/guides/players-and-auth">
    Players, shops, leaderboards, remote config, and more.
  </Card>
</CardGroup>
