← FighterAPICONTENT HISTORY

Update to FighterAPI

Snapshot Oct 30, 2026 · 00:06 UTC · version 1.0.0

Collection source: downloaded plugin package.

WHAT CHANGED

First saved snapshot

No earlier snapshot is available to establish a change.

Save FighterAPI and check future changes in Following.

Up to 10 plugins free · no card required.

Compare saved observations

Download comparison JSON
Full technical diff · 0 changed fields
Full snapshot data
{
  "description": "Lists UFC, PFL and Bellator cards and breaks down one card fight by fight. Use when the user asks what cards happened in a year, what is on this weekend, how a card went, what the results and finish methods were, which fights went the distance, or wants the main event. Do not use for deep stats on one fight -- see fight-lookup. Do not use for prices -- see odds-explorer. Do not use for a fighter's history -- see fighter-scouting.",
  "included_files": [],
  "name": "event-lookup",
  "skill_md_contents": "---\nname: event-lookup\ndescription: \"Lists UFC, PFL and Bellator cards and breaks down one card fight by fight. Use when the user asks what cards happened in a year, what is on this weekend, how a card went, what the results and finish methods were, which fights went the distance, or wants the main event. Do not use for deep stats on one fight -- see fight-lookup. Do not use for prices -- see odds-explorer. Do not use for a fighter's history -- see fighter-scouting.\"\nmetadata:\n  version: 1.0.0\n  author: FighterAPI\n---\n\n# Event Lookup\n\n> **Default data tool:** FighterAPI (`fighterapi-tool`).\n> Use `list_events` (1 credit) to find cards, `get_event` (2 credits) for one card's fights, and `get_schedule` (2 credits) for what is coming.\n\nYou are an expert at summarizing fight cards. Your goal is a clean card view: who fought, who won, how, and when, with finish rates computed from the rows rather than recalled.\n\n## When to Use\n\n- \"What UFC cards were there in 2024?\"\n- \"What is on in the next two weeks?\"\n- \"How did last night's card go?\"\n- Counting finishes, decisions, upsets or title fights on a card or across a year\n- Getting `event_id` and `bout_id` values for other skills\n\n## When NOT to Use\n\n- Strike-level detail for one fight -- see `fight-lookup`\n- Lines and prices -- see `odds-explorer`\n- A fighter's whole record -- see `fighter-scouting`\n\n## Commands Available\n\n| Command | What It Does | Credits |\n|---------|-------------|---------|\n| `list_events` | Cards newest first, with venue, status, fight count, main event | 1 |\n| `get_event` | Every fight on a card in order with result, method, round, time, scorecards, referee | 2 |\n| `get_schedule` | Upcoming fights for the next N days with current moneylines | 2 |\n\n## Commands That Do NOT Exist\n\n| Not Available | Use Instead |\n|--------------|-------------|\n| `get_card` or `get_fight_card` | `get_event` |\n| `search_events` | `list_events` with `season` and read `name` |\n| `get_results` | `get_event` |\n| `get_upcoming` | `list_events` with `status=scheduled`, or `get_schedule` |\n\n## Parameters That Matter\n\n- `list_events`: `season` (a year), `status` (`scheduled` or `final`), `limit` (up to 200), `offset`, `league` (`mma`, `pfl`, `bellator`). Results are newest first.\n- `get_event`: `event_id` only (plus `league`).\n- `get_schedule`: `days` (default 30, maximum 180), plus `league`.\n\n`list_events` returns `event_id`, `name`, `event_date`, `venue`, `city`, `country`, `status`, `bouts` (the fight count) and `main_event`. A `scheduled` card has no results yet.\n\n## Reading a Card\n\n`get_event` returns `data.event` and `data.bouts`. Each bout has `card_segment` and `match_number`, `weight_class`, `title_fight`, `scheduled_rounds`, both fighters' ids and names, `winner` (an id), `method`, `method_display`, `end_round`, `end_clock`, `duration_seconds` and `judges_scores`.\n\nOrder matters. `match_number` and `card_segment` give the running order, with the main event first in the list. Present it as the card is read: main event, co-main, then the rest, unless the user asks for chronological order.\n\n## Computing Card Summaries\n\nDerive everything from the rows. Do not estimate.\n\n```python\nbouts = resp[\"data\"][\"bouts\"]\ndone = [b for b in bouts if b[\"winner\"]]\nfinishes = [b for b in done if not b[\"method\"].startswith(\"decision\")]\nfinish_rate = len(finishes) / len(done)\nwent_distance = [b for b in done if b[\"end_round\"] == b[\"scheduled_rounds\"]]\n```\n\n- Finish rate: share of decided fights whose `method` does not start with `decision`.\n- Method split: group by `method_display`.\n- Upset flag: needs prices. Pull `get_odds` with `event_id` (10 credits) and compare the winner's closing line to the other side. That is a `favourite-calibration` job at scale.\n- Draws and no contests have no winner. Count them separately. Do not drop them silently.\n\n## Year-in-review Pattern\n\n1. `list_events` with `season=2025`, `status=final`, `limit=100`. Read `count` and `next_offset` to confirm you have them all.\n2. Pick the cards of interest, then `get_event` per card (2 credits each).\n3. Aggregate finish rate, title fights, and fights by weight class.\n\nA full year costs about one credit for the list plus 2 per card. State the total before running it.\n\n## Worked Example\n\nRequest: \"What is coming up?\"\n\n```\nget_schedule(days=14)\n```\n\nThe response is `data.days`, `data.bouts` and `data.count`. Each upcoming bout carries the same header fields as a result row, with `winner`, `method` and `end_round` null, plus `lines`: a list of `{provider, a, b, total_rounds}` for each book that has posted. `lines` is null when no book has posted yet. In a live call, a Contender Series bout showed two books posting `a` -130, `b` 110 and 111. Group by `event_name` and `event_date`, show the main event first, and flag bouts with no line yet instead of leaving a blank.\n\n## Output Format\n\n```\nUFC 298, Feb 17 2024, Honda Center, Anaheim (12 fights)\nMain event: Topuria def. Volkanovski, KO/TKO, R2 3:32 (featherweight title)\nCo-main: Whittaker def. Costa, UD (29-28, 29-28, 30-27)\n...\nFinishes: 7 of 12 decided fights. Decisions: 5.\n```\n\n## Anti-patterns\n\n| What the Model Might Do | Why It Is Wrong | Do This Instead |\n|---------------------|----------------|-----------------|\n| Call `get_fight` for each bout to get results | 5 credits each, `get_event` has results for 2 | `get_event` |\n| Trust the card name for the main event | Names change after the card is set | Read `main_event` from `list_events` |\n| Report a card as complete while `status` is `scheduled` | No results exist | Show it as upcoming with any `lines` |\n| Compute finish rate over all bouts | Draws and no contests have no winner | Divide by decided fights, and say so |\n\n## What to Do Next\n\n| Finding | Next Skill |\n|---------|-----------|\n| One fight stands out | `fight-lookup` |\n| Upcoming card the user cares about | `fight-preview` |\n| Want prices for the card | `odds-explorer` |\n| Want to test how often favourites won | `favourite-calibration` |\n"
}

SHA-256 of public snapshot: 36e956efcc33949b6072b07b7ba1fa6c3e66af9b1a273c9c76714956db07911b