Product

Two Modules. One API. Pre-Game Analysis at Scale.

The Onyx Odds API provides structured probability scores and narrative talking points for every scheduled matchup. No data engineers required.

2 API Modules
4-6 Talking points per matchup
REST or Webhook delivery
Module 1

Prediction Engine

Probability distributions for game outcomes, player performance ranges, and key-moment flags. Data updates as lineups, injury reports, and conditions change in the days before kickoff.

  • Win probability scores with calibrated confidence bands
  • High-scoring game likelihood index
  • Upset risk flag with contributing factors
  • Player performance probability ranges
  • Data refreshed as game-week inputs arrive
Abstract data pipeline visualization for sports analytics
Module 2

Talking Points API

Structured narrative hooks keyed to each matchup. Returns 4-6 data-backed talking points with type tags, formatted for direct CMS insertion or editorial review before publication.

  • Type-tagged output: controversy, trend, upset-risk, historical-angle
  • JSON structure maps to most CMS field schemas
  • Source attribution included in each point
  • Editorial review flag for low-confidence outputs
  • Webhook push before each game window
talking-points-response.json
"talking_points": [
  {
    "type": "historical-angle",
    "text": "Eastern FC has won 7 of their last 8 home fixtures in this format",
    "confidence": 0.91
  },
  {
    "type": "upset-risk",
    "text": "Upset rate in this rivalry sits at 34% over 6 seasons",
    "confidence": 0.87
  },
  {
    "type": "trend",
    "text": "Defensive pressure index trending up 11% this month",
    "confidence": 0.83
  }
]
Data Pipeline

What Goes Into Every Prediction

The API ingests multiple input streams and processes them through a continuous scoring pipeline that updates as each input refreshes.

Historical Match Data

Season records, head-to-head history, venue performance, and form curves going back 3-6 seasons depending on sport and league tier.

Lineup and Injury Feeds

Availability data pulled from official feeds and cross-referenced with positional impact scoring to weight player absences correctly.

Recent Form Signals

Rolling performance windows at multiple intervals (L5, L10, L20) with exponential decay weighting to surface momentum patterns.

Conditions and Context

Venue, surface, travel distance, game importance flags, and scheduling density all factor into the final probability calculation.

Bring Your Own Data

Connect your existing data feeds via the input endpoint. Our pipeline processes external sources alongside our own base layers.

Continuous Updates

Scores recompute as inputs change. The API serves the latest version; you choose whether to pull on schedule or receive webhook pushes.

Model Performance

Accuracy Snapshot Across Sport Categories

Aggregated over early-access pilot data. Confidence intervals shown as +/- percentage points. Sample sizes are limited; we will publish updated figures as the data set grows.

Category Accuracy CI (+/-) Sample Trend
Domestic soccer 68% 4.2 pp n=312 +2.1%
Basketball leagues 71% 3.8 pp n=248 +1.4%
American football 66% 5.1 pp n=189 stable
Hockey 63% 6.2 pp n=104 stable
Rugby union 65% 5.7 pp n=87 +0.9%

Based on early-access pilot data. Past performance does not guarantee future accuracy.

Integrations

Connects to the Tools Your Team Already Uses

The API returns standard JSON. Most teams are up and running within a day using one of three common patterns: direct REST pull, scheduled webhook, or CMS plugin.

REST API - pull on any schedule from any environment
Webhooks - push to your endpoint before each game window
WordPress plugin - field mapping for common editorial schemas
Node.js and Python SDKs - reduce boilerplate to a few lines
OpenAPI spec - import to Postman, Insomnia, or your toolchain
Get Started

Read the Docs or Book a Demo

Full API reference, quickstart guide, and integration examples are available now. Or talk to the team and see it connected to your data.