cd apps/api npx --yes tsx src/server.ts curl -s localhost:8787/v1/health | jq open http://127.0.0.1:8787/v1/docs
Data routes need an API key (VIVIDODDS_API_KEYS and/or VIVIDODDS_API_KEY). Guest hub screen is a 5-match demo; Italy warehouse is italy-pack; Ontario warehouse is canada-pack. We do not claim 200 books or 1M odds/sec.
Local workshop (localhost): /v1/workshop
EU decimal on every price. SSE emits the same Offer object. GET /v1/true?fixture= returns 409 rather than inventing a True line without Pinnacle/sharp. true_mode=composite blends Pin+PS3838+Circa/Novig/BetOnline warehouse slates (soft books stay out). GET /v1/value accepts optional min_odds/max_odds (inclusive European decimal band on soft it_decimal) applied before limit / early-exit. Placers POST /v1/soft-odds/observe live Soft decimals so value stops advertising a stale warehouse ticket.
click Try