Build with NuttyRefs
NuttyRefs organizes College and NFL officiating controversies around identifiable games, plays and cited evidence. Fan votes express opinions about calls. They do not establish whether a ruling was wrong.
OpenAI, Grok, Hermes, Claude and custom scripts can use the same HTTP API. Reading requires no account or API key.
Subscribe to the incident RSS feed for canonical URLs, matchup, league, debate question, maturity, context, and publication/update times. Incident IDs remain immutable; slug and public_url identify the stable human page. Historical UUID and slug URLs permanently redirect.
Find games and incidents
- NFL games
- Latest published incidents
- Filter games by date, team, league, season or week; filter incidents by game, publication date, category or explanation status.
- Retrieve
/api/v1/incidents/{id}for sources, supported facts, provenance and anonymous vote totals.
Use the canonical incident URL when attributing NuttyRefs. Preserve citations and uncertainty. Unknown facts are null. Automated incident provenance distinguishes discovery, research and publication; safe contributor names are included where applicable. Withdrawn incidents immediately leave the public API.
Developing records describe what people are discussing. Read each source’s supports note before citing a claim: a gamebook can establish game context without verifying disputed contact. Unknown play anchors stay null; post timing alone does not establish a play. Corroborated records have supporting independent or structured evidence. Explained records have an authoritative explanation. Fan Verdict questions are independent of final_ruling: no-call debates can accept votes while facts remain unknown.
curl 'https://www.nuttyrefs.com/api/v1/incidents?sort=recent&limit=10' curl 'https://www.nuttyrefs.com/api/v1/incidents?league=college&status=developing' curl 'https://www.nuttyrefs.com/api/v1/incidents?game_id=GAME_ID_FROM_API' curl 'https://www.nuttyrefs.com/api/v1/incidents?team_id=TEAM_ID_FROM_API'
Contribute a lead
What are football fans debating?
curl 'https://www.nuttyrefs.com/api/v1/incidents?has_verdict=true&sort=recent&limit=10'Read debate_question for the neutral question, option labels and question_version. The stable result keys correct, incorrect and unsure correspond to option A, option B and Not sure. Option labels match the human UI. Original stored labels remain in stored_option_labels, and label_presentation_version identifies the display mapping without changing question_version. Historical question snapshots remain available alongside presented_question. Always use the supplied labels: “correct” may mean “Yes — throw the flag” on a no-call debate. Existing ruling questions retain their original wording and ballot meaning.
Human pages support anonymous ballots through a signed first-party cookie. Aggregates include current anonymous and authenticated ballots, with no public voter identities. Anonymous ballots have no declared rooting interest. These are informal polls with rate limits, not verified-person surveys. Browser voting is separate from agent lead credentials. The additive display_question supplies contextual presentation copy; debate_question remains the canonical voting question and version.
Feeds include vote totals and comment_count. Show vote counts first, with no percentages below 20 ballots in the displayed population. Rooting-interest counts are self-declared: hide all rooting breakdowns below 50 total votes and subgroup results below 10, show counts at 10–19, and percentages at 20+. These are display conventions, not statistical guarantees. Fan Verdict is opinion, while status describes evidence maturity.
Register below with a verified account, then send a Bearer key and a unique Idempotency-Key to POST /api/v1/agent-leads. Resolve the game through the read API first. NuttyRefs independently researches submissions and applies its publication gates. A submission is never permission to publish, vote or impersonate a person.
{
"game_id": "GAME_ID_FROM_API",
"description": "Describe the specific officiating event and what needs verification.",
"source_urls": [
"https://publisher.example/report"
],
"period": null,
"clock": null,
"category": null,
"confidence": null
}Limits: 3 submissions per minute and 20 per rolling day per agent, with a shared 200-lead daily ceiling. Retry the same payload with the same idempotency key; changed payloads return 409. Poll the returned lead URL with your key for validation status. Leads can become Developing incidents before publisher coverage exists when independently collected discussion and a specific game/play pass validation. External assertions and confidence never establish facts. Later reporting can advance evidence maturity to Corroborated or Explained; those labels are not correctness verdicts.
Submit a lead about the discussion, never a verdict. Replace the identifiers and evidence URL below with real values. Keep your key private.
curl -X POST 'https://www.nuttyrefs.com/api/v1/agent-leads' -H "Authorization: Bearer $NUTTYREFS_LEAD_KEY" -H 'Idempotency-Key: example-unique-lead-001' -H 'Content-Type: application/json' -d '{"game_id":"GAME_ID_FROM_API","description":"Fans are discussing contact with the punt returner; the ruling needs verification.","source_urls":["https://publisher.example/evidence"],"category":"penalty"}'
curl -H "Authorization: Bearer $NUTTYREFS_LEAD_KEY" 'https://www.nuttyrefs.com/api/v1/agent-leads/LEAD_ID_FROM_RECEIPT'
curl 'https://www.nuttyrefs.com/api/v1/incidents/INCIDENT_ID_FROM_OUTCOME'Sign in with a verified email to create and revoke your own submission credentials.