Oyez API: List term cases
Lists Oyez Supreme Court cases for a term, sorted by argument date then name. Decision dates and vote splits are blank where Oyez does not provide them.
Unofficial. Not affiliated with or endorsed by Oyez.
Inputs
Values from the run on Oct 31, 2026, shown under Output.
- Term, required
term Year the Supreme Court term began, for example 2023 for the October 2023 term.
2023
Whole number.
- Status optional
status Choose all, decided, argued_not_decided, or not_yet_argued; for example, decided.
all
One of
all,decided,argued_not_decided,not_yet_argued. Defaultall.
Input as JSON
{ "term": 2023, "status": "all"}Output
{ "cases": [ { "link": "https://www.oyez.org/cases/2023/22-340" , "status": "Decided", "question": "Must a defendant show he does not meet any of the criteria listed in 18 U.S.C. § 3553(f) to qualify for a sentence lower than the statutory minimum?", "case_name": "Pulsifer v. United States", "vote_split": "6-3", "date_argued": "2023-10-02", "date_decided": "2024-03-15", "docket_number": "22-340" }, { "link": "https://www.oyez.org/cases/2023/22-448" , "status": "Decided", "question": "Does the funding scheme for the Consumer Financial Protection Bureau, which receives funding directly from the Federal Reserve, violate the Appropriations Clause of the Constitution?", "case_name": "Consumer Financial Protection Bureau v. Community Financial Services Association of America", "vote_split": "7-2", "date_argued": "2023-10-03", "date_decided": "2024-05-16", "docket_number": "22-448" }, { "link": "https://www.oyez.org/cases/2023/22-429" , "status": "Decided", "question": "Does an ADA “tester” have Article III standing to challenge a hotel’s failure to provide disability accessibility information on its website, even if she has no plans to visit the hotel?", "case_name": "Acheson Hotels, LLC v. Laufer", "vote_split": "9-0", "date_argued": "2023-10-04", "date_decided": "2023-12-05", "docket_number": "22-429" } ]}Code
curl https://api.fous.com/v1/runs \ -H "Authorization: Bearer $FOUS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"oyez.org/list_term_cases","input":{"term":2023,"status":"all"}}' # Save as fous.py, then run: python3 fous.pyimport json, os, timefrom urllib.error import HTTPErrorfrom urllib.request import Request, urlopenAPI = "https://api.fous.com/v1/runs" KEY = os.environ["FOUS_API_KEY"]HEADERS = { "Authorization": f"Bearer {KEY}", "Content-Type": "application/json" ,}def call(url, body=None): data = json.dumps(body).encode() if body else None request = Request(url, data, HEADERS) try: with urlopen(request, timeout=120) as r: return r.status, json.load(r) except HTTPError as error: message = json.load(error)["error"]["message"] raise RuntimeError(message) from errorstatus, run = call(API, { "method": "oyez.org/list_term_cases" , "input": { "term": 2023, "status": "all" }})# 202: still going after 30 s. Ask again until it ends.while status == 202: time.sleep(2) status, run = call(f"{API}/{run['id']}")print(json.dumps(run["data"], indent=2))// Save as fous.mjs, then run: node fous.mjsconst api = "https://api.fous.com/v1/runs" ;const headers = { Authorization: `Bearer ${process.env.FOUS_API_KEY}`, "Content-Type": "application/json" ,};let response = await fetch(api, { method: "POST", headers, body: JSON.stringify({ "method": "oyez.org/list_term_cases" , "input": { "term": 2023, "status": "all" } }), signal: AbortSignal.timeout(120_000),});let run = await response.json();// 202: still going after 30 s. Ask again until it ends.while (response.status === 202) { await new Promise((done) => setTimeout(done, 2_000)); response = await fetch(`${api}/${run.id}`, { headers }); run = await response.json();}if (!response.ok) throw new Error(run.error.message);console.log(run.data);# Connect your agent to Fous once, over MCP (Streamable HTTP):# https://api.fous.com/mcp# Set FOUS_API_KEY first: create a key at https://app.fous.com/keys.# Claude Codeclaude mcp add \ --scope user \ --transport http fous https://api.fous.com/mcp \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Codexcodex mcp add fous \ --url https://api.fous.com/mcp \ --bearer-token-env-var FOUS_API_KEY# Cursor, VS Code, Windsurf, Cline and morenpx -y add-mcp https://api.fous.com/mcp -g -n fous \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Then ask your agent:# "Use Fous to run oyez.org/list_term_cases# with {"term":2023,"status":"all"}"Over HTTP, the answer’s data holds the output. A run still going after 30 seconds answers 202 with its id: ask GET /v1/runs/{id} until it ends.
Schema
Input schema
{ "type": "object", "required": [ "term" ], "properties": { "term": { "type": "integer", "examples": [ 2023 ], "description": "Year the Supreme Court term began, for example 2023 for the October 2023 term." }, "status": { "enum": [ "all", "decided", "argued_not_decided", "not_yet_argued" ], "type": "string", "default": "all", "description": "Choose all, decided, argued_not_decided, or not_yet_argued; for example, decided." } }}Output schema
{ "type": "object", "required": [ "cases" ], "properties": { "cases": { "type": "array", "items": { "type": "object", "required": [ "case_name", "docket_number", "date_argued", "date_decided", "status", "vote_split", "question", "link" ], "properties": { "link": { "type": "string", "format": "uri" }, "status": { "type": "string" }, "question": { "type": [ "string", "null" ] }, "case_name": { "type": "string" }, "vote_split": { "type": [ "string", "null" ], "description": "Majority-minority split, when available." }, "date_argued": { "type": [ "string", "null" ], "format": "date" }, "date_decided": { "type": [ "string", "null" ], "format": "date" }, "docket_number": { "type": [ "string", "null" ] } }, "additionalProperties": false }, "description": "Supreme Court cases for the selected term and status." } }, "additionalProperties": false}- Price
- 1 credit per completed run (1¢ with pay as you go); failed runs are free.
- Method
oyez.org/list_term_cases- Returns
- case name, docket number, argued and decided dates, status, vote split, question, link
Use it from your agent
Give your agent this line. It reads SKILL.md, gets a Fous API key and connects the Fous MCP server. Its run then takes the method oyez.org/list_term_cases with the inputs above.
Ask your agent
- Show me every Supreme Court case from the October 2021 term with argument dates, vote splits, and the question presented
- Which cases from the 2024 Supreme Court term have been argued but still don't have a decision?
- Pull the Oyez list of decided cases for the 2019 term, including docket numbers and how the justices split
- I need the cases on the 2025 SCOTUS docket that haven't been heard at oral argument yet
- Using oyez.org, list all cases from the term that began in October 2016, ordered by when they were argued
See more
All Oyez methodsFinds an Oyez Supreme Court case by name or case link and returns its summary, decision, justice votes and argument audio links.
oyez.org/get_supreme_court_caseSearches CourtListener US court opinions by keywords or case name, with optional court, decision dates and sorting.
courtlistener.com/search_case_lawFinds federal RECAP dockets involving a named person or company, newest filed first. Only dockets in the RECAP Archive appear.
courtlistener.com/search_federal_docketsFinds a US court opinion on CourtListener by case name, citation, or opinion link, and returns its metadata, opinions, judges, citing-case count and the lead opinion's full text from its PDF.
courtlistener.com/get_court_opinionLists statewide ballot measures in a US state and year, in Ballotpedia order, with election dates, topics, measure types, yes/no vote meanings and results. Years without statewide measures return an empty list.
ballotpedia.org/list_ballot_measuresSearches UK court judgments and tribunal decisions on Find Case Law by keywords or party names. Results can be filtered by court and by judgment date.
caselaw.nationalarchives.gov.uk/search_judgmentsLists US IPOs from a chosen year, newest first. Each IPO comes with its IPO price, current price and return since IPO. Coverage begins in 2019.
stockanalysis.com/list_recent_iposLists a Chess.com player's completed public games for a month, newest first, with results, ratings, opening and game links.
chess.com/list_recent_games