> ## Documentation Index
> Fetch the complete documentation index at: https://dev.polltheroom.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Poll the Room for developers

> Live polls on a presenter's own slides. Build decks, put polls on slides, run rooms and read results, from code or from an AI agent.

Poll the Room puts live polls on a presenter's own slides. The presenter builds a deck, the audience joins on their phones with a six-digit code and never signs up, and the results show on the big screen as they come in.

Everything a person can do in the editor, a script or an AI agent can do through one API. The same table of verbs is served three ways, and these pages are generated from it, so they cannot lag behind.

<CardGroup cols={3}>
  <Card title="REST" icon="globe" href="/api-reference/introduction">
    Every verb under `/api/v1`, one bearer key, JSON in and out.
  </Card>

  <Card title="MCP" icon="plug" href="/mcp">
    The same verbs as tools for Claude, Cursor, Codex and any MCP client.
  </Card>

  <Card title="For the model" icon="robot" href="https://test.polltheroom.com/llms-full.txt">
    `llms.txt` and `llms-full.txt`, the whole reference in one file an agent reads first.
  </Card>
</CardGroup>

## What you can build

<CardGroup cols={2}>
  <Card title="A deck from a PDF" icon="file-pdf" href="/guides/build-a-deck-from-a-pdf">
    Attach the presenter's slides, put a poll on the right pages, look at the result.
  </Card>

  <Card title="Polls on slides" icon="layer-group" href="/guides/put-polls-on-slides">
    Seventeen widgets, floating on a slide or filling the screen, with the house defaults.
  </Card>

  <Card title="A room, driven from code" icon="play" href="/concepts/rooms-and-results">
    Start a room, walk the steps, close a poll and reveal, stop.
  </Card>

  <Card title="Results into a report" icon="chart-simple" href="/guides/read-results">
    Every answer as JSON, and the same results as markdown, ready to paste.
  </Card>
</CardGroup>

## How it fits together

A **deck** is a JSON document of steps: the join screen, slides with polls floating on them, and full-screen polls. A **room** is one live session of a deck. An **API key** belongs to a team and carries scopes, so a script can do exactly what the person who made the key allows.

Three things to know before you start:

1. The audience never signs up. An agent works on the presenter's side only.
2. A deck can be saved half-finished. Every read and write tells you whether it is ready to go on stage, and what stops it.
3. Every write returns a `revision`. Send it back and a write lands only if nobody changed the deck since you read it, so an agent and a person can work on one deck without overwriting each other.

<Card title="Quickstart" icon="bolt" href="/quickstart" horizontal>
  A key, one request, a deck in the editor. Five minutes.
</Card>
