Data files and search API
Every list and count on these pages is computed from the JSON files below, rebuilt with the pages; the search box answers from a public JSON API. Both are free to read without an account. The spreadsheets hold the same rows as CSV.
2,914 written decisions from 2,661 cases in the whole mandamus and agency-delay group, the group's newest decided October 30, 2026. Updated November 3, 2026 at 1:24 a.m. CT; the Passim connector counts the live collection, which can differ by the day's additions and retirements (which total to quote). Coverage: of the 1,606 public decisions since January 1, 2025 that a CourtListener and GovInfo search for mandamus and agency delay finds, Passim holds 1,371 (85%), measured November 3, 2026. Some of what that search finds are not mandamus decisions. Tell us about a decision we're missing.
The files
- data/decisions.json
- The decision list's index: one row for each of the 2,914 written decisions in the group (fields below), newest first.
- data/vocabulary.json
- The filter values with their labels and counts, the minimum counts, this rebuild, and the path of every other file.
- data/run.json
- This rebuild: its id, when it finished, how many decisions and suits it holds, and the code it was built with.
- data/dockets/court/<court>.json
- A court's suits in the docket record (fields below), 65,197 suits in all, one file for each court, listed under each court's files.
- data/dockets/year/<year>.json
- The same suits by the year they were filed: 2026, 2025, 2024, 2023, 2022, 2021, 2020, 2019, 2018, 2017, 2016, 2015, 2014, 2013, 2012, 2011.
- data/dockets/endings/<court>.json
- The docket entries that record how a court's suits ended (often a text-only remand order), with their text and the remand terms read from it. The suit's own party names, A-numbers and email addresses are replaced with [name], [A-number] and [email].
Each file names the rebuild it belongs to (run), so files from different nights are never mixed. The pages ask for a file with ?v= and the rebuild's id only to keep browsers from showing an old copy; the address without it is the same file.
A decision row (decisions in data/decisions.json)
id,case- The decision's id (its page is
/mandamus/decisions/<id>/) and its case's id, the lowest id among the case's decisions. Outcome counts count each case once, by its latest decision. title,date,court,judge,judge_key- The caption, the decision date, the court's code (
dcd), the signing judge and the judge's key (court:name). agency,forms,relief- The agency the suit is about, the forms or filings at issue, and what the suit asked the court to make the agency do.
disposition,prevailing,motions,side,claim,survived- The ruling on the principal motion, the side that prevailed, the motions decided, whose motion it was, what happened to the delay claim, and whether it survived: a ruling on the government's motion or on cross-motions in which the delay claim goes on.
rulings,issues,nationality- Threshold rulings (section 1252(a)(2)(B), consular nonreviewability, a 221(g) duty, mootness) and whether each was applied or rejected; the issues the decision turns on; the applicant's nationality where stated.
delay_filing,delay_decision- Months from the application to the suit, and to the court's decision (left out where the agency acted before the decision).
trac,source- Whether the decision weighs the TRAC factors (each factor's finding is on the decision's page and in the search API), and the address of the full decision.
A suit row (dockets in the docket files)
id,number,court,claim- The suit's id, its docket number, its court and the claim (mandamus, APA or section 1447(b)). Party names are left out.
filed,ended,days,class- When the suit was filed and ended, the days from the suit's filing to its end, and how it ended (the classes).
agency,forms- The agency a linked decision names, else the lead defendant, and the forms. The docket record seldom names a form, so a suit's forms mostly come from its written decisions: most suits with a form are suits that reached a written decision, whose endings lean toward contested ones. These pages never count suits by form for that reason.
judge,judge_key,cl,decisions,ending- The assigned judge (else a linked decision's), the CourtListener docket id, the linked written decisions with their dates, and how many ending entries the court's endings file holds for the suit.
Each court's files
- District of Columbia, 5,885 suits: data/dockets/court/dcd.json; endings data/dockets/endings/dcd.json
- District of Minnesota, 714 suits: data/dockets/court/mnd.json; endings data/dockets/endings/mnd.json
- District of Nebraska, 802 suits: data/dockets/court/ned.json; endings data/dockets/endings/ned.json
- District of North Dakota, 48 suits: data/dockets/court/ndd.json; endings data/dockets/endings/ndd.json
- District of South Dakota, 6 suits: data/dockets/court/sdd.json
- Eastern District of Arkansas, 19 suits: data/dockets/court/ared.json; endings data/dockets/endings/ared.json
- Eastern District of Missouri, 157 suits: data/dockets/court/moed.json; endings data/dockets/endings/moed.json
- Northern District of Iowa, 24 suits: data/dockets/court/iand.json; endings data/dockets/endings/iand.json
- Southern District of Iowa, 26 suits: data/dockets/court/iasd.json; endings data/dockets/endings/iasd.json
- Western District of Arkansas, 22 suits: data/dockets/court/arwd.json
- Western District of Missouri, 132 suits: data/dockets/court/mowd.json; endings data/dockets/endings/mowd.json
- Middle District of Alabama, 26 suits: data/dockets/court/almd.json
- Middle District of Florida, 1,273 suits: data/dockets/court/flmd.json; endings data/dockets/endings/flmd.json
- Middle District of Georgia, 320 suits: data/dockets/court/gamd.json; endings data/dockets/endings/gamd.json
- Northern District of Alabama, 86 suits: data/dockets/court/alnd.json; endings data/dockets/endings/alnd.json
- Northern District of Florida, 54 suits: data/dockets/court/flnd.json; endings data/dockets/endings/flnd.json
- Northern District of Georgia, 1,564 suits: data/dockets/court/gand.json; endings data/dockets/endings/gand.json
- Southern District of Alabama, 10 suits: data/dockets/court/alsd.json; endings data/dockets/endings/alsd.json
- Southern District of Florida, 1,704 suits: data/dockets/court/flsd.json; endings data/dockets/endings/flsd.json
- Southern District of Georgia, 95 suits: data/dockets/court/gasd.json; endings data/dockets/endings/gasd.json
- Eastern District of Louisiana, 116 suits: data/dockets/court/laed.json; endings data/dockets/endings/laed.json
- Eastern District of Texas, 375 suits: data/dockets/court/txed.json; endings data/dockets/endings/txed.json
- Middle District of Louisiana, 33 suits: data/dockets/court/lamd.json; endings data/dockets/endings/lamd.json
- Northern District of Mississippi, 8 suits: data/dockets/court/msnd.json; endings data/dockets/endings/msnd.json
- Northern District of Texas, 1,355 suits: data/dockets/court/txnd.json; endings data/dockets/endings/txnd.json
- Southern District of Mississippi, 18 suits: data/dockets/court/mssd.json
- Southern District of Texas, 1,436 suits: data/dockets/court/txsd.json; endings data/dockets/endings/txsd.json
- Western District of Louisiana, 31 suits: data/dockets/court/lawd.json; endings data/dockets/endings/lawd.json
- Western District of Texas, 410 suits: data/dockets/court/txwd.json; endings data/dockets/endings/txwd.json
- District of Maine, 25 suits: data/dockets/court/med.json
- District of Massachusetts, 1,318 suits: data/dockets/court/mad.json; endings data/dockets/endings/mad.json
- District of New Hampshire, 40 suits: data/dockets/court/nhd.json; endings data/dockets/endings/nhd.json
- District of Puerto Rico, 31 suits: data/dockets/court/prd.json; endings data/dockets/endings/prd.json
- District of Rhode Island, 53 suits: data/dockets/court/rid.json; endings data/dockets/endings/rid.json
- District of Maryland, 2,163 suits: data/dockets/court/mdd.json; endings data/dockets/endings/mdd.json
- District of South Carolina, 212 suits: data/dockets/court/scd.json; endings data/dockets/endings/scd.json
- Eastern District of North Carolina, 146 suits: data/dockets/court/nced.json; endings data/dockets/endings/nced.json
- Eastern District of Virginia, 2,221 suits: data/dockets/court/vaed.json; endings data/dockets/endings/vaed.json
- Middle District of North Carolina, 160 suits: data/dockets/court/ncmd.json; endings data/dockets/endings/ncmd.json
- Northern District of West Virginia, 5 suits: data/dockets/court/wvnd.json
- Southern District of West Virginia, 7 suits: data/dockets/court/wvsd.json
- Western District of North Carolina, 202 suits: data/dockets/court/ncwd.json; endings data/dockets/endings/ncwd.json
- Western District of Virginia, 67 suits: data/dockets/court/vawd.json; endings data/dockets/endings/vawd.json
- Central District of California, 8,693 suits: data/dockets/court/cacd.json; endings data/dockets/endings/cacd.json
- District of Alaska, 24 suits: data/dockets/court/akd.json; endings data/dockets/endings/akd.json
- District of Arizona, 351 suits: data/dockets/court/azd.json; endings data/dockets/endings/azd.json
- District of Guam, 2 suits: data/dockets/court/gud.json
- District of Hawaii, 35 suits: data/dockets/court/hid.json; endings data/dockets/endings/hid.json
- District of Idaho, 14 suits: data/dockets/court/idd.json
- District of Montana, 13 suits: data/dockets/court/mtd.json
- District of Nevada, 241 suits: data/dockets/court/nvd.json; endings data/dockets/endings/nvd.json
- District of Oregon, 153 suits: data/dockets/court/ord.json; endings data/dockets/endings/ord.json
- Eastern District of California, 774 suits: data/dockets/court/caed.json; endings data/dockets/endings/caed.json
- Eastern District of Washington, 138 suits: data/dockets/court/waed.json; endings data/dockets/endings/waed.json
- Northern District of California, 3,914 suits: data/dockets/court/cand.json; endings data/dockets/endings/cand.json
- Northern Mariana Islands, 7 suits: data/dockets/court/nmid.json
- Southern District of California, 485 suits: data/dockets/court/casd.json; endings data/dockets/endings/casd.json
- Western District of Washington, 1,491 suits: data/dockets/court/wawd.json; endings data/dockets/endings/wawd.json
- District of Connecticut, 199 suits: data/dockets/court/ctd.json; endings data/dockets/endings/ctd.json
- District of Vermont, 2,846 suits: data/dockets/court/vtd.json; endings data/dockets/endings/vtd.json
- Eastern District of New York, 10,439 suits: data/dockets/court/nyed.json; endings data/dockets/endings/nyed.json
- Northern District of New York, 122 suits: data/dockets/court/nynd.json; endings data/dockets/endings/nynd.json
- Southern District of New York, 2,734 suits: data/dockets/court/nysd.json; endings data/dockets/endings/nysd.json
- Western District of New York, 113 suits: data/dockets/court/nywd.json; endings data/dockets/endings/nywd.json
- Central District of Illinois, 58 suits: data/dockets/court/ilcd.json; endings data/dockets/endings/ilcd.json
- Eastern District of Wisconsin, 133 suits: data/dockets/court/wied.json; endings data/dockets/endings/wied.json
- Northern District of Illinois, 3,533 suits: data/dockets/court/ilnd.json; endings data/dockets/endings/ilnd.json
- Northern District of Indiana, 78 suits: data/dockets/court/innd.json; endings data/dockets/endings/innd.json
- Southern District of Illinois, 10 suits: data/dockets/court/ilsd.json; endings data/dockets/endings/ilsd.json
- Southern District of Indiana, 170 suits: data/dockets/court/insd.json; endings data/dockets/endings/insd.json
- Western District of Wisconsin, 94 suits: data/dockets/court/wiwd.json; endings data/dockets/endings/wiwd.json
- Eastern District of Kentucky, 53 suits: data/dockets/court/kyed.json; endings data/dockets/endings/kyed.json
- Eastern District of Michigan, 536 suits: data/dockets/court/mied.json; endings data/dockets/endings/mied.json
- Eastern District of Tennessee, 57 suits: data/dockets/court/tned.json; endings data/dockets/endings/tned.json
- Middle District of Tennessee, 133 suits: data/dockets/court/tnmd.json; endings data/dockets/endings/tnmd.json
- Northern District of Ohio, 147 suits: data/dockets/court/ohnd.json; endings data/dockets/endings/ohnd.json
- Southern District of Ohio, 315 suits: data/dockets/court/ohsd.json; endings data/dockets/endings/ohsd.json
- Western District of Kentucky, 61 suits: data/dockets/court/kywd.json; endings data/dockets/endings/kywd.json
- Western District of Michigan, 123 suits: data/dockets/court/miwd.json; endings data/dockets/endings/miwd.json
- Western District of Tennessee, 43 suits: data/dockets/court/tnwd.json; endings data/dockets/endings/tnwd.json
- District of Colorado, 467 suits: data/dockets/court/cod.json; endings data/dockets/endings/cod.json
- District of Kansas, 91 suits: data/dockets/court/ksd.json; endings data/dockets/endings/ksd.json
- District of New Mexico, 118 suits: data/dockets/court/nmd.json; endings data/dockets/endings/nmd.json
- District of Utah, 63 suits: data/dockets/court/utd.json; endings data/dockets/endings/utd.json
- District of Wyoming, 5 suits: data/dockets/court/wyd.json
- Eastern District of Oklahoma, 6 suits: data/dockets/court/oked.json; endings data/dockets/endings/oked.json
- Northern District of Oklahoma, 14 suits: data/dockets/court/oknd.json
- Western District of Oklahoma, 55 suits: data/dockets/court/okwd.json; endings data/dockets/endings/okwd.json
- District of Delaware, 17 suits: data/dockets/court/ded.json; endings data/dockets/endings/ded.json
- District of New Jersey, 1,587 suits: data/dockets/court/njd.json; endings data/dockets/endings/njd.json
- District of the Virgin Islands, 5 suits: data/dockets/court/vid.json; endings data/dockets/endings/vid.json
- Eastern District of Pennsylvania, 811 suits: data/dockets/court/paed.json; endings data/dockets/endings/paed.json
- Middle District of Pennsylvania, 132 suits: data/dockets/court/pamd.json; endings data/dockets/endings/pamd.json
- Western District of Pennsylvania, 95 suits: data/dockets/court/pawd.json; endings data/dockets/endings/pawd.json
The search API
GET https://biaedge.com/api/mandamus/search answers JSON. It searches or lists the same group of decisions live, so it can hold decisions added since this rebuild. A browser page on another site cannot call it (it answers cross-origin requests from passimai.com only); a script, a spreadsheet or curl can. Each connection may make 30 searches a minute and 300 an hour.
q- Free text: an issue, a phrase, a party, a caption or a docket number, up to 300 characters. Leave it out to list decisions.
court- One district court, by its code: dcd, txsd, cacd, nysd and so on (the codes the court pages use).
judge- The signing judge's surname or full name, such as Lake or Sim Lake.
agency- The agency the suit is about, or a comma list: USCIS, State (DOS is accepted), NVC, FBI, DHS, EOIR, CBP, ICE, DOL, DOJ.
form- A form or filing, or a comma list: I-485, I-130, I-589, N-400, DS-260, 221(g) and the others in the decision list's menu; I-130:immediate_relative or I-130:preference for the I-130 category; I-918:bona_fide_determination, I-918:waiting_list, I-918:ead or I-918:adjudication for a U visa claim.
disposition- The ruling, or a comma list: granted, granted_in_part, denied, dismissed, dismissed_in_part, moot, remanded, recommendation, transfer, stipulated, discovery, procedural, sanctions, fees, other. delay_claim_survived selects rulings on the government's motion or on cross-motions in which the delay claim goes on, whichever of these they show.
prevailing_party- applicant, government, mixed or none, or a comma list.
min_delay_months- Months from the application to the decision, at least.
max_delay_months- Months from the application to the decision, at most.
date_from- Decided on or after: YYYY, YYYY-MM or YYYY-MM-DD.
date_to- Decided on or before: YYYY, YYYY-MM or YYYY-MM-DD.
limit- Decisions in one answer, 1 to 50 (20 if left out; a larger number is read as 50).
offset- Decisions to skip, 0 to 100: continue with meta.next_offset. A search reaches at most 150 decisions; narrow it with the filters or dates to reach others.
Within a comma list the values are alternatives; different parameters must all hold. A court, agency, form, disposition, prevailing party or date outside the accepted values, or an offset past 100, answers 400 with a message saying what is accepted, and every answer lists them in meta.accepted.
How results are ordered
Without q, the decisions are listed newest first. With q, exact caption and docket-number matches come first, then the best matches for the words, in any year; meta.order says which (newest_first or relevance). To keep to recent decisions, add date_from: ?court=txsd&form=I-485&date_from=2024-10-01. A search here on the decision list reads up to 150 of the best matches and then lists them in the list's own order (newest first unless you choose another).
The answer
records- One for each decision:
document_id,title,court,judge,date,docket_number,case_type,snippet(the matched words between**),url(its page here), andfacets:defendant_agency,form_types,disposition,prevailing_party,delay_months,trac_findings(each TRAC factor, 1 to 6, found for theapplicantor thegovernment,neutral, ornot_reached),delay_arguments(the government's last-in-first-out, visa-availability and line-jumping arguments and the side the court took on each, such asline_jumping:government), and_method(each value read by rule or by a model). A field the decision does not state is left out. metatotal(decisions matching),next_offset(the next page'soffset, or null),order,partial(true when the time limit cut the answer short: retry),depth_reached(paging stopped at offset 100, not at the end: narrow the filters), and with a filter on agency, form, disposition, prevailing party or months,facet_counts(counts by each value, each decision counted, not each case).controlling_authority,warning- The Supreme Court and circuit decisions that bind on the search's questions, each with its ImmCite status, and the note that district decisions are persuasive only.
The API, this site's list and the Passim connector
- The API runs the Passim connector's
search_district_court_decisionswithdecision_category=mandamus: the same parameters return the same decisions in the same order. The connector searches every kind of district decision unless it is given that category, so its counts are larger without it. - The connector also filters by TRAC finding, threshold ruling, whose motion was decided and the delay claim's result, and groups results by court, judge, year, agency or form; the API takes only the parameters above. Different words rank differently, so two searches on one topic share many decisions but not all.
- The decision list here is this rebuild of the decisions read for these pages. The API and the connector read the live collection, which can hold decisions added or corrected since; the list names a search result that has no page here yet and links it to Passim's reader.
- Outcome counts on these pages count cases, each by its latest decision; the API's
facet_countsand the connector count decisions, each order separately (which total to quote).
These are counts of past written decisions and dockets, not predictions of how any case will be decided. A distribution appears only when at least 5 decisions (or 5 dockets) are behind it; smaller groups are listed, not summarized. How it's counted.