---
title: "Create Game Session"
method: POST
path: "/api/v1/game-sessions"
tags: ["Game Sessions"]
---

# Create Game Session

`POST /api/v1/game-sessions`

## Request

- Base URL: `https://app.aimrank.io` (the document declares no server; this is the origin it was published from)
- URL: `https://app.aimrank.io/api/v1/game-sessions`
- Auth: none declared

Record a multi-player game session.

Creates the GameSession + SessionPlayer rows AND fans out pairwise Vote
rows so the ranking's existing leaderboard pipeline updates correctly.

## Request body

- CreateSessionRequest
  - `ranking_id` string, required
  - `players` SessionPlayerInput[], required
    - `entity_id` string, required
    - `placement` integer, required: 1=first place, 2=second, etc.
    - `score` number, nullable
  - `title` string, nullable
  - `notes` string, nullable
  - `location` string, nullable
  - `played_at` string, date-time, nullable

## Response `201`

Successful Response

- SessionResponse
  - `id` string, required
  - `ranking_id` string, required
  - `title` string, nullable, required
  - `notes` string, nullable, required
  - `location` string, nullable, required
  - `played_at` string, date-time, required
  - `created_at` string, date-time, required
  - `recorded_by` string, nullable, required
  - `players` SessionPlayerResponse[], required
    - `entity_id` string, required
    - `placement` integer, required
    - `score` number, nullable, required
    - `rating_before` number, nullable, required
    - `rating_after` number, nullable, required
  - `pairwise_votes_created` integer, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/aimrank/apis/aimrank-api.md) · [All operations](https://skmtc.dev/aimrank/apis/aimrank-api/llms.txt) · [OpenAPI document](https://skmtc.dev/aimrank/apis/aimrank-api/revisions/3574d0aff459?raw)
