API y widgets para desarrolladores
El contrato legible por máquinas enumera solo rutas admitidas. Phoenix conserva la autoridad sobre identidad, permisos, jugadas, relojes y resultados.
Referencia API
Busca operaciones admitidas de datos públicos, Bot API y Board API. Descarga el mismo contrato OpenAPI 3.1 que alimenta esta página.
Las lecturas públicas no requieren cuenta. Las operaciones protegidas usan Authorization: Bearer nmc_pat_* con bot:play o board:play. Nunca pongas un token en una URL ni lo compartas.
Datos públicos
- Bots conectados en NDJSON
GET/api/bot/onlinePúblicoFlujo acotado de cuentas BOT con una conexión API activa; no expone secretos.
- Directorio de bots conectados
GET/api/bot/directoryPúblicoAdaptador JSON acotado sobre la misma instantánea pública de bots conectados.
- Buscar perfiles públicos
GET/api/profiles/searchPúblicoBusca perfiles públicos por nombre de usuario dentro del límite del servicio.
- Presencia por país
GET/api/profiles/country-presencePúblicoDevuelve conteos públicos acotados por código de país.
- Consultar perfil público
GET/api/profiles/{username}PúblicoDevuelve la representación pública de una cuenta sin datos privados.
- Consultar perfil compacto
GET/api/profiles/{username}/miniPúblicoDevuelve la identidad pública mínima para vistas compactas.
- Historial de rating
GET/api/profiles/{username}/rating-history/{time_control}PúblicoDevuelve una serie acotada para un ritmo de juego válido.
- Distribución de rating
GET/api/profiles/{username}/rating-distribution/{time_control}PúblicoDevuelve la distribución pública del ritmo solicitado.
- Rendimiento por ritmo
GET/api/profiles/{username}/perf/{time_control}PúblicoDevuelve estadísticas públicas de rendimiento para un ritmo válido.
- Actividad pública
GET/api/profiles/{username}/activityPúblicoDevuelve la actividad pública visible de la cuenta.
- Partidas públicas
GET/api/profiles/{username}/gamesPúblicoLista únicamente partidas públicas con paginación y filtros acotados.
- Exportar partidas públicas
GET/api/profiles/{username}/games/export.pgnPúblicoDescarga un conjunto acotado de partidas públicas en PGN.
- Buscar jugadores FIDE
GET/api/fide/playersPúblicoLista una instantánea oficial, paginada y trazable del directorio FIDE.
- Consultar jugador FIDE
GET/api/fide/players/{id}PúblicoDevuelve identidad, ratings, historial mensual y fuente oficial sin datos privados.
- Listar federaciones FIDE
GET/api/fide/federationsPúblicoLista federaciones con jugadores activos y promedios de sus diez mejores ratings.
- Consultar federación FIDE
GET/api/fide/federations/{code}PúblicoDevuelve estadísticas de la federación y sus jugadores paginados.
Bot
- Convertir cuenta en BOT
POST/api/bot/account/upgradebot:playConversión irreversible para una cuenta humana activa, sin partidas ni privilegios de plataforma.
- Comprobar cuenta BOT
GET/api/bot/statusbot:playConfirma la identidad, el permiso aceptado y las capacidades disponibles.
- Consultar partida propia
GET/api/bot/game/{id}bot:playDevuelve el estado autoritativo de una partida jugada por este BOT.
- Seguir partida en vivo
GET/api/bot/game/{id}/streambot:playAbre un flujo NDJSON con el estado inicial, jugadas, cambios y keep-alives.
- Jugar una jugada
POST/api/bot/game/{id}/move/{uci}bot:playEnvía una intención UCI; el backend valida turno, legalidad, reloj y estado antes de persistirla.
- Abortar partida
POST/api/bot/game/{id}/abortbot:playAborta una partida propia únicamente mientras la regla autoritativa lo permita.
- Rendirse
POST/api/bot/game/{id}/resignbot:playRegistra la rendición del jugador autenticado en una partida activa.
- Gestionar tablas
POST/api/bot/game/{id}/draw/{accept}bot:playOfrece, acepta, rechaza o cancela tablas mediante el valor booleano indicado.
- Gestionar devolución
POST/api/bot/game/{id}/takeback/{accept}bot:playOfrece, acepta, rechaza o cancela una devolución de jugada cuando la partida lo permite.
- Leer chat de partida
GET/api/bot/game/{id}/chatbot:playDevuelve únicamente el chat reciente autorizado para el participante.
- Enviar chat de partida
POST/api/bot/game/{id}/chatbot:playPublica un mensaje moderado, limitado y asociado al participante autenticado.
- Reclamar tablas
POST/api/bot/game/{id}/claim-drawbot:playSolicita al backend resolver una reclamación válida de tablas.
- Reclamar victoria
POST/api/bot/game/{id}/claim-victorybot:playSolicita al backend resolver una victoria reclamable por desconexión.
- Listar retos propios
GET/api/bot/challengesbot:playLista únicamente retos entrantes y salientes del titular del token.
- Crear reto
POST/api/bot/challengesbot:playCrea un reto compatible con BOT; el backend decide permisos y modalidad.
- Aceptar reto
POST/api/bot/challenges/{id}/acceptbot:playAcepta un reto entrante compatible y crea la partida autoritativa.
- Rechazar reto
POST/api/bot/challenges/{id}/declinebot:playRechaza un reto entrante que pertenece al titular del token.
- Cancelar reto
DELETE/api/bot/challenges/{id}bot:playCancela un reto saliente que pertenece al titular del token.
Tablero externo
- Comprobar cuenta tablero externo
GET/api/board/statusboard:playConfirma la identidad, el permiso aceptado y las capacidades disponibles.
- Consultar partida propia
GET/api/board/game/{id}board:playDevuelve el estado autoritativo de una partida jugada por este tablero externo.
- Seguir partida en vivo
GET/api/board/game/{id}/streamboard:playAbre un flujo NDJSON con el estado inicial, jugadas, cambios y keep-alives.
- Jugar una jugada
POST/api/board/game/{id}/move/{uci}board:playEnvía una intención UCI; el backend valida turno, legalidad, reloj y estado antes de persistirla.
- Abortar partida
POST/api/board/game/{id}/abortboard:playAborta una partida propia únicamente mientras la regla autoritativa lo permita.
- Rendirse
POST/api/board/game/{id}/resignboard:playRegistra la rendición del jugador autenticado en una partida activa.
- Gestionar tablas
POST/api/board/game/{id}/draw/{accept}board:playOfrece, acepta, rechaza o cancela tablas mediante el valor booleano indicado.
- Gestionar devolución
POST/api/board/game/{id}/takeback/{accept}board:playOfrece, acepta, rechaza o cancela una devolución de jugada cuando la partida lo permite.
- Leer chat de partida
GET/api/board/game/{id}/chatboard:playDevuelve únicamente el chat reciente autorizado para el participante.
- Enviar chat de partida
POST/api/board/game/{id}/chatboard:playPublica un mensaje moderado, limitado y asociado al participante autenticado.
- Reclamar tablas
POST/api/board/game/{id}/claim-drawboard:playSolicita al backend resolver una reclamación válida de tablas.
- Reclamar victoria
POST/api/board/game/{id}/claim-victoryboard:playSolicita al backend resolver una victoria reclamable por desconexión.
- Listar retos propios
GET/api/board/challengesboard:playLista únicamente retos entrantes y salientes del titular del token.
- Crear reto
POST/api/board/challengesboard:playCrea un reto compatible con tablero externo; el backend decide permisos y modalidad.
- Aceptar reto
POST/api/board/challenges/{id}/acceptboard:playAcepta un reto entrante compatible y crea la partida autoritativa.
- Rechazar reto
POST/api/board/challenges/{id}/declineboard:playRechaza un reto entrante que pertenece al titular del token.
- Cancelar reto
DELETE/api/board/challenges/{id}board:playCancela un reto saliente que pertenece al titular del token.
Opciones
TV acepta best, bullet, blitz, rapid o classical como canal. Las partidas públicas aceptan color=black para girar el tablero. Los análisis embebidos aceptan fen y color=black; codifica los espacios del FEN como guiones bajos o espacios codificados en la URL.
Seguridad y privacidad
Solo estas rutas públicas exactas pueden mostrarse en un iframe. Las partidas privadas, los enlaces vencidos y toda ruta de cuenta o administración siguen bloqueados.
Dominios reales pendientes
Estudios y Retransmisiones siguen pendientes hasta que No ManChess tenga sus dominios de producto autoritativos. No se anuncia ningún widget provisional.