Pay-per-call football/soccer data API (leagues, matches, teams, standings) via x402 micropayments.
What it does
Goal402 is a pay-per-call football (soccer) data API that uses the x402 protocol for micropayments. It provides structured data on leagues, matches, teams, players, standings, predictions, and head-to-head records. The specific endpoint `/leagues/hc/matches` returns match data for the league identified by the code "hc", with support for filtering by status (live, finished, upcoming), pagination via limit/offset parameters, and a maximum of 100 results per call.
Pricing is $0.001 per call for most league-level and match-listing endpoints, and $0.01 for detailed team or individual match endpoints. Payments settle on Base (EIP-155:8453) or Solana, facilitated through x402.dexter.cash. The API covers a wide range of football data: league standings with full table breakdowns, team rosters including staff, detailed match events (goals, cards, substitutions, VAR decisions), match statistics, confirmed/unconfirmed lineups with pitch coordinates, predictions with odds, and head-to-head records.
The API is structured as a RESTful service hosted on Cloudflare Workers. Free endpoints include health checks, league listing, and an LLM-readable documentation endpoint at `/llms.txt`. All paid endpoints return JSON with well-documented response schemas. The x402 challenge was confirmed live during probing, and the root endpoint returns a comprehensive API manifest with full endpoint documentation, pricing, and response structures.
Capabilities
Use cases
- —Building a football dashboard that fetches live scores and match details on demand
- —AI agents retrieving real-time match data or standings for sports analysis
- —Chatbots answering user questions about upcoming matches, team rosters, or head-to-head records
- —Automated sports betting analysis using predictions and odds endpoints
- —Aggregating league standings and match results for content generation
Fit
Best for
- —Developers needing granular pay-per-call football data without subscriptions
- —AI agents that need structured soccer match and league data
- —Applications requiring live match scores and detailed event timelines
- —Projects on Base or Solana that want native crypto-settled sports data
Not for
- —Bulk historical data downloads (max 100 results per call, no bulk export)
- —Non-football sports data
- —Users who need free unlimited access without micropayments
Quick start
curl -X GET "https://goal402-x402.percha.workers.dev/leagues/hc/matches?status=upcoming&limit=10" \
-H "X-Payment: <x402_payment_token>"Example
Response
{
"matches": [
{
"id": "abc123",
"round": "Round 18",
"status": "finished",
"winner": "home",
"stadium": "National Stadium",
"away_team": {
"id": "t2",
"name": "Team B",
"short_name": "TMB"
},
"home_team": {
"id": "t1",
"name": "Team A",
"short_name": "TMA"
},
"away_score": 1,
"home_score": 2,
"start_time_utc": "2025-01-15T19:00:00Z"
}
],
"league_id": "hc"
}Endpoint
Quality
The root endpoint provides a comprehensive API manifest with full endpoint documentation, pricing, response schemas, wallet addresses, and network details. The x402 challenge is confirmed live. No formal OpenAPI spec or dedicated docs page exists, and the specific league code 'hc' is not documented, so some inference is needed.
Warnings
- —No formal OpenAPI specification available; schema is inferred from the root manifest JSON
- —The league code 'hc' is not explicitly documented in the league list — its identity is unknown
- —No /docs, /api, /pricing, or /README pages exist (all return 404)
Citations
- —Goal402 is a pay-per-call football data API powered by x402, version 1.1.0, facilitated by x402.dexter.cashhttps://goal402-x402.percha.workers.dev
- —GET /leagues/:id/matches costs $0.001 per call and supports status, limit, and offset parametershttps://goal402-x402.percha.workers.dev
- —Payments settle on Base (eip155:8453) to wallet 0x22A2e19BDBe9f3FfEf652FcbC3cdD0F67147Ef38 or Solana to FpsvkK2xpyhy759V5vXRQP4cjDmU9SdmdpSjNkYv5WJYhttps://goal402-x402.percha.workers.dev
- —Response schema for league matches includes match id, home/away team objects, scores, status, winner, start_time_utc, round, and stadiumhttps://goal402-x402.percha.workers.dev
- —x402 challenge returned HTTP 402 confirming the endpoint is livehttps://goal402-x402.percha.workers.dev/leagues/hc/matches