---
title: "Create Bracket"
method: POST
path: "/api/v1/brackets"
tags: ["Brackets"]
---

# Create Bracket

`POST /api/v1/brackets`

## 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/brackets`
- Auth: none declared

Create a new single-elimination bracket for a ranking.

Requires the ranking to have at least `size` active entities. Seeding
strategy 'rating' uses top-N by mu; 'random' samples across the pool.

## Request body

- CreateBracketRequest
  - `ranking_id` string, required
  - `size` integer, required: Power of 2 in (4, 8, 16, 32, 64)
  - `strategy` string
  - `name` string, nullable

## Response `201`

Successful Response

- BracketResponse
  - `id` string, required
  - `ranking_id` string, required
  - `name` string, nullable, required
  - `size` integer, required
  - `status` string, required
  - `seed_strategy` string, required
  - `total_rounds` integer, required
  - `champion` EntityLite
    - `id` string, required
    - `name` string, required
    - `image_url` string, nullable
    - `media_url` string, nullable
    - `rating` integer, required
    - `mu` number, required
  - `matches` BracketMatchResponse[], required
    - `id` string, required
    - `round` integer, required
    - `position` integer, required
    - `entity_a` EntityLite
      - `id` string, required
      - `name` string, required
      - `image_url` string, nullable
      - `media_url` string, nullable
      - `rating` integer, required
      - `mu` number, required
    - `entity_b` EntityLite
      - `id` string, required
      - `name` string, required
      - `image_url` string, nullable
      - `media_url` string, nullable
      - `rating` integer, required
      - `mu` number, required
    - `winner_id` string, nullable
    - `next_match_id` string, nullable
    - `next_slot` string, nullable
    - `is_ready` boolean, required
    - `is_complete` boolean, required
  - `created_at` string, date-time, nullable, required
  - `completed_at` string, date-time, nullable, 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)
