Live coverage of Underdog Fantasy via the ParlayAPI moneyline / spread / total / player-prop aggregator. Classification: DFS pick-em (single price, no two-sided market). Source key: underdog.
player_pass_tds 28,481 rowsplayer_receptions 25,434 rowsplayer_rush___rec_tds 2,575 rowsplayer_rec_yds 2,103 rowsplayer_first_td 1,491 rowsplayer_longest_rec 1,042 rowsplayer_1h_receiving_tds 761 rowsplayer_1h_rush_tds 646 rowsplayer_longest_rush 551 rowsplayer_rush_yards 548 rowsplayer_1q_rush_tds 371 rowsplayer_1q_receiving_tds 364 rowsplayer_1h_rush_yards 356 rowsplayer_rush_attempts 354 rowsplayer_pass_yards 306 rowsplayer_receptions 60,448 rowsplayer_pass_tds 27,166 rowsplayer_rush___rec_tds 2,653 rowsplayer_1h_rush___rec_tds 2,535 rowsplayer_first_td 1,720 rowsplayer_1q_rush___rec_tds 1,698 rowsplayer_defensive_ints 1,479 rowsplayer_longest_rec 1,431 rowsplayer_1h_rec_yards 1,416 rowsplayer_1q_rec_yards 1,312 rowsplayer_rec_yds 1,215 rowsplayer_points 1,143 rowsplayer_assists 1,119 rowsplayer_fumbles_lost 998 rowsplayer_sacks 929 rowsplayer_targets 921 rowsplayer_25__rec_yards_in_each_half 646 rowsplayer_longest_rush 616 rowsplayer_1h_rush_yards 597 rowsplayer_rush_attempts 578 rowsplayer_hits 592 rowsplayer_runs 553 rowsplayer_home_runs 542 rowsplayer_hits_runs_rbis 538 rowsplayer_rbis 534 rowsplayer_total_bases 505 rowsplayer_batter_walks 452 rowsplayer_kills_on_maps_1_2 1,326 rowsplayer_shots_on_goal 1,180 rowsplayer_rec_yds 510 rowsplayer_season_receiving_tds 474 rowsplayer_goals 312 rowsplayer_goals 84,097 rowsplayer_goals_assists 2,210 rowsplayer_assists 1,911 rowsplayer_shots_on_target 1,181 rowsplayer_shots_on_goal 787 rowsplayer_1st_set_games_won 635 rowsplayer_sets_won 386 rowscurl -s 'https://parlay-api.com/v1/sports/baseball_mlb/odds?regions=us&markets=h2h&bookmakers=underdog' \
-H "X-API-Key: $PARLAY_API_KEY"
We poll Underdog Fantasy on the Daily fantasy / pick-em and sweepstakes freshness tier, which means we expect a new observation within 60s under healthy operation. Observations between 60s and 300s are flagged "degraded". Between 300s and 1800s we mark "breach" and page an operator. Beyond 1800s the source is "stale" and we typically pause comparisons against it until it recovers.
These thresholds are measured on the book as a whole: they say how long we can go without any new price from Underdog Fantasy, and not how old the price on one particular game is. A source that walks its slate one event at a time refreshes any single market less often than the tier above. Measured on production 2026-07-31, Fliff wrote a price every 5.3s at the median book-wide while its median WNBA game went 169s between writes, both healthy. For the age of a specific price, read the last_update field on that row rather than this tier.
Full per-book threshold table at /v1/meta/per-book-sla. Live operator dashboard at /uptime. Historical hourly observation rate at /v1/historical/source-quality.csv?source=underdog.
← All sportsbooks · Cross-book coverage matrix · Operator uptime · Machine-readable parser coverage