Como crio um fluxo de trabalho de API para revisão de mãos de poker?
Crie um fluxo de revisão pós-sessão que aceite apenas uma mão concluída, use dados determinísticos da API para suas cartas, board, equity e estratégia e, em seguida, adicione uma consulta GTO depois que o usuário escolher um ponto de estudo.
Fatos rápidos
| Análise de mãos | POST /v1/pokerkit/notation/parse analisa a notação pública de Poker Hand History em dados estruturados de jogo. |
|---|---|
| Reproduzir | POST /v1/pokerkit/games/state retorna um snapshot que inclui pote, stacks, board, hole cards e ações legais para as ações enviadas. |
| Semântica | POST /v1/pokerkit/hand-report retorna textura, nível, draws, outs e bloqueadores para uma mão com cartas fechadas e mesa. |
| Equidade | POST /v1/pokerkit/equity retorna equities de Monte Carlo e a contagem de amostras. |
| Consulta GTO | POST /v1/gto/preflop retorna uma estratégia mista pré-resolvida para uma linha de ação pré-flop documentada. |
1. Analise ou reproduza a mão concluída
Armazene uma mão somente após a sessão e, em seguida, passe seu texto de Poker Hand History ao analisador de notação. Para uma linha do tempo de revisão, envie a configuração estruturada e as ações ao endpoint de estado do jogo; seu snapshot fornece à interface uma visão factual do pote, stacks, board, cartas fechadas e ações legais.
{"text": "variant = \"NT\"\nante_trimming_status = true\nantes = [0, 0]\nblinds_or_straddles = [1, 2]\nmin_bet = 2\nstarting_stacks = [200, 200]\nactions = [\"d dh p1 AhKh\", \"d dh p2 QsQd\", \"p1 cbr 6\", \"p2 cc\", \"d db Qh7c2d\"]\n"}
{"result": {"variant": "NT", "ante_trimming_status": true, "antes": [0, 0], "blinds_or_straddles": [1, 2], "bring_in": null, "small_bet": null, "big_bet": null, "min_bet": 2, "starting_stacks": [200, 200], "actions": ["d dh p1 AhKh", "d dh p2 QsQd", "p1 cbr 6", "p2 cc", "d db Qh7c2d"], "automations": [{"name": "ANTE_POSTING", "value": "Ante posting"}, …], "author": null, "event": null, "day": null, "month": null, "year": null, "hand": null, "currency": null}}
2. Explique a semântica do board e da mão
Na rodada selecionada, chame o endpoint de relatório da mão com as hole do jogador e o board. Apresente a textura retornada, a categoria de mão formada, projetos, outs e bloqueadores como rótulos e evidências; não infira uma recomendação a partir desses campos descritivos.
{"hole": "JhTh", "board": "AsKsQs"}
{"result": {"texture": {"cards": ["As", "Ks", "Qs"], "wetness": {"name": "WET", "value": "Wet"}, "connectivity": {"name": "HIGH", "value": "High"}, "rank_band": {"name": "HIGH", "value": "High"}, "straight_draw": {"name": "OPEN_ENDED", "value": "Open-ended"}, "flush_draw": {"name": "LIVE", "value": "Live"}, "are_two_tone": false, "are_monotone": true, "are_rainbow": false}, "tier": {"category": {"name": "STRAIGHT", "value": "Straight"}, "is_nut": false, "pair_tier": null, "two_pair_tier": null, "three_of_a_kind_tier": null, "kicker_tier": null, "nut_rank": {"name": "NON_NUT", "value": "Non-nut"}}, "draws": {"straight_draw": null, "flush_draw": null, "nut_rank": null}, "outs": {"by_category": {}, "count": 0}}}
3. Estime a equidade com seu contexto de amostragem
Para uma comparação de revisão, envie os Ranges conhecidos, o board, a contagem de amostras e a seed ao endpoint de equity. Exiba cada equity retornada ao lado de sample_count; ela é uma estimativa para os Ranges e o board fornecidos, não uma promessa sobre a próxima carta nem uma instrução de aposta.
{"ranges": [["AA"], ["KK"]], "board": "", "sample_count": 2000, "seed": 7}
{"result": {"equities": [0.8235, 0.1765], "sample_count": 2000}}
4. Anexe uma consulta GTO para a explicação da revisão
Mapeie uma linha de ação pré-flop reconstruída para a consulta pré-flop documentada. Mostre o array de estratégia retornado como frequências mistas e explique que o usuário escolhe de acordo com a frequência; mantenha esta etapa de revisão separada do jogo ao vivo.
curl -s https://pokerai.bet/v1/gto/preflop \
-H "Authorization: Bearer $POKERAI_API_KEY" -H "Content-Type: application/json" \
-d '{"hole_cards":"AhKh","positions":{"hero":"MP"},"preflop_version":"6max_RC_100bb_200NL",
"preflop_actions":[{"position":"SB","action":"small blind","amount":0.5},
{"position":"BB","action":"big blind","amount":1},
{"position":"UTG","action":"raise","amount":3}]}'
5. Crie uma interface de explicação, não um prompt de ação
Mostre uma sequência estável: linha do tempo da mão, fatos do board e da mão, estimativa de equidade e, depois, as frequências da estratégia GTO. Identifique as entradas, os campos retornados, a street e as premissas. Apresente alternativas e a frequência, em vez de um único botão “jogar agora”.
Somente treinamento e revisão
Aceite apenas mãos que já terminaram e use este fluxo de trabalho para treinamento, coaching, revisão de mãos, estudo e pesquisa após uma mão. Exija revisão humana para orientações de coaching ou resultados de produto com impacto significativo. Assistência em tempo real em mesas com dinheiro real é proibida. Não ingira um feed de mesa ao vivo, não selecione uma ação automaticamente nem exponha uma interface de recomendação durante a mão.
Recursos relacionados
- Documentação para desenvolvedores — autenticação, cotas, SDKs, erros e comportamento da API
- Referência interativa da API — os esquemas atuais dos endpoints públicos
- Especificação OpenAPI — o contrato em inglês legível por máquina
- Guia da API de estratégia pré-flop — como reconstruir e consultar uma linha de ações pré-flop
- Guia do Pokerai MCP — adicione a orquestração de agentes somente depois que o fluxo de revisão de mãos concluídas estiver implementado
- llms.txt — o ponto de entrada conciso de LLM para Pokerai API