API key Sign in, or get an instant trial key — no signup required.

NCAAF

NCAAF API for Scores, Schedules, Odds & AI Agents

One event graph for college football — kickoff schedules, quarter-aware live scores, nine-book moneyline/spread/totals, Stage-1 raw team stats, and probability / Price intelligence agents can reason over — without scraping a board.

Available data

Everything below filters on the stable slug sport=ncaaf (league ncaaf). Discover seasons with GET /v1/seasons?sport=ncaaf and teams with GET /v1/teams?sport=ncaaf.

LayerEndpointNCAAF notes
Schedule / boardGET /v1/eventssport=ncaaf; status, date, include_odds / include_scores
Live scoreGET /v1/events/{id}/score · SSEPeriods 1–4 / OT; clock when available
OddsGET …/odds · …/odds/historyTwo-way h2h, spreads, totals · 17 books
Player propsGET …/player-propsSettleable yards / TD / receptions mains + live box progress
Team totalsGET …/team-propsEach team's full-game points Over/Under + this-event score
Period oddsGET …/period-oddsFirst-half spreads/totals (Q1+Q2)
SplitsGET …/splitsPre-game ticket% vs handle% (in-season)
IntelligenceGET …/intelligenceSeasonal probability / Price; forecasts[]
ForecastsGET /v1/intelligence/forecastsDaily board of forecasted prop wagers. MCP list_forecasts
Raw statsGET …/statsStage-1 team context (record, form, H2H, rest, offense/defense rates)

Schedules

List the slate with GET /v1/events?sport=ncaaf. Narrow by status (scheduled / inprogress / final), date or from/to (max 90 days per request), and paginate with after_id / limit.

Collapse round trips with include_odds=true or include_scores=true on the list or on GET /v1/events/{id}. Historical lookbacks work year-round; live intelligence is seasonal.

Scores

NCAAF score payloads use football period labels — "1"–"4" and "OT" — plus a game clock when the feed has it (e.g. "8:42").

  • GET /v1/events?sport=ncaaf&status=inprogress&include_scores=true — Saturday board
  • GET /v1/events/{id}/score — lightweight poll (~15s cache while live)
  • GET /v1/events/{id}/stream — SSE event: score or signed webhooks

Cloneable pattern: live scoreboard use case (keep keys server-side).

Odds

NCAAF markets are two-way: moneyline (h2h), point spreads, and game totals. American odds integers; point is null on moneyline sides. Default single-book call is Pinnacle; bookmaker=all is the same 1 credit.

GET /v1/events/{id}/odds/history returns recorded price/point moves between ingest cycles — useful for steam and open→current deltas on college sides and totals. Game markets only — player props are a separate endpoint below.

Full bookmaker list and normalization notes: Sports Odds API.

Player props

GET /v1/events/{id}/player-props (1 credit when lines exist; available:false is free) joins persisted player-prop mains to this-event player box counts and grades over / under / push once the game is final. Same football catalog as NFL.

Market keys and which ones grade: player props catalog. Endpoint fields: API reference.

Intelligence

NCAAF uses the predictive intelligence surface — vig-stripped probability + Price overlay. Bet tokens: ML_P1 / ML_P2 (home/away), SPREAD_P1 / SPREAD_P2, OVER / UNDER.

Returned per bet: probability, interval, fair_price, market, fair (Pinnacle+Circa when both quote), edges_by_book, best, main-line ev (Beta). Today edge / tier are null and has_recommend is false — vig-stripped fair + line-shopping. best.edge is a line-shopping price gap vs sharp consensus.

Public splits are available on NCAAF — pair intelligence with /odds, /splits, and Stage-1 /stats on the same event ID. Always check available before reading bets — offseason and unpriced fixtures return free empty payloads.

Raw stats

GET /v1/events/{id}/stats returns Stage-1 NCAAF-native team context — same football catalog as NFL, scoped to ncaaf. Judgment stays on /intelligence. Check available. Fields: API reference — stats.

Sportsbooks

Odds keys: pinnacle, fanduel, draftkings, betmgm, caesars, bet365, circa, westgate, wynn, south_point, stations, hardrock, betonline, betr, betrivers, lowvig, bovada. Availability varies by event — check each bookmaker entry.

Examples

Upcoming NCAAF games with odds inlined:

curl
curl "https://lumify.ai/v1/events?sport=ncaaf&status=scheduled&include_odds=true&limit=5" \
  -H "Authorization: Bearer YOUR_API_KEY"
Python
from lumify import Lumify

client = Lumify(api_key="YOUR_API_KEY")
page = client.events.list(
    sport="ncaaf",
    status="scheduled",
    include_odds=True,
    limit=5,
)
for event in page["events"]:
    print(event["id"], event["name"], event.get("odds"))
TypeScript
import { Lumify } from "@lumifyai/sdk";

const client = new Lumify({ apiKey: "YOUR_API_KEY" });
const { events } = await client.events.list({
  sport: "ncaaf",
  status: "scheduled",
  includeOdds: true,
  limit: 5,
});
events.forEach(e => console.log(e.id, e.name, e.odds));

Intelligence for a kickoff (1 credit when available):

curl
curl "https://lumify.ai/v1/events/5102/intelligence" \
  -H "Authorization: Bearer YOUR_API_KEY"
Python
intel = client.events.intelligence(5102)
if intel.get("available"):
    for bet in intel.get("bets") or []:
        print(bet.get("bet_type"), bet.get("probability"), bet.get("fair_price"))
TypeScript
const intel = await client.events.intelligence(5102);
if (intel.available) {
  for (const bet of intel.bets ?? []) {
    console.log(bet.bet_type, bet.probability, bet.fair_price);
  }
}

Sample odds shape (abridged NCAAF event):

json
{
  "event_id": 5102,
  "available": true,
  "bookmakers": [
    {
      "bookmaker": "pinnacle",
      "markets": [
        {
          "key": "spreads",
          "label": "spread",
          "outcomes": [
            { "outcome": "Georgia Bulldogs", "price": -110, "point": -7.5 },
            { "outcome": "Alabama Crimson Tide", "price": -110, "point": 7.5 }
          ]
        }
      ],
      "captured_at": "2026-10-11T16:02:00Z"
    }
  ]
}

Freshness

FeedCadenceFit
Live scores~1 minute (+ SSE/webhooks)Scoreboards, in-game agents
Odds ingest~10 minutes (2-min response cache)Research, line shop, alerts — not HFT
StatsScheduled box ingestPersist-then-read Stage-1 team context
IntelligenceAfter predictive publish (~30 min; in-season)available: false offseason / unpriced

Pricing

CallCredits
Most successful GETs (events, score, intelligence, stats, …)1
Multi-book odds (bookmaker=all or a list)1
available: false / errors0

Free Tier: 1,000 credits that never expire. Instant trial: 100 credits / 14 days, no signup. Details: /pricing.

For agents: machine-readable twin at /sports/ncaaf-api.md. MCP tools: list_events, get_odds, get_stats, get_intelligence, list_ev, list_forecasts — setup at /sports-mcp-server.

FAQ

What does the NCAAF API include?

Filter with sport=ncaaf (league slug ncaaf) for schedules, live scores (quarters + clock), teams/players, multi-book moneyline/spread/totals, settleable player props, team totals, first-half period odds, public betting splits, Stage-1 raw /stats, and seasonal bet intelligence (probability / Price). Same event IDs across every layer.

Is NCAAF intelligence available in the offseason?

Analysis jobs self-skip when there is no slate — expect available: false on /intelligence outside the college football season. Schedules, historical events (90-day lookback per request), Stage-1 /stats, and odds history still work when data has been ingested.

Do you support NCAAF player props or fantasy box scores?

Yes — the same football catalog as NFL on GET /player-props (passing/rushing/receiving yards and TDs, receptions, anytime TD). GET /odds stays moneyline/spread/totals. Raw /stats is Stage-1 team context (record, form, H2H, rest, offense/defense rates — football-native, scoped so college rates never mix with NFL). Market keys: /docs/player-props.

Are NCAAF betting splits available?

Yes. Public ticket%/handle% splits cover MLB/NBA/NHL/NFL/NCAAF/NCAAB. Always check available — empty slates return a free available:false.

How is NCAAF different from NFL in the API?

Use sport=ncaaf vs sport=nfl. Both expose schedules, scores, odds, player props, team totals, first-half period odds, public splits, Stage-1 football-native /stats, and the same probability / Price intelligence shape with P1/P2 bet tokens. NFL landing: /sports/nfl-api.

Start with the NCAAF API

Create a free key — or use an instant trial key with no signup — and list this week’s college football slate in under a minute.