/ RECORD / API / v1
Public Record API.
Formal specification for the public pick ledger. Code examples in curl, Python, and JavaScript. No auth required. CORS open. CC BY 4.0. Versioned by URL path; future schema versions land at /record/export.v2.json.
Endpoints
Query parameters
ISO 8601 timestamp · default (none)
Filter to picks posted on or after this timestamp.
string (lowercase) · default (none)
Filter to a single sport key (nba, nfl, mlb, nhl, ncaaf, ncaab, wnba, mma, soccer, tennis).
integer 1 to 5000 · default 1000
Maximum rows returned. Capped at 5000.
curl
Python
JavaScript
Response shape
JSON response is an envelope with metadata fields plus a picks array. CSV response is a header row followed by data rows; same field set as the JSON pick objects, no envelope.
Error responses
The endpoint never returns 4xx or 5xx HTTP codes for filter or query issues. If the database is unreachable, the response sets db_reachable: false and returns an emptypicks array with all envelope fields populated. CSV equivalent emits a comment row after the header. This is intentional; downstream audit scripts should treat missing rows as an availability signal, not a failure code.
Cache + rate limits
Versioning policy
The endpoint and its schema are versioned by URL path. We will never make a breaking change to /record/export.json or /record/export.csv. Future schema versions land at /record/export.v2.json.
New columns will be appended at the end of the field list so existing scripts keep working. Existing column semantics never change. Existing rows are append-only and locked at post time by a Postgres trigger; we do not retroactively edit or delete settled picks.
Changelog
- Initial public release of /record/export.json and /record/export.csv
- Schema columns: id, sport, game, market, pick, odds_american, closing_odds_american, clv_bps, stake_units, result, posted_at, graded_at, permalink (CSV); + source on JSON
- Cache-Control public, s-maxage=900, stale-while-revalidate=3600
- CORS open (*); X-Robots-Tag noindex on the raw payload (page surface is indexable)
- Append-only contract enforced by Postgres trigger
21+. NuroPicks is entertainment and education, not financial advice. Past CLV does not predict future results. Questions about the API: partners@nuropicks.com.
Must be 21+. Gambling problem? Call 1-800-GAMBLER. NJ/PA: 1-800-GAMBLER · MI: 1-800-270-7117 · VA: 1-888-532-3500 · CO: 1-800-522-4700 · NY: 877-846-7369 (HOPENY).
NuroPicks LLC · 30 N Gould St Ste R, Sheridan, WY 82801