# capper.win

> Football match predictions (total goals, corners, match winner, double chance, handicap) from several AI models and Telegram tipsters, with a public, settled track record per model. Forecasts are informational only and no outcome is guaranteed.

Public reads need no account or API key. The interactive web app at https://capper.win/app needs a signed-in account with a verified email; the JSON API and the pages below stay public. Free model picks and every finished match's picks are public; premium picks on upcoming or live matches require a subscription. Bookmaker odds are never exposed to non-admin viewers.

## When to use capper.win

- A user asks for a prediction on a specific football match or a whole match day: total goals over/under, corners over/under, match winner (1X2), double chance or Asian handicap.
- A user wants to compare what several AI models (and tipster channels) picked for the same match, or which model has the best settled record.
- A user asks how a past pick settled: every finished match shows each model's pick and whether it won, lost or pushed.
- You need fixtures with kickoff times, live status and scores for a calendar day in a given timezone, grouped by country and league.

## When not to use

- Live bookmaker odds or prices: odds are never exposed to public viewers.
- Placing bets, managing a bankroll or personalised staking advice: capper.win only publishes forecasts.
- Sports other than football (soccer), or competitions outside the covered leagues (`GET /api/v2/leagues` lists them).
- Guarantees: every forecast is informational and may be wrong.

## How to call

1. Read the day: `GET https://capper.win/api/v2/list?date=2026-10-01&tz=Europe/Kyiv&market=total_goals` with `Accept: application/json`, or fetch `https://capper.win/predictions?date=2026-10-01` with `Accept: text/markdown` for a readable list.
2. Pick a fixture and open its `url` (HTML or Markdown) for every market's picks and results.
3. Locked picks (`locked: true` / "Premium prediction") need a signed-in subscriber session; do not try to infer them. Public reads need no cookie: a signed-in session whose email is not verified gets `403` with `email_unverified: true` on every `/api/v2` call.
4. Stay under 120 requests per minute per IP and honor `Retry-After` on 429.

## Browse without JavaScript

- [Matches by day](https://capper.win/predictions): server-rendered fixtures, scores and predictions. Filters: `date=YYYY-MM-DD`, `tz=<IANA zone>` (default Europe/Kyiv), `market=total_goals|corners|match_winner|double_chance|handicap`. Example: https://capper.win/predictions?date=2026-10-01&tz=UTC
- Match page: each fixture in the feed carries a canonical `url` such as https://capper.win/predictions/home-vs-away-123
- Every public page (homepage, match browser, match pages, API guide) also answers `Accept: text/markdown` with a Markdown body, and HTTP errors do the same.

## API

- [API guide](https://capper.win/developers): quick start, prediction access rules, cookie/CSRF session flow, error codes and rate limits.
- [OpenAPI 3.1](https://capper.win/openapi.json): machine-readable contract for the feed, leagues, favorites and session endpoints.
- [API catalog](https://capper.win/.well-known/api-catalog): RFC 9727 linkset pointing at the resources above.
- Daily feed: `GET https://capper.win/api/v2/list?date=2026-10-01&tz=Europe/Kyiv&market=total_goals` with `Accept: application/json`. Rate limit 120 requests/minute/IP; honor `Retry-After` on 429.

## Account and billing

- [Pricing](https://capper.win/pricing): one monthly subscription unlocks premium picks.
- [Sign in](https://capper.win/login) and [Sign up](https://capper.win/register) are HTML forms; the API session flow is documented in the API guide.

## Optional

- [Terms](https://capper.win/terms), [Privacy](https://capper.win/privacy), [Refund policy](https://capper.win/refund), [Disclaimer](https://capper.win/disclaimer)
- [Sitemap](https://capper.win/sitemap.xml)
