---
title: "Same as GET, with a JSON body"
method: POST
path: "/api/v1/schedule"
tags: ["schedules"]
---

# Same as GET, with a JSON body

`POST /api/v1/schedule`

## Request

- Base URL: `https://kicksma.sh`
- URL: `https://kicksma.sh/api/v1/schedule`
- Auth: none declared

## Request body

- ScheduleInput
  - `players` integer: Number of players; ignored when names are given.
  - `names` string[]
  - `courts` integer: Defaults to floor(players / 4).
  - `rounds` integer: Defaults to players − 1 when the field is in fours (every pair partners once), else players.
  - `format` 'americano'
  - `seed` integer: Same seed, same schedule.

## Response `200`

The schedule

- Schedule
  - `format` string
  - `players` integer
  - `courts` integer
  - `exact` boolean
  - `rounds` object[]
    - `round` integer
    - `matches` object[]
      - `court` integer
      - `a` string[]
      - `b` string[]
    - `resting` string[]
  - `note` string

## Other responses

- `422`: Invalid request; the message names the field
- `429`: Rate limited; the hint says how to get more room

---

[API](https://skmtc.dev/kicksma/apis/kicksmash-api.md) · [All operations](https://skmtc.dev/kicksma/apis/kicksmash-api/llms.txt) · [OpenAPI document](https://skmtc.dev/kicksma/apis/kicksmash-api/revisions/8ae952aa0f19?raw)
