UFC API: List events
Lists upcoming or past UFC events with fight cards, venue, start time and completed bout results, or returns one event by name. Upcoming events come soonest first and past events newest first.
Unofficial. Not affiliated with or endorsed by UFC.
Inputs
Values from the run on Oct 23, 2026, shown under Output.
- Show optional
show Which events to list, for example past.
upcoming
One of
upcoming,past. Defaultupcoming.- Event optional
event Event name to return a single event, for example UFC 300.
Not set
- Max Results optional
max_results Maximum number of events to return, for example 5.
5
Whole number from 1 to 20. Default
5.
Input as JSON
{ "show": "upcoming", "max_results": 5}Output
{ "events": [ { "city": "Yas Island/Yas West" , "bouts": [ { "time": null, "round": null, "method": null, "winner": null, "card_section": "main card", "weight_class": "Featherweight Title Bout", "red_corner_fighter": "Alexander Volkanovski", "blue_corner_fighter": "Movsar Evloev" }, { "time": null, "round": null, "method": null, "winner": null, "card_section": "main card", "weight_class": "Bantamweight Title Bout", "red_corner_fighter": "Petr Yan", "blue_corner_fighter": "Merab Dvalishvili" }, { "time": null, "round": null, "method": null, "winner": null, "card_section": "main card", "weight_class": "Flyweight Bout", "red_corner_fighter": "Lone’er Kavanagh", "blue_corner_fighter": "Ramazan Temirov" } ], "venue": "Etihad Arena", "country": "United Arab Emirates", "date_time": "2026-10-24T18:00:00+00:00", "event_link": "https://www.ufc.com/event/ufc-333" , "event_name": "UFC 333: Volkanovski vs Evloev" }, { "city": "Las Vegas", "bouts": [ { "time": null, "round": null, "method": null, "winner": null, "card_section": "main card", "weight_class": "Lightweight Bout", "red_corner_fighter": "Renato Moicano", "blue_corner_fighter": "Tom Nolan" }, { "time": null, "round": null, "method": null, "winner": null, "card_section": "main card", "weight_class": "Welterweight Bout", "red_corner_fighter": "Randy Brown", "blue_corner_fighter": "Carlos Leal" }, { "time": null, "round": null, "method": null, "winner": null, "card_section": "main card", "weight_class": "Women's Bantamweight Bout", "red_corner_fighter": "Yana Santos", "blue_corner_fighter": "Luana Santos" } ], "venue": "Meta APEX", "country": "United States", "date_time": "2026-11-01T00:00:00+00:00", "event_link": "https://www.ufc.com/event/ufc-fight-night-october-31-2026" , "event_name": "UFC Fight Night: Moicano vs Nolan" }, { "city": "Las Vegas", "bouts": [ { "time": null, "round": null, "method": null, "winner": null, "card_section": "main card", "weight_class": "Welterweight Bout", "red_corner_fighter": "Gabriel Bonfim", "blue_corner_fighter": "Sean Brady" }, { "time": null, "round": null, "method": null, "winner": null, "card_section": "main card", "weight_class": "Women's Strawweight Bout", "red_corner_fighter": "Tatiana Suarez", "blue_corner_fighter": "Virna Jandiroba" }, { "time": null, "round": null, "method": null, "winner": null, "card_section": "main card", "weight_class": "Bantamweight Bout", "red_corner_fighter": "Davey Grant", "blue_corner_fighter": "Elijah Smith" } ], "venue": "Meta APEX", "country": "United States", "date_time": "2026-11-08T01:00:00+00:00", "event_link": "https://www.ufc.com/event/ufc-fight-night-november-07-2026" , "event_name": "UFC Fight Night | Bonfim vs Brady" } ]}Code
curl https://api.fous.com/v1/runs \ -H "Authorization: Bearer $FOUS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"ufc.com/list_events","input":{"show":"upcoming","max_results":5}}' # Save as fous.py, then run: python3 fous.pyimport json, os, timefrom urllib.error import HTTPErrorfrom urllib.request import Request, urlopenAPI = "https://api.fous.com/v1/runs" KEY = os.environ["FOUS_API_KEY"]HEADERS = { "Authorization": f"Bearer {KEY}", "Content-Type": "application/json" ,}def call(url, body=None): data = json.dumps(body).encode() if body else None request = Request(url, data, HEADERS) try: with urlopen(request, timeout=120) as r: return r.status, json.load(r) except HTTPError as error: message = json.load(error)["error"]["message"] raise RuntimeError(message) from errorstatus, run = call(API, { "method": "ufc.com/list_events" , "input": { "show": "upcoming", "max_results": 5 }})# 202: still going after 30 s. Ask again until it ends.while status == 202: time.sleep(2) status, run = call(f"{API}/{run['id']}")print(json.dumps(run["data"], indent=2))// Save as fous.mjs, then run: node fous.mjsconst api = "https://api.fous.com/v1/runs" ;const headers = { Authorization: `Bearer ${process.env.FOUS_API_KEY}`, "Content-Type": "application/json" ,};let response = await fetch(api, { method: "POST", headers, body: JSON.stringify({ "method": "ufc.com/list_events" , "input": { "show": "upcoming", "max_results": 5 } }), signal: AbortSignal.timeout(120_000),});let run = await response.json();// 202: still going after 30 s. Ask again until it ends.while (response.status === 202) { await new Promise((done) => setTimeout(done, 2_000)); response = await fetch(`${api}/${run.id}`, { headers }); run = await response.json();}if (!response.ok) throw new Error(run.error.message);console.log(run.data);# Connect your agent to Fous once, over MCP (Streamable HTTP):# https://api.fous.com/mcp# Set FOUS_API_KEY first: create a key at https://app.fous.com/keys.# Claude Codeclaude mcp add \ --scope user \ --transport http fous https://api.fous.com/mcp \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Codexcodex mcp add fous \ --url https://api.fous.com/mcp \ --bearer-token-env-var FOUS_API_KEY# Cursor, VS Code, Windsurf, Cline and morenpx -y add-mcp https://api.fous.com/mcp -g -n fous \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Then ask your agent:# "Use Fous to run ufc.com/list_events# with {"show":"upcoming","max_results":5}"Over HTTP, the answer’s data holds the output. A run still going after 30 seconds answers 202 with its id: ask GET /v1/runs/{id} until it ends.
Schema
Input schema
{ "type": "object", "properties": { "show": { "enum": [ "upcoming", "past" ], "type": "string", "default": "upcoming", "description": "Which events to list, for example past." }, "event": { "type": "string", "description": "Event name to return a single event, for example UFC 300." }, "max_results": { "type": "integer", "default": 5, "maximum": 20, "minimum": 1, "description": "Maximum number of events to return, for example 5." } }}Output schema
{ "type": "object", "required": [ "events" ], "properties": { "events": { "type": "array", "items": { "type": "object", "required": [ "event_name", "date_time", "event_link", "bouts" ], "properties": { "city": { "type": [ "string", "null" ] }, "bouts": { "type": "array", "items": { "type": "object", "properties": { "time": { "type": [ "string", "null" ] }, "round": { "type": [ "integer", "null" ] }, "method": { "type": [ "string", "null" ] }, "winner": { "type": [ "string", "null" ] }, "card_section": { "type": [ "string", "null" ] }, "weight_class": { "type": [ "string", "null" ] }, "red_corner_fighter": { "type": [ "string", "null" ] }, "blue_corner_fighter": { "type": [ "string", "null" ] } } } }, "venue": { "type": [ "string", "null" ] }, "country": { "type": [ "string", "null" ] }, "date_time": { "type": "string" }, "event_link": { "type": "string" }, "event_name": { "type": "string" } } } } }}- Price
- 1 credit per completed run (1¢ with pay as you go); failed runs are free.
- Method
ufc.com/list_events- Returns
- event name, date/time, venue, city, country, link, bouts with results
Use it from your agent
Give your agent this line. It reads SKILL.md, gets a Fous API key and connects the Fous MCP server. Its run then takes the method ufc.com/list_events with the inputs above.
Ask your agent
- What UFC fights are coming up next, and where are they being held?
- Show me the results of the last few UFC events, newest first.
- Can you pull up the full fight card for UFC 300 including the winners?
- List the next 8 upcoming mixed martial arts events with their venues and start times.
- Find past UFC cards from ufc.com that were held in Las Vegas and give the bout outcomes.
See more
All UFC methodsFinds a UFC fighter by name or nickname and returns their profile: record, ranking, physical details, win methods and fight statistics. Missing profile values are null.
ufc.com/get_fighterFinds public Eventbrite events in a city or online, with optional keywords, date range, category and free-only filtering, ordered by start time.
eventbrite.com/search_eventsFinds upcoming Ticketmaster-listed concerts, sports, theater and other events by keyword, optionally by city, country, category and date range, with dates, venues, prices when shown and links. Partner-only listings without a Ticketmaster link are excluded; very large searches cover only the first 800 listings.
ticketmaster.com/search_eventsFinds upcoming public Meetup events by topic and city, sorted by start time. Only events that mention the topic are included; external costs and undisclosed venues may not be shown.
meetup.com/search_eventsGets UEFA club competition matches in a date range, with kick-off times in a chosen time zone, scores, stages and venues. You can limit the list to one club.
uefa.com/get_competition_matchesGets the latest or a dated public parkrun event result, with finishers in position order. If a name matches several events, the closest directory name match is used.
parkrun.com/get_event_resultsGets an artist's upcoming concerts and tour dates on Songkick, optionally filtered by country, with ticket links and start times when listed.
songkick.com/get_artist_tour_datesGets Premier League fixtures and results in a date range, with kickoff times in your chosen time zone. Returns up to 380 matches.
premierleague.com/get_fixtures_and_results