Supported MLB evidence, piped straight into your stack.
Structured access to Posterior’s supported probabilities, immutable decisions, market states, public evidence and player context. The public OpenAPI operation documents ten bearer-protected production operations. Active keys default to 100 requests per minute, with stable JSON contracts across the v1 lifecycle. Public proof remains available separately through the delayed ledger and accuracy record.
Inspect the contract before a key exists.
Inspect the public schema and delayed evidence before a key exists, then compare them with representative bearer-protected request shapes. Production endpoints require active Pro plus the Builder add-on.
/api/v1/openapi.jsonPublic OpenAPI 3.1 contract for the complete v1 operation catalog.
No key is required for the OpenAPI schema or delayed public CSV. Production v1 operations use POSTERIOR_KEY; API keys are one-time reveal secrets, so store them in an environment variable.
GET /api/v1/openapi.json
Accept: application/json{
"openapi": "3.1.0",
"info": { "title": "Posterior API", "version": "v1" },
"paths": { "/api/v1/picks/today": { "get": { ... } } }
}USD per month · base subscription
USD per month · step 2 add-on
USD per month · before applicable tax
Builder is two explicit subscriptions: activate Pro first, then return automatically to approve the +$99 USD/month API add-on. Combined list price: $128 USD/month before applicable tax.
/api/v1/picks/todayTonight's STRONG/LEAN slate + v0 NRFI + pitcher-K predictions, with signal breakdown.
/api/v1/player/{id}Player memory: current posterior, true-talent trajectory, recent prediction ledger, and survival diagnostics.
/api/v1/accuracyLive Brier score, win-rate by tier, model EV at close. Same numbers the public dashboard renders.
/api/v1/calibrationCalibration buckets — predicted-vs-actual rates per probability bin. Plot it however you want.
The public OpenAPI 3.1 contract at /api/v1/openapi.json is the complete operation catalog. The examples above are four representative bearer-protected endpoints, not the entire API.
Issue a key at /mlb/account, then pipe the secret into a Bearer header. The same request, three idioms:
$ curl -H "Authorization: Bearer $POSTERIOR_KEY" \ https://posterior.pro/api/v1/picks/todayconst res = await fetch(
"https://posterior.pro/api/v1/picks/today",
{ headers: { Authorization: `Bearer ${process.env.POSTERIOR_KEY}` } }
);
const { picks, ext_markets } = await res.json();
for (const pick of picks) {
console.log(
pick.decision.action,
pick.decision.fair_price.label,
pick.decision.best_line.label
);
}import os, httpx
r = httpx.get(
"https://posterior.pro/api/v1/picks/today",
headers={"Authorization": f"Bearer {os.environ['POSTERIOR_KEY']}"},
)
slate = r.json()Response shape (truncated):
{
"api_version": "v1",
"generated_at": "2026-05-26T17:42:11.103Z",
"game_date_et": "2026-05-26",
"picks": [
{
"prediction_id": "pred_01HXJ6V…",
"batter_name": "Aaron Judge",
"team_name": "New York Yankees",
"market": "1plus_hits",
"p_predicted": 0.7124,
"sharp_consensus_prob": 0.6680,
"sharp_book_american_odds": -110,
"sharp_source_book": "FanDuel",
"tier": "STRONG",
"signals": {
"park_adj": 1.04,
"pitcher_adj": 0.96,
"lineup_confirmed": true,
"form_adj": 1.06,
"weather_adj": 0.98
},
"decision": {
"action": "BET",
"is_actionable": true,
"reason": "Qualified edge with a captured playable line.",
"fair_price": { "american_odds": -248, "label": "-248 fair" },
"best_line": {
"bookmaker": "FanDuel",
"american_odds": -110,
"label": "FanDuel -110",
"captured": true
},
"market_trust": {
"label": "Core",
"note": "Highest-trust season-ledger family."
},
"context": {
"badges": ["Lineup confirmed", "Recent form +6%"],
"lineup_confirmed": true,
"form_adj": 1.06,
"weather_adj": 0.98,
"game_state": "PRE"
},
"proof": [
"Model 71.2%",
"Sharp 66.8%",
"Edge +4.4pp",
"STRONG tier"
]
}
}
],
"ext_markets": { "moneylines": [ ... ], "nrfi": [ ... ], "strikeouts": [ ... ] }
}Wire Posterior into an agent, Discord bot, notebook, or internal dashboard with ordinary HTTPS fetches. Your tool asks what Posterior says about tonight's slate; the API returns model probabilities with the calibration receipt attached.
Builder exposes supported, versioned machine contracts rather than promising that every website field exists in every endpoint. Responses preserve the same evidence and uncertainty boundaries used by the product; coverage is defined by the published OpenAPI schema.
Public OpenAPI, the delayed resolved CSV, and the public record can be inspected without a Builder key. Production operations require active Pro plus the Builder add-on; standard activation does not require a manual application. The current contract also includes bearer-protected, non-actionable win-probability JSON and SVG-card widget operations. The calibration receipt at /mlb/accuracy is the load-bearing public claim on both sides. Subscriber and API exports may not be resold, scraped, mirrored, or bulk-republished without written permission; see the terms.
Optional changelog list — one email per major endpoint release. Not required to subscribe; the existing API works today without it.