← Todas las guías
En esta página
Guía Semántica del póker · 09/09 Entrenador 14 min Avanzado

¿Cómo creo un flujo de trabajo determinista de estado de juego de póker con una API?

Usa POST /v1/pokerkit/games/state para reconstruir una instantánea de información completa a partir de una configuración de juego documentada y actions; después, usa POST /v1/pokerkit/games/step para añadir una next_action comprobada.

Actualizado Mantenido por Pokerai API

Respuesta directa: conserva la configuración completa de la partida y la lista de acciones en tu aplicación. Llama a POST /v1/pokerkit/games/state para obtener el snapshot y las legal_actions actuales; elige una acción únicamente mediante tu propia interfaz de entrenamiento o revisión y, a continuación, llama a POST /v1/pokerkit/games/step con esa next_action y expected_action_count igual a la longitud de la lista de acciones. Guarda las actions devueltas como el siguiente estado determinista. Usa GET /v1/pokerkit/meta para leer los metadatos documentados actuales antes de elegir códigos de variante o vocabulario de enumeraciones; no valida formatos no documentados, no expone una fuente de datos de mesas en vivo ni proporciona estrategia.

Datos rápidos

Endpoint de estadoPOST /v1/pokerkit/games/state
Endpoint de pasoPOST /v1/pokerkit/games/step
Campos base obligatoriosAmbas operaciones requieren variant, starting_stacks y antes. El ejemplo público usa variant: NT.
Salida de estadoEl ejemplo público devuelve result.snapshot, incluido legal_actions, y replica result.actions.
Incorporación verificadaEl paso requiere next_action; expected_action_count es el token de concurrencia optimista para la lista de acciones que se está ampliando.
Límite de usoSimulación con información completa solo para formación, entrenamiento, revisión de manos, estudio e investigación; no se permite RTA con dinero real.

Estado frente a paso

Usa state cuando necesites reconstruir la posición actual de la partida a partir de una configuración proporcionada y sus actions. Su instantánea expone el estado factual, como el bote, los stacks, el board, las cartas ocultas enviadas y legal_actions.

Usa step solo para ampliar esa misma lista de acciones proporcionada con una next_action documentada. Devuelve una nueva instantánea y las actions ampliadas. Ninguno de los dos endpoints devuelve estrategia GTO, modelado de jugadores ni una acción recomendada.

Leer la instantánea actual

Usa JSON y una clave de API. Esta solicitud y respuesta son el ejemplo público de código de documentación de pokerkitGamesState.

{"variant": "NT", "antes": [0, 0], "blinds_or_straddles": [1, 2], "min_bet": 2, "starting_stacks": [200, 200], "actions": ["d dh p1 AhKh", "d dh p2 QsQd", "p2 cbr 6"]}

{"result": {"snapshot": {"terminal": false, "street_index": 0, "actor_index": 0, "pot": 8, "bets": [2, 6], "stacks": [198, 194], "board": [], "hole_cards": [{"player": 0, "cards": ["Ah", "Kh"]}, {"player": 1, "cards": ["Qs", "Qd"]}], "legal_actions": [{"action": "fold"}, {"action": "check_or_call", "amount": 4}, {"action": "complete_bet_or_raise_to", "min": 10, "max": 200}]}, "actions": ["d dh p1 AhKh", "d dh p2 QsQd", "p2 cbr 6"]}}

Representa o valida solo los datos factuales de la instantánea devuelta. En este ejemplo, legal_actions enumera fold, una cantidad de check-or-call y un mínimo y máximo de complete-bet-or-raise-to; es la superficie de acciones legales para el estado de información completa enviado, no un consejo sobre qué acción tomar.

Añade una acción con protección de concurrencia

Antes de añadir, conserva la lista de acciones exacta utilizada para la llamada a state. Establece expected_action_count en su longitud y envía la next_action documentada prevista. El esquema público describe una discrepancia como HTTP 409; actualiza la lista de acciones almacenada y reconstruye el estado en lugar de sobrescribir una actualización simultánea.

{"variant": "NT", "antes": [0, 0], "blinds_or_straddles": [1, 2], "min_bet": 2, "starting_stacks": [200, 200], "actions": ["d dh p1 AhKh", "d dh p2 QsQd", "p2 cbr 6"], "next_action": "p1 cc", "expected_action_count": 3}

{"result": {"snapshot": {"terminal": false, "street_index": 1, "actor_index": null, "pot": 12, "bets": [0, 0], "stacks": [194, 194], "board": [], "hole_cards": [{"player": 0, "cards": ["Ah", "Kh"]}, {"player": 1, "cards": ["Qs", "Qd"]}], "legal_actions": [{"action": "deal_board"}]}, "actions": ["d dh p1 AhKh", "d dh p2 QsQd", "p2 cbr 6", "p1 cc"]}}

El ejemplo amplía tres acciones enviadas con p1 cc, devuelve cuatro acciones y actualiza la instantánea. Continúe tratando esa lista de acciones devuelta como la entrada de la siguiente llamada a state o step.

Flujo de trabajo determinista y revisión humana

Un flujo de trabajo mínimo es: persistir la configuración junto con actions; llamar a state; mostrar la snapshot factual y las legal_actions en una interfaz de entrenamiento o revisión; hacer que una persona seleccione o apruebe una acción documentada; llamar a step con esa acción y el recuento esperado; persistir las actions devueltas.

El servicio reconstruye el estado a partir de los datos enviados en lugar de mantener una sesión de juego activa. Conserva tu propio registro de auditoría de la configuración, la lista de acciones, la revisión humana y la instantánea devuelta. No des a entender que la API validó la identidad de un jugador, predijo a los oponentes o seleccionó una estrategia de póker.

Límite de información completa y simulación

Los ejemplos públicos incluyen snapshot.hole_cards enviados; el esquema describe viewer como reservado y v1 como de información completa. Use estos endpoints solo cuando cada carta y acción enviadas formen parte de un flujo de trabajo de entrenamiento, simulación o revisión posterior a la sesión.

No presentes esta API como juego con información oculta, una fuente de mesa en vivo, soporte para variantes o formatos de acción no documentados, modelado de jugadores ni consejos estratégicos. Consulta el esquema OpenAPI actual y /v1/pokerkit/meta para conocer los códigos de variantes compatibles en lugar de inferir la cobertura.

Validación, contrato actual y sin RTA

Ambas operaciones públicas declaran una respuesta de validación 422. Para state, valida la configuración documentada y la lista de acciones. Para step, también valida next_action y gestiona la discrepancia de recuento 409 documentada recargando las acciones actuales. Usa la documentación actual de autenticación, cuotas y errores para la gestión a nivel de cuenta.

Pokerai API es solo para formación, entrenamiento, revisión de manos, estudio e investigación. Se prohíbe la asistencia en tiempo real en mesas con dinero real. No use instantáneas, acciones legales ni resultados de pasos para automatizar o indicar una decisión en vivo con dinero real.

Puntos de conexión relacionados

Usa el contrato público actual para la reconstrucción del estado y las incorporaciones de acciones verificadas; no infieras formatos de juego ni funciones de decisión no compatibles.

Punto de conexiónQué haceÚselo para
POST /v1/pokerkit/games/stateReconstruye una snapshot actual de información completa y las legal_actions a partir de la configuración y las actions enviadasUna vista de estado determinista para entrenamiento, simulación o revisión posterior a la sesión
POST /v1/pokerkit/games/stepAplique una next_action; el expected_action_count opcional protege la extensión de la lista de accionesUna adición revisada y comprobada por una persona al historial de acciones enviadas

SDK, MCP y recursos relacionados