> ## Documentation Index
> Fetch the complete documentation index at: https://doc.playsmart.api.dolly.gg/llms.txt
> Use this file to discover all available pages before exploring further.

# PlaySmart: API platform for mobile game monetization

> PlaySmart powers coin economies, real-money withdrawals, and analytics for mobile games. Connect your Unity game to a production-ready backend in minutes.

PlaySmart is a backend API platform built for mobile game publishers. It provides everything you need to run in-game coin economies, convert coins to real money, pay players via PayPal, and track analytics events — all through a single HTTP API your Unity game calls directly.

<CardGroup cols={2}>
  <Card title="Quick Start" icon="rocket" href="/quickstart">
    Make your first API call and set up authentication in under 5 minutes.
  </Card>

  <Card title="Authentication" icon="key" href="/authentication">
    Register users, obtain JWT tokens, and authenticate every request.
  </Card>

  <Card title="API Reference" icon="code" href="/api/auth/register">
    Full reference for all public endpoints: auth, games, economy, and events.
  </Card>

  <Card title="Guides" icon="book-open" href="/guides/register-and-login">
    Step-by-step walkthroughs for common integration tasks.
  </Card>
</CardGroup>

## How PlaySmart works

PlaySmart exposes a REST API your game client calls over HTTPS. After registering a user, you receive a JWT access token that authorizes all subsequent requests. Games earn coins as players complete levels, those coins convert automatically to real USD balances on a scheduled cycle, and players can request PayPal withdrawals from the app.

<Steps>
  <Step title="Register your player">
    Call `POST /auth/register` with the player's email, password, and device ID to create an account and receive access and refresh tokens.
  </Step>

  <Step title="Fetch game configuration">
    Call `GET /v1/games` to retrieve your game's settings — coin rewards, ad configuration, and maintenance status — before each session starts.
  </Step>

  <Step title="Track gameplay events">
    Send batched events to `POST /ingest/events` as players open the app, complete levels, and trigger in-game actions. This drives coin awards and analytics.
  </Step>

  <Step title="Enable withdrawals">
    Players with a positive USD balance can call `POST /v1/withdrawals` to request a PayPal payout. Your team reviews and processes these in the admin panel.
  </Step>
</Steps>

## Key capabilities

<CardGroup cols={2}>
  <Card title="Coin Economy" icon="coins" href="/concepts/economy">
    Earn, deduct, and convert in-game coins to USD with configurable exchange rates.
  </Card>

  <Card title="Game Catalog" icon="gamepad" href="/concepts/games">
    Per-game configuration for ads, coins, game mode, and version gating.
  </Card>

  <Card title="Analytics Events" icon="chart-line" href="/concepts/events">
    Ingest gameplay events in batches with automatic deduplication and processing.
  </Card>

  <Card title="PayPal Withdrawals" icon="money-bill-transfer" href="/guides/withdraw-earnings">
    Players request withdrawals directly; your team marks them paid via the admin panel.
  </Card>
</CardGroup>
