Raw schema
{
"type": "object",
"properties": {
"query": {
"description": "Full-text search across legal documents.",
"type": "string"
},
"type": {
"description": "Document type filter. Omit to search every type the other filters apply to β all five when only query is given. admin_fines can be slow without a query.",
"type": "string",
"enum": [
"advisory_opinions",
"murs",
"adrs",
"admin_fines",
"statutes"
]
},
"ao_number": {
"description": "Specific advisory opinion number (e.g. \"2024-01\"). Applies to advisory_opinions only: rejected with any other type, and with type omitted only advisory opinions are returned.",
"type": "string"
},
"case_number": {
"description": "Specific MUR, ADR, or administrative fine case number (e.g. \"8343\"). Applies to murs, adrs, and admin_fines: rejected with advisory_opinions or statutes, and with type omitted only those three types are returned.",
"type": "string"
},
"respondent": {
"description": "Respondent name. Applies to enforcement cases (murs, adrs) only: rejected with any other type, and with type omitted only MURs and ADRs are returned.",
"type": "string"
},
"regulatory_citation": {
"description": "CFR citation in the form \"<title> CFR <part>.<section>\" (e.g. \"11 CFR 110.1\"; \"C.F.R.\", \"Β§\", and a suffix such as \"110.1(b)\" are accepted β a bare \"110.1\" is rejected as invalid_citation). One citation per value: \"11 CFR 110.1; 11 CFR 110.2\" is rejected, since only the first would be applied. Given with statutory_citation, matches a document that cites either one. On murs and adrs it cannot be combined with case_number, respondent, a penalty bound, or an open_date or close_date bound, which the search index would ignore. Applies to advisory_opinions, murs, and adrs: rejected with admin_fines or statutes, and with type omitted only those three types are returned.",
"type": "string"
},
"statutory_citation": {
"description": "U.S.C. citation in the form \"<title> U.S.C. <section>\" (e.g. \"52 U.S.C. 30104\"; \"USC\", \"Β§\", and a suffix such as \"30104(g)\" are accepted β a bare \"30104\" is rejected as invalid_citation). One citation per value: \"52 U.S.C. 30104, 52 U.S.C. 30118\" is rejected, since only the first would be applied. Given with regulatory_citation, matches a document that cites either one. On murs and adrs it cannot be combined with case_number, respondent, a penalty bound, or an open_date or close_date bound, which the search index would ignore. Applies to advisory_opinions, murs, and adrs: rejected with admin_fines or statutes, and with type omitted only those three types are returned.",
"type": "string"
},
"min_penalty_amount": {
"description": "Minimum penalty amount in dollars. Applies to murs, adrs, and admin_fines (an administrative fine matches on its reason-to-believe or final-determination amount): rejected with advisory_opinions or statutes, and with type omitted only those three types are returned.",
"type": "number"
},
"max_penalty_amount": {
"description": "Maximum penalty amount in dollars. Applies to murs, adrs, and admin_fines (an administrative fine matches on its reason-to-believe or final-determination amount): rejected with advisory_opinions or statutes, and with type omitted only those three types are returned.",
"type": "number"
},
"date_kind": {
"description": "Which date min_date/max_date bound. Each document type records its own dates, so this must be one the chosen type has: type=advisory_opinions β issue_date (opinion issued), request_date (request received), document_date; type=murs or adrs β open_date (case opened), close_date (case closed), document_date; type=admin_fines β rtb_date (reason-to-believe finding), fd_date (final determination). type=statutes cannot be date-filtered. Required whenever min_date or max_date is given, together with type.",
"type": "string",
"enum": [
"issue_date",
"request_date",
"open_date",
"close_date",
"document_date",
"rtb_date",
"fd_date"
]
},
"min_date": {
"description": "Earliest date (YYYY-MM-DD) for the date_kind selected. Requires type and date_kind.",
"type": "string"
},
"max_date": {
"description": "Latest date (YYYY-MM-DD) for the date_kind selected. Requires type and date_kind.",
"type": "string"
},
"from_hit": {
"default": 0,
"description": "Offset for pagination (0-indexed), counted within each document type rather than across them. Default 0. When a response is bounded, nextFromHit gives the value that continues each type. The search index serves a 10,000-result window, so from_hit plus hits_returned must be 10,000 or less β the ceiling here assumes hits_returned of 1.",
"type": "integer",
"minimum": 0,
"maximum": 9999
},
"hits_returned": {
"default": 20,
"description": "Results per page, applied per document type. Default 20, max 200. A response is held to 100,000 bytes, so a page of large records can carry fewer, with nextFromHit naming where each type continues. Bounded together with from_hit by the 10,000-result window.",
"type": "integer",
"minimum": 1,
"maximum": 200
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}