+UFC API
UFC fighters, events, fight cards, fight stats and rankings as clean JSON.
The API.SH UFC API reads public ufc.com data. List and search athletes, pull a fighter's record, bio and career stats, browse upcoming and past events, read a full fight card with results, and get official stats for one fight, including strikes, takedowns and control time. Rankings cover every division and pound-for-pound.
- 6 endpoints
- from $1 / 1,000 calls
- 1,000 free credits / month
- failed calls free
GET https://api.api.sh/ufc/v1/ athlete
{ "success": true } What you can build with the UFC API
Fighter profiles and databases
Search athletes by name and pull record, division, bio, reach and career stats into your own database.
Event calendars and fight night apps
List upcoming events with main card and prelim start times, venue and city, then show the full card in order.
Fight stats and analytics
Read round-by-round significant strikes, takedowns, knockdowns and control time per fighter to model outcomes.
Rankings tracking
Track champions and ranked contenders in each division, with movement, to see who is climbing.
UFC data you get
Field names from real responses. Numbers come parsed, URLs absolute, dates in ISO 8601.
UFC API endpoints and prices
Every UFC endpoint costs 1 credit per call: credits are $1 per 1,000 on a monthly plan, $2 pay-as-you-go. Pricing
| UFC event fight card and results /ufc/ | $1 · $2 PAYG 1 credit |
| UFC events /ufc/ | $1 · $2 PAYG 1 credit |
| UFC athlete /ufc/ | $1 · $2 PAYG 1 credit |
| UFC athletes /ufc/ | $1 · $2 PAYG 1 credit |
| UFC fight stats /ufc/ | $1 · $2 PAYG 1 credit |
| UFC rankings /ufc/ | $1 · $2 PAYG 1 credit |
Call the UFC API
UFC athlete: GET https://api.api.sh/ufc/
curl "https://api.api.sh/ufc/v1/athlete?slug=islam-makhachev" \
-H "x-api-key: $APISH_KEY" import os, requests
res = requests.get(
"https://api.api.sh/ufc/v1/athlete",
params={"slug": "islam-makhachev"},
headers={"x-api-key": os.environ["APISH_KEY"]},
timeout=120,
)
res.raise_for_status()
data = res.json() const url = new URL("https://api.api.sh/ufc/v1/athlete");
url.searchParams.set("slug", "islam-makhachev");
const res = await fetch(url, { headers: { "x-api-key": process.env.APISH_KEY } });
if (!res.ok) throw new Error(`${res.status} ${await res.text()}`);
const data = await res.json(); # Google Sheets (API.SH add-on)
=APISH("/ufc/v1/athlete", "slug", "islam-makhachev")
# Zapier, Make, n8n (verified node): pick the API.SH app,
# choose "UFC" and "UFC athlete".
# AI agents (Claude, ChatGPT, Cursor): add the
# API.SH MCP server https://api.sh/mcp - Create a free accountConfirm your email and get 1,000 free credits every month. No card needed.
- Create an API keyOne key works for all 483 platforms.
- Send the requestJSON back in one call. Add
output=csvoroutput=ndjsonfor files.
Why API.SH for UFC data
- Public data only: no UFC login, cookies or account needed
- One key and one response shape for UFC and 482 other platforms
- Built and maintained by API.SH, not third-party publishers
- Pay per call; errors on our side cost nothing
- Live status for every endpoint
API.SH vs the official UFC API
The UFC does not offer a free public developer API; the SERP and AI overview point to paid feeds such as Sportradar and SportsDataIO and to third-party UFC APIs. API.SH reads the public ufc.com pages and returns them as JSON, with no odds or live websocket data.
Skip maintaining your own UFC scraper or choosing between Apify actors, RapidAPI listings and GitHub projects: API.SH gives you one key and a fixed price per call.
UFC API questions
What UFC data can I get?+
Athlete search (/ufc/v1/athletes), fighter profiles (/ufc/v1/athlete), upcoming and past events (/ufc/v1/events), full fight cards with results (/ufc/v1/event), per-fight stats (/ufc/v1/fight) and rankings (/ufc/v1/rankings).
How much does the UFC API cost?+
Every UFC endpoint costs 1 credit per call. On a monthly plan 1,000 credits cost $1 (Starter is $50/month for 50,000 credits). Pay-as-you-go is $2 per 1,000 credits, with top-ups from $15 that never expire.
Is there a free trial?+
Yes. Every account gets 1,000 free credits every month. That is 1,000 calls to /ufc/v1/athlete at 1 credit each.
Is there an official UFC API?+
Not a free public one. The UFC sells data through enterprise partners and third parties offer UFC APIs. API.SH returns what ufc.com shows publicly as JSON, and it does not include betting odds.
Do I need a UFC account or login?+
No. API.SH reads public UFC pages only. No endpoint uses a login, cookies or anyone's account.
Is there a free UFC API?+
Several open source and hobby projects exist, but coverage and uptime vary. API.SH is paid per call, with 1,000 free credits every month to try it.
Can I use it from Python?+
Yes. Call any route over HTTPS with your key from requests, or use the Python SDK. Search with /ufc/v1/athletes, then pass the slug to /ufc/v1/athlete.
How do I get started?+
1. Sign up at api.sh. 2. Copy your API key. 3. Call /ufc/v1/events with status=upcoming to get event slugs, then /ufc/v1/event with a slug. Request examples and every parameter are in the docs at https://api.sh/docs. You can also use the JS or Python SDK, Google Sheets, Zapier, Make, n8n or the MCP server at https://api.sh/mcp.