How do I get poker draws, outs, and blockers with an API?
Submit a completed-hand board and hole cards to the public PokerKit operations for factual draw, out, and blocker labels.
hole and board to POST /v1/pokerkit/draws, POST /v1/pokerkit/outs, or POST /v1/pokerkit/blockers. These are separate public OpenAPI contracts: read the current schema before consuming result, and use the labels only for training, review, study, or research—not real-money action selection.Quick facts
| Operations | POST /v1/pokerkit/draws, /outs, and /blockers |
|---|---|
| Required input | hole and board, required by the public HandRequest schema |
| Optional input | hand_type and dead where the current OpenAPI schema permits them |
| Result boundary | Factual labels only; not equity, a guaranteed result, or a recommended move |
| Use boundary | Completed-hand training, coaching, review, study, and research only; no real-money RTA |
Input semantics
hole is Hero's two cards and board is a three-, four-, or five-card board. Use standard two-character card codes without separators. The shared public HandRequest schema also documents hand_type and dead; do not invent unsupported card formats or fields.
Minimal public OpenAPI request and response
The three operations share the public HandRequest contract. This minimal request uses only its required fields; use /outs or /blockers in place of /draws for the other narrow results, then inspect the current operation-specific response schema.
POST /v1/pokerkit/draws
Authorization: Bearer $POKERAI_API_KEY
Content-Type: application/json
{"hole":"JhTh","board":"AsKsQs"}
Interpret results
Treat draws as documented draw labels, outs as documented improvement-card categories and counts, and blockers as documented nut-combo blocking evidence. A count or label does not state probability, opponent range, equity, solver EV, or a recommended action. Keep fields optional unless the current operation schema marks them required.
When to use it
Use these operations to annotate a completed hand in a trainer, coaching tool, hand-history review, study notebook, or research workflow. Use Hand Report when a combined factual overview is more useful than a narrow operation.
When not to use it
Do not use these labels to estimate win probability, promise an outcome, select a live action, or support an undisclosed poker format. Do not connect output to a live-table feed or automation.
Quota and errors
These operations use the public API key and account quota system. Check quota documentation, pricing, and the dashboard for current limits; do not hard-code a limit. The public contract declares validation errors: correct hole, board, and optional fields against the current API Reference; for authentication or quota failures, follow error documentation and do not retry an unchanged invalid request.
SDK, MCP, and related resources
Developer docs cover SDK and MCP setup, authentication, and quotas. The API Reference and OpenAPI snapshot are the current public contracts. Official entry points: Python SDK, TypeScript / JavaScript SDK, and MCP server.
No real-money RTA
Pokerai API is for training, coaching, hand review, study, and research only. Real-time assistance at real-money tables is prohibited. Never present draws, outs, or blockers as a live action instruction.
Related public operations
Use the narrow public contract that matches the factual label your completed-hand review needs.
| Endpoint | Task | Use |
|---|---|---|
POST /v1/pokerkit/draws | Read draw labels | Return the documented draw result for the submitted hand and board. |
POST /v1/pokerkit/outs | Read improvement outs | Return documented out categories and counts. |
POST /v1/pokerkit/blockers | Read blocker evidence | Return documented nut-combo blocker fields. |
Related resources
- Developer docs — authentication, quotas, SDKs, errors, and PokerKit semantics
- API Reference — current draws, outs, and blockers operations
- OpenAPI snapshot — machine-readable English contract
- Poker hand analysis API guide — combined factual Hand Report workflow
- llms.txt — concise LLM entry point