---
title: "Buzz In"
method: POST
path: "/chatrooms/{room_name}/canasta/buzz"
tags: ["canasta"]
---

# Buzz In

`POST /chatrooms/{room_name}/canasta/buzz`

Press the buzzer. First ARRIVAL AT THE SERVER wins.

A plain `def`, like every other mutating handler here, and for this one it
matters most of all: a buzzer is precisely the case where a whole class
POSTs in the same tick. As `async def` the first request would hold the row
lock on the event loop while the next twelve queued behind it and the pod
answered nobody (see `advance_round`). FastAPI runs a sync handler in the
threadpool, where waiting for the lock costs one thread.

No client timestamp is read anywhere in this function. Player clocks are
not trustworthy (Buzzonk says so out loud, and it is the reason quiz-bowl
hardware exists); the row lock IS the tie-break.

## Path parameters

- `room_name` string, required

## Headers

- `authorization` string, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422` — Validation Error

## Changes

> 25 revisions in range; 1 not diffed.

- **2026-09-21** `13996d792e23` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/fluentea/apis/aurqa-language-learning-platform-refactored/changes/chatrooms/:room_name/canasta/buzz/post.md)

---

[API](https://skmtc.dev/fluentea/apis/aurqa-language-learning-platform-refactored.md) · [All operations](https://skmtc.dev/fluentea/apis/aurqa-language-learning-platform-refactored/llms.txt) · [OpenAPI document](https://skmtc.dev/fluentea/apis/aurqa-language-learning-platform-refactored/revisions/be75c0eba493?raw)
