The full reference is below, examples and all. Every /v1 call needs a key: sign in with Google, create one in your account, and start on 10 free points. 1 call = 1 point = 1 cent. The same key opens the MCP server, where the reference tools and the last week of results answer with no key at all.
Read-only access to the whole database — the same queries the site runs, as JSON. Base URL https://fdb4.io. Authenticate with Authorization: Bearer <key>. Every endpoint is GET; nothing here writes.
The same database spoken to AI clients over the Model Context Protocol, at https://fdb4.io/mcp. It is priced differently from this page, which is why it has one of its own: 6 of its 11 tools answer with no key at all — the country, competition and team lookups, the no-draw run a team is on, and the last few days of results — while the draw models, the all-time leaderboard, head-to-head records and the archive behind that week cost a point each, from this same balance. Nothing on /v1 is free.
One competition with its coverage span, every edition (newest first, with the champion where one is decided) and the all-time winners ranking. Accepts a numeric id or a slug.
curl -sS "https://fdb4.io/v1/tournaments/norway-cup" \ -H "Authorization: Bearer $FDB_API_KEY" \ -H "Accept: application/json"
Illustrative shape — a couple of rows, not live data.
{
"data": {
"id": 53,
"name": "Norwegian Football Cup",
"slug": "norway-cup",
"type": "cup",
"country": {
"id": 44,
"name": "Norway",
"fifa_code": "NOR"
},
"matches_count": 13111,
"draws_count": 854,
"draw_percent": 6.51,
"coverage": {
"editions": 120,
"first_year": 1902,
"last_year": 2025
},
"editions": [
{
"id": 8801,
"year": 2025,
"name": "Norwegian Football Cup 2025",
"matches_count": 127,
"champion": {
"id": 1907,
"slug": "rosenborg",
"name": "Rosenborg"
}
},
{
"id": 8802,
"year": 2026,
"name": "Norwegian Football Cup 2026",
"matches_count": 12,
"champion": null
}
],
"winners": [
{
"rank": 1,
"id": 1907,
"slug": "rosenborg",
"name": "Rosenborg",
"titles": 12,
"runner_up_count": 4,
"years": [
1960,
1964,
"…"
]
}
]
}
}
| Name | Type | Description |
|---|---|---|
| id | path | Numeric competition id or slug (e.g. 53 or norway-cup). |
- Sign in with Google — no password, no form, nothing to wait for.
- Create a key in your account. It is shown once, so store it somewhere safe.
- Send it on every request as
Authorization: Bearer <key>— tohttps://fdb4.io/v1or tohttps://fdb4.io/mcp.
1 call = 1 point = 1 cent, on the API and on the paid half of the MCP server — the free MCP tools cost nothing whether or not you hold a key. Out of points? Top up — you pick the amount, there are no packages and no subscription. Bring someone with you and earn 10% of every point they are ever credited. No refunds, ever: the product is data, and data cannot be returned.
Existing keys not attached to an account are not charged until migrated.
The bearer token is missing, unknown, revoked or expired.
The account behind the key has fewer than one point left. 1 call = 1 point = 1 cent. New accounts get 10 free points and +2 every month you sign in. Existing keys not attached to an account are not charged until migrated.
{
"error": {
"code": "insufficient_balance",
"balance": 0,
"top_up_url": "https://fdb4.io/account/balance",
"monthly_grant": 2
}
}
Over the per-minute limit. The response carries a Retry-After header; a throttled request costs no points.