Brill Bidding Service

Version 0.1.0+20260809.1409.gunknown · Built 2026-08-09 14:09:17 Coordinated Universal Time

API for bridge bidding and card play analysis. Interactive API docs (Swagger)

Play & analysis

EndpointDescription
/bidGet next bid
/bidsGet all possible bids with scores
/leadOpening lead recommendation
/playCard play recommendation (NN/Brill/ACE). When the declaring side is on lead and the engine's best line wins every remaining trick in every sampled world (re-verified by demote+DD), the response also carries claim=tricks so the client can offer a claim.
/autoplayAuto-play full hand
/claimClaim end-of-board: same params as /play + tricks=extra claimed by seat's side → saves PBN with Result = (tricks declarer already won from played) + extra, returns {claim, result, tricksTotal, board, saved}. seat=declarer → validated (demotion + DD); any other seat → accepted unvalidated. Add claimside=defenders when the DEFENCE is claiming extra: Result then adds (remaining − extra) and no DD check runs. Optional south (player name) + robot (name for the other 3 seats), or per-seat north/east/west (override robot; used when the seats hold different players), stamp seat names and a [Room] tag.
/pbn/finalizeEnd-of-board hook (GET query or POST JSON): client sends {board, dealer, vul, ctx, played, deal?, passedout?} to save final PBN. Optional south/robot (or per-seat north/east/west, which override robot) add seat names + [Room] (Open, or Closed for a "_robot" label) so /pbn/all.pbn downloads as an Open/Closed match.
/ddDouble-dummy analysis
/explainExplain bidding sequence
/getresponsesPossible responses to auction
/evaluateEvaluate hand in auction context (POST JSON)
/suitcSuit combination analysis (POST JSON)

Diagnostics, logs & saved data

EndpointDescription
/versionSystem version info
/readyReadiness check (startup time)
/healthHealth check
/memoryMemory usage and cache diagnostics
/logsView engine log files
/servicelogView request-timing / STUCK watchdog log — last 500 lines (download full log)
/timingsDownload per-request timing CSV (persistent across restarts)
/missingMissing auction contexts (for rule authoring)
/missing/autogeneratedDownload AutoGeneratedRules.json (feed to RuleUpdater)
/pbnSaved completed-board PBN snapshots (list + per-board download)
/pbn/all.pbnDownload all saved PBN snapshots as one multi-game file