curl --request POST \
--url https://api.vaquill.ai/api/v1/us/statutes/resolve \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"citations": [
"42 U.S.C. 1983",
"16 C.F.R. 444.1",
"Cal. Civ. Code 1950.5"
]
}
'import requests
url = "https://api.vaquill.ai/api/v1/us/statutes/resolve"
payload = { "citations": ["42 U.S.C. 1983", "16 C.F.R. 444.1", "Cal. Civ. Code 1950.5"] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({citations: ['42 U.S.C. 1983', '16 C.F.R. 444.1', 'Cal. Civ. Code 1950.5']})
};
fetch('https://api.vaquill.ai/api/v1/us/statutes/resolve', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.vaquill.ai/api/v1/us/statutes/resolve"
payload := strings.NewReader("{\n \"citations\": [\n \"42 U.S.C. 1983\",\n \"16 C.F.R. 444.1\",\n \"Cal. Civ. Code 1950.5\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"results": [
{
"resolved": true,
"inputCitation": "<string>",
"section": {
"actId": "<string>",
"citation": "<string>",
"citationShort": "<string>",
"title": "<string>",
"corpusType": "<string>",
"state": "<string>",
"source": "sct",
"year": 123,
"relevanceScore": 123,
"excerpt": "",
"body": "(a) If within a reasonable time after written or oral notice...",
"titleNumber": "<string>",
"titleName": "<string>",
"chapter": "<string>",
"chapterName": "<string>",
"sectionNumber": "<string>",
"sectionTitle": "<string>",
"displayPath": "<string>",
"breadcrumb": [
{}
],
"parent": {},
"subchapter": "<string>",
"subchapterName": "<string>",
"part": "<string>",
"partName": "<string>",
"subpart": "<string>",
"subpartName": "<string>",
"popularName": "<string>",
"actStatus": "<string>",
"goodLawStatus": "<string>",
"currencyNote": "<string>",
"renumberedTo": "self:4651",
"renumberedToLabel": "section 10105 of Title 34",
"transferredTo": "34:10105",
"transferredToLabel": "section 10105 of Title 34",
"issueDate": "1999-05-25",
"issueDateRaw": "<string>",
"crossReferencesCfr": [
"<string>"
],
"crossReferencesUsc": [
"<string>"
],
"statutoryAuthority": [
{}
],
"implementingRegulations": [
{}
],
"frRegulationIdNumbers": [
"<string>"
],
"frDocketIds": [
"<string>"
],
"frEffectiveOn": "<string>",
"frCommentsCloseOn": "<string>",
"frSignificant": true,
"frCorrectionOf": "<string>",
"frCorrections": [
"<string>"
],
"frRegulationsDotGovUrl": "<string>",
"frRelatedDocuments": [
{
"actId": "<string>",
"citation": "<string>",
"title": "<string>",
"documentType": "<string>",
"publicationDate": "<string>"
}
],
"subject": "<string>",
"rescindedOn": "2016-07-01",
"rescindedOnRaw": "<string>",
"sourceCredit": "<string>",
"amendmentYears": [
123
],
"lastAmendedYear": 123,
"amendmentsCount": 123,
"currentThrough": "<string>",
"pendingAdoptions": [
{
"agency": "Department of Financial Services",
"effectiveDate": "2026-09-23",
"idNo": "DFS-23-26-00013-A",
"issueDate": "2026-09-23",
"scope": "part"
}
],
"adoptedAfterCurrentThrough": true,
"amendmentHistory": [
"<string>"
],
"sourceNote": "<string>",
"effectiveDate": "2002-11-25",
"effectiveDateRaw": "September 8, 1916",
"historyEffectiveDate": "2009-06-19",
"priorEffectiveDates": [
"<string>"
],
"history": "<string>",
"supersededBy": "<string>",
"supersedes": "<string>",
"ruleSet": "<string>",
"publicLaws": [
"<string>"
],
"federalRegisterCitations": [
"<string>"
],
"granuleId": "<string>",
"packageId": "<string>",
"htmlUrl": "<string>",
"pdfUrl": "<string>",
"xmlUrl": "<string>",
"textUrl": "<string>",
"docxUrl": "<string>",
"stateHtmlUrl": "<string>",
"govInfoHtmlUrl": "<string>",
"govInfoPdfUrl": "<string>",
"abstract": "This regulation extends time-limited tolerances for pesticides.",
"agencies": [
"Environmental Protection Agency"
],
"agencySlugs": [
"environmental-protection-agency"
],
"topics": [
"Environmental protection",
"Pesticides and pests"
],
"documentTypeLabel": "Rule",
"documentSubtype": "Proclamation",
"action": "Final rule.",
"president": "George W. Bush",
"signingDate": "2026-04-02",
"signingDateRaw": "<string>",
"datesText": "This regulation is effective December 14, 2001.",
"frVolume": 66,
"frStartPage": 64768,
"frEndPage": 64775,
"wordCount": 6271,
"issuingAgency": "Pollution Control Board",
"adoptingCitations": [
"37 Ill. Reg. 16539"
],
"lawImplemented": "Section 4656.1, Public Resources Code",
"lastAmendedDate": "2013-10-04",
"lastAmendedDateRaw": "<string>",
"amendmentNote": "Amended at 37 Ill. Reg. 16539, effective October 4, 2013",
"currencyYear": 2025,
"reviewDate": "11/1/2028",
"reviewDateRaw": "<string>",
"originalEnactmentDate": "1934-06-27",
"originalEnactmentDateRaw": "June 27, 1934",
"releaseDate": "2018-06-14",
"releaseDateRaw": "<string>",
"documentNumber": "21-CA-211066",
"caseName": "Dunn-Edwards Corp.",
"forum": "Administrative Proceeding",
"court": "U.S. District Court for the District of Massachusetts",
"relatedDocuments": [
"Consent Order",
"Stipulation"
],
"settlementAmount": "$16,500",
"requesters": [
"Preece, Inc."
],
"program": "Old-Age and Survivors Insurance",
"languageCode": "es",
"volume": 1,
"articleNumber": "1",
"articleName": "Declaration of Rights",
"ruleSetCode": "NDSUPCTADMINR",
"edition": "2025",
"relatedCitations": [
"RCW 28A.150.290"
],
"supersessionActions": {
"modifies": [
"Rev. Proc. 2011-47"
]
},
"licenseNote": "MIT (reglab/statecodes)",
"subtitle": "11",
"subtitleName": "AIR QUALITY",
"publisherKey": "430000000310400000000000000000000",
"versionId": "11948",
"referencedShortTitles": [
"Driftnet Modernization and Bycatch Reduction Act"
],
"subjectNumber": "47",
"audience": "All Persons Engaged in Marketing",
"sourceCharStart": 263194,
"sourceCharEnd": 264198,
"alternateCitations": [
"4 L.P.R.A. § 2077"
],
"expirationDate": "2029-03-01",
"expirationDateRaw": "03-01-2029",
"committeeNote": "<string>",
"sourcePageStart": 114,
"sourcePageEnd": 114,
"displayLabel": "MPEP § 2165.03",
"publicationDate": "2001-12-14",
"publicationDateRaw": "<string>",
"publicLawCites": [
{}
],
"topLevelTitle": "Title 9: Criminal",
"externalUrl": "https://www.mass.gov/regulations/240-CMR-200-licensure-of-cosmetologists",
"sourceUrl": "https://www.mass.gov/regulations/240-CMR-200-licensure-of-cosmetologists"
},
"subsection": "<string>",
"citationOutsideFilters": {
"actId": "USC_T42_C21_S1983",
"citation": "42 U.S.C. § 1983 (2026)",
"title": "Civil action for deprivation of rights",
"state": "federal",
"corpusType": "USC",
"excludedBy": [
"state"
]
},
"matchedCorpus": "session_law",
"sessionLaw": {
"status": "matched",
"sessionLawId": "SSL_MN_2025R_G_Y2025_C1",
"citation": "CHAPTER 1--S.F.No. 1552",
"jurisdiction": "mn",
"session": {
"code": "2025R",
"label": "2025 Regular Session",
"type": "regular",
"year": 2025
},
"textStatus": "held",
"title": "An act relating to agriculture; modifying financial reporting requirements for grain buyers; amending Minnesota Statutes 2024, section 223.17, subdivision 6.",
"billNumber": "S.F.No. 1552",
"approvedDate": "2025-03-17",
"effectiveFirst": "2025-09-01",
"effectiveLast": "2025-09-01",
"enactmentOutcome": "signed",
"sourceUrl": "https://www.revisor.mn.gov/laws/2025/0/Session+Law/Chapter/1/",
"href": "/api/v1/us/session-laws/SSL_MN_2025R_G_Y2025_C1",
"candidates": [
{
"sessionLawId": "SSL_MN_2025R_G_Y2025_C1",
"jurisdiction": "mn",
"session": {
"code": "2025R",
"label": "2025 Regular Session",
"type": "regular",
"year": 2025
},
"textStatus": "held",
"href": "/api/v1/us/session-laws/SSL_MN_2025R_G_Y2025_C1",
"citation": "CHAPTER 1--S.F.No. 1552",
"title": "An act relating to agriculture; modifying financial reporting requirements for grain buyers; amending Minnesota Statutes 2024, section 223.17, subdivision 6.",
"billNumber": "S.F.No. 1552",
"approvedDate": "2025-03-17",
"effectiveFirst": "2025-09-01",
"effectiveLast": "2025-09-01",
"enactmentOutcome": "signed",
"sourceUrl": "https://www.revisor.mn.gov/laws/2025/0/Session+Law/Chapter/1/",
"isDefault": false
}
],
"defaultSessionLawId": null
},
"matchLevel": "container",
"container": {
"kind": "chapter",
"label": "U.S. Const. art. III",
"childCount": 12,
"children": [
{
"actId": "CONST_US_A3_S1",
"citation": "U.S. Const. art. III, § 1",
"status": "in_force"
}
],
"truncated": false
},
"citedSections": [
"<string>"
],
"repair": {
"kind": "code_name",
"cited": "Jud. Ct. Acts Law",
"interpretedAs": "N.Y. Judiciary Law § 475",
"alternatives": [
{
"actId": "STATE_NY_FCT_S475",
"citation": "N.Y. Fam. Ct. Act § 475"
}
]
},
"registerReference": {
"citation": "36 Pa. Bull. 510",
"state": "il",
"kind": "page",
"ruleCount": 2,
"rules": [
"<string>"
],
"registerItemHeld": false
},
"missReason": "ambiguous_jurisdiction",
"candidates": [
{
"state": "co",
"actId": "REG_CO_T8_S1206-2",
"citation": "8 CCR 1206-2",
"subsection": "<string>"
}
],
"missReasonHint": "<string>"
}
],
"resolvedCount": 2,
"count": 3,
"processingTimeMs": 610.2,
"creditsConsumed": 6
}{
"detail": "Insufficient API credits.",
"errors": [
{
"loc": [
"body",
"corpusType"
],
"msg": "Input should be 'USC', 'CFR' or 'STATE'",
"type": "literal_error"
}
]
}{
"detail": "Insufficient API credits.",
"errors": [
{
"loc": [
"body",
"corpusType"
],
"msg": "Input should be 'USC', 'CFR' or 'STATE'",
"type": "literal_error"
}
]
}{
"detail": "Insufficient API credits.",
"errors": [
{
"loc": [
"body",
"corpusType"
],
"msg": "Input should be 'USC', 'CFR' or 'STATE'",
"type": "literal_error"
}
]
}{
"detail": "Insufficient API credits.",
"errors": [
{
"loc": [
"body",
"corpusType"
],
"msg": "Input should be 'USC', 'CFR' or 'STATE'",
"type": "literal_error"
}
]
}Resolve many citations at once
Resolve up to 50 Bluebook citations to their exact sections in one call.
The batch form of GET /us/statutes/resolve, and the same verdict per
citation. Use it when you are checking the citations in a document rather than
looking one up: a brief, a memo, or a model’s output typically carries dozens,
and the single-citation route makes that dozens of round trips.
Cost: 2 credits per citation, the same as resolving them one at a time.
Batching buys a round trip and latency, not a discount. Unresolved citations
are charged (a confident “this does not resolve” is the answer you are paying
for when verifying a model’s output); only citations we failed to process
because of a backend error are refunded, and creditsConsumed reports what was
actually billed.
Duplicates are collapsed before pricing and before the response is built, so sending the same citation twice costs once and returns one entry.
Every input gets an entry. An unresolved citation appears with
resolved: false, never as an omission: a caller checking thirty citations
needs to know WHICH failed, and a shorter array cannot say that.
Example
requests.post(url, headers=h, json={
"citations": [
"42 U.S.C. 1983",
"16 C.F.R. 444.1",
"Cal. Civ. Code 1950.5",
],
})
Scope the whole batch with state or corpusType when every citation belongs
to one jurisdiction or corpus (22 CCR 76227 is California and 8 CCR 1206-2
is Colorado; the acronym alone cannot say which). Omit both for a batch that
spans jurisdictions and let each citation name its own.
Each result carries the same matchLevel flag as the single route when its
section is not the exact unit cited (container, multiple, repaired); an
exact match has none of those fields. An unresolved result carries the same
missReason, candidates and missReasonHint as the single route when none of
citationOutsideFilters / sessionLaw already says why; no extra charge.
A citation to a STATE session law (an act as enacted, for example CHAPTER 2025-12 or S.F.No. 1552) names no code section, so resolved stays false and section stays null. The law is described in sessionLaw, beside matchedCorpus: "session_law", with an href to read it under /us/session-laws, and enough to answer what it is and when it took effect without a second call: title, billNumber, approvedDate, effectiveFirst and effectiveLast (null when the publisher prints no effective date), enactmentOutcome and sourceUrl, the government publisher’s own text. A citation naming several laws comes back ambiguous with every candidate and none chosen for you. A state scope applies to session laws; a corpusType scope excludes them. No extra charge, and a citation that resolves to a section is never checked against session laws. A citation that names no state is matched against every state’s laws, so at most 25 of them are checked per call: the others carry no sessionLaw block, which says nothing about whether the law exists. Name the state, or send the rest in another call.
curl --request POST \
--url https://api.vaquill.ai/api/v1/us/statutes/resolve \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"citations": [
"42 U.S.C. 1983",
"16 C.F.R. 444.1",
"Cal. Civ. Code 1950.5"
]
}
'import requests
url = "https://api.vaquill.ai/api/v1/us/statutes/resolve"
payload = { "citations": ["42 U.S.C. 1983", "16 C.F.R. 444.1", "Cal. Civ. Code 1950.5"] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({citations: ['42 U.S.C. 1983', '16 C.F.R. 444.1', 'Cal. Civ. Code 1950.5']})
};
fetch('https://api.vaquill.ai/api/v1/us/statutes/resolve', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.vaquill.ai/api/v1/us/statutes/resolve"
payload := strings.NewReader("{\n \"citations\": [\n \"42 U.S.C. 1983\",\n \"16 C.F.R. 444.1\",\n \"Cal. Civ. Code 1950.5\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"results": [
{
"resolved": true,
"inputCitation": "<string>",
"section": {
"actId": "<string>",
"citation": "<string>",
"citationShort": "<string>",
"title": "<string>",
"corpusType": "<string>",
"state": "<string>",
"source": "sct",
"year": 123,
"relevanceScore": 123,
"excerpt": "",
"body": "(a) If within a reasonable time after written or oral notice...",
"titleNumber": "<string>",
"titleName": "<string>",
"chapter": "<string>",
"chapterName": "<string>",
"sectionNumber": "<string>",
"sectionTitle": "<string>",
"displayPath": "<string>",
"breadcrumb": [
{}
],
"parent": {},
"subchapter": "<string>",
"subchapterName": "<string>",
"part": "<string>",
"partName": "<string>",
"subpart": "<string>",
"subpartName": "<string>",
"popularName": "<string>",
"actStatus": "<string>",
"goodLawStatus": "<string>",
"currencyNote": "<string>",
"renumberedTo": "self:4651",
"renumberedToLabel": "section 10105 of Title 34",
"transferredTo": "34:10105",
"transferredToLabel": "section 10105 of Title 34",
"issueDate": "1999-05-25",
"issueDateRaw": "<string>",
"crossReferencesCfr": [
"<string>"
],
"crossReferencesUsc": [
"<string>"
],
"statutoryAuthority": [
{}
],
"implementingRegulations": [
{}
],
"frRegulationIdNumbers": [
"<string>"
],
"frDocketIds": [
"<string>"
],
"frEffectiveOn": "<string>",
"frCommentsCloseOn": "<string>",
"frSignificant": true,
"frCorrectionOf": "<string>",
"frCorrections": [
"<string>"
],
"frRegulationsDotGovUrl": "<string>",
"frRelatedDocuments": [
{
"actId": "<string>",
"citation": "<string>",
"title": "<string>",
"documentType": "<string>",
"publicationDate": "<string>"
}
],
"subject": "<string>",
"rescindedOn": "2016-07-01",
"rescindedOnRaw": "<string>",
"sourceCredit": "<string>",
"amendmentYears": [
123
],
"lastAmendedYear": 123,
"amendmentsCount": 123,
"currentThrough": "<string>",
"pendingAdoptions": [
{
"agency": "Department of Financial Services",
"effectiveDate": "2026-09-23",
"idNo": "DFS-23-26-00013-A",
"issueDate": "2026-09-23",
"scope": "part"
}
],
"adoptedAfterCurrentThrough": true,
"amendmentHistory": [
"<string>"
],
"sourceNote": "<string>",
"effectiveDate": "2002-11-25",
"effectiveDateRaw": "September 8, 1916",
"historyEffectiveDate": "2009-06-19",
"priorEffectiveDates": [
"<string>"
],
"history": "<string>",
"supersededBy": "<string>",
"supersedes": "<string>",
"ruleSet": "<string>",
"publicLaws": [
"<string>"
],
"federalRegisterCitations": [
"<string>"
],
"granuleId": "<string>",
"packageId": "<string>",
"htmlUrl": "<string>",
"pdfUrl": "<string>",
"xmlUrl": "<string>",
"textUrl": "<string>",
"docxUrl": "<string>",
"stateHtmlUrl": "<string>",
"govInfoHtmlUrl": "<string>",
"govInfoPdfUrl": "<string>",
"abstract": "This regulation extends time-limited tolerances for pesticides.",
"agencies": [
"Environmental Protection Agency"
],
"agencySlugs": [
"environmental-protection-agency"
],
"topics": [
"Environmental protection",
"Pesticides and pests"
],
"documentTypeLabel": "Rule",
"documentSubtype": "Proclamation",
"action": "Final rule.",
"president": "George W. Bush",
"signingDate": "2026-04-02",
"signingDateRaw": "<string>",
"datesText": "This regulation is effective December 14, 2001.",
"frVolume": 66,
"frStartPage": 64768,
"frEndPage": 64775,
"wordCount": 6271,
"issuingAgency": "Pollution Control Board",
"adoptingCitations": [
"37 Ill. Reg. 16539"
],
"lawImplemented": "Section 4656.1, Public Resources Code",
"lastAmendedDate": "2013-10-04",
"lastAmendedDateRaw": "<string>",
"amendmentNote": "Amended at 37 Ill. Reg. 16539, effective October 4, 2013",
"currencyYear": 2025,
"reviewDate": "11/1/2028",
"reviewDateRaw": "<string>",
"originalEnactmentDate": "1934-06-27",
"originalEnactmentDateRaw": "June 27, 1934",
"releaseDate": "2018-06-14",
"releaseDateRaw": "<string>",
"documentNumber": "21-CA-211066",
"caseName": "Dunn-Edwards Corp.",
"forum": "Administrative Proceeding",
"court": "U.S. District Court for the District of Massachusetts",
"relatedDocuments": [
"Consent Order",
"Stipulation"
],
"settlementAmount": "$16,500",
"requesters": [
"Preece, Inc."
],
"program": "Old-Age and Survivors Insurance",
"languageCode": "es",
"volume": 1,
"articleNumber": "1",
"articleName": "Declaration of Rights",
"ruleSetCode": "NDSUPCTADMINR",
"edition": "2025",
"relatedCitations": [
"RCW 28A.150.290"
],
"supersessionActions": {
"modifies": [
"Rev. Proc. 2011-47"
]
},
"licenseNote": "MIT (reglab/statecodes)",
"subtitle": "11",
"subtitleName": "AIR QUALITY",
"publisherKey": "430000000310400000000000000000000",
"versionId": "11948",
"referencedShortTitles": [
"Driftnet Modernization and Bycatch Reduction Act"
],
"subjectNumber": "47",
"audience": "All Persons Engaged in Marketing",
"sourceCharStart": 263194,
"sourceCharEnd": 264198,
"alternateCitations": [
"4 L.P.R.A. § 2077"
],
"expirationDate": "2029-03-01",
"expirationDateRaw": "03-01-2029",
"committeeNote": "<string>",
"sourcePageStart": 114,
"sourcePageEnd": 114,
"displayLabel": "MPEP § 2165.03",
"publicationDate": "2001-12-14",
"publicationDateRaw": "<string>",
"publicLawCites": [
{}
],
"topLevelTitle": "Title 9: Criminal",
"externalUrl": "https://www.mass.gov/regulations/240-CMR-200-licensure-of-cosmetologists",
"sourceUrl": "https://www.mass.gov/regulations/240-CMR-200-licensure-of-cosmetologists"
},
"subsection": "<string>",
"citationOutsideFilters": {
"actId": "USC_T42_C21_S1983",
"citation": "42 U.S.C. § 1983 (2026)",
"title": "Civil action for deprivation of rights",
"state": "federal",
"corpusType": "USC",
"excludedBy": [
"state"
]
},
"matchedCorpus": "session_law",
"sessionLaw": {
"status": "matched",
"sessionLawId": "SSL_MN_2025R_G_Y2025_C1",
"citation": "CHAPTER 1--S.F.No. 1552",
"jurisdiction": "mn",
"session": {
"code": "2025R",
"label": "2025 Regular Session",
"type": "regular",
"year": 2025
},
"textStatus": "held",
"title": "An act relating to agriculture; modifying financial reporting requirements for grain buyers; amending Minnesota Statutes 2024, section 223.17, subdivision 6.",
"billNumber": "S.F.No. 1552",
"approvedDate": "2025-03-17",
"effectiveFirst": "2025-09-01",
"effectiveLast": "2025-09-01",
"enactmentOutcome": "signed",
"sourceUrl": "https://www.revisor.mn.gov/laws/2025/0/Session+Law/Chapter/1/",
"href": "/api/v1/us/session-laws/SSL_MN_2025R_G_Y2025_C1",
"candidates": [
{
"sessionLawId": "SSL_MN_2025R_G_Y2025_C1",
"jurisdiction": "mn",
"session": {
"code": "2025R",
"label": "2025 Regular Session",
"type": "regular",
"year": 2025
},
"textStatus": "held",
"href": "/api/v1/us/session-laws/SSL_MN_2025R_G_Y2025_C1",
"citation": "CHAPTER 1--S.F.No. 1552",
"title": "An act relating to agriculture; modifying financial reporting requirements for grain buyers; amending Minnesota Statutes 2024, section 223.17, subdivision 6.",
"billNumber": "S.F.No. 1552",
"approvedDate": "2025-03-17",
"effectiveFirst": "2025-09-01",
"effectiveLast": "2025-09-01",
"enactmentOutcome": "signed",
"sourceUrl": "https://www.revisor.mn.gov/laws/2025/0/Session+Law/Chapter/1/",
"isDefault": false
}
],
"defaultSessionLawId": null
},
"matchLevel": "container",
"container": {
"kind": "chapter",
"label": "U.S. Const. art. III",
"childCount": 12,
"children": [
{
"actId": "CONST_US_A3_S1",
"citation": "U.S. Const. art. III, § 1",
"status": "in_force"
}
],
"truncated": false
},
"citedSections": [
"<string>"
],
"repair": {
"kind": "code_name",
"cited": "Jud. Ct. Acts Law",
"interpretedAs": "N.Y. Judiciary Law § 475",
"alternatives": [
{
"actId": "STATE_NY_FCT_S475",
"citation": "N.Y. Fam. Ct. Act § 475"
}
]
},
"registerReference": {
"citation": "36 Pa. Bull. 510",
"state": "il",
"kind": "page",
"ruleCount": 2,
"rules": [
"<string>"
],
"registerItemHeld": false
},
"missReason": "ambiguous_jurisdiction",
"candidates": [
{
"state": "co",
"actId": "REG_CO_T8_S1206-2",
"citation": "8 CCR 1206-2",
"subsection": "<string>"
}
],
"missReasonHint": "<string>"
}
],
"resolvedCount": 2,
"count": 3,
"processingTimeMs": 610.2,
"creditsConsumed": 6
}{
"detail": "Insufficient API credits.",
"errors": [
{
"loc": [
"body",
"corpusType"
],
"msg": "Input should be 'USC', 'CFR' or 'STATE'",
"type": "literal_error"
}
]
}{
"detail": "Insufficient API credits.",
"errors": [
{
"loc": [
"body",
"corpusType"
],
"msg": "Input should be 'USC', 'CFR' or 'STATE'",
"type": "literal_error"
}
]
}{
"detail": "Insufficient API credits.",
"errors": [
{
"loc": [
"body",
"corpusType"
],
"msg": "Input should be 'USC', 'CFR' or 'STATE'",
"type": "literal_error"
}
]
}{
"detail": "Insufficient API credits.",
"errors": [
{
"loc": [
"body",
"corpusType"
],
"msg": "Input should be 'USC', 'CFR' or 'STATE'",
"type": "literal_error"
}
]
}Authorizations
API key issued from the developer dashboard. Pass as Authorization: Bearer vq_key_... (preferred).
Body
Batch citation resolution. See POST /us/statutes/resolve.
/resolve took 1,159 calls in the 16 days to 2026-08-31, second only to
search, and every one of them carried a single citation. The caller shape it
is actually serving is an agent handed a brief, a memo or a model's output
with thirty citations in it, doing thirty round trips to check them.
Bluebook citation strings to resolve. Duplicates are collapsed FIRST and order is preserved, so the response's results array lines up with the de-duplicated input.
The cap is 50 UNIQUE citations, applied after that collapse, so a brief quoting one section sixty times is one citation and is accepted. 500 is the raw list ceiling, which exists so an unbounded list of duplicates cannot make us walk it.
Priced PER CITATION at the single-resolve rate, exactly like POST /us/statutes/sections: batching is a round-trip and latency win, not a discount. Thirty citations cost the same 60 credits either way and take one request instead of thirty.
1 - 500 elements[ "42 U.S.C. 1983", "16 C.F.R. 444.1", "Cal. Civ. Code 1950.5" ]
Optional jurisdiction to resolve every citation WITHIN: a two-letter state code, or federal for the U.S. Code, the C.F.R., federal rules and the U.S. Constitution. Applies to the whole batch: a batch spanning jurisdictions should omit it and let each citation name its own. Same semantics as the single-citation route -- a constraint, not a hint.
federal, al, ak, as, az, ar, ca, co, ct, de, dc, fl, ga, gu, hi, id, il, in, ia, ks, ky, la, me, md, ma, mi, mn, ms, mo, mt, ne, nv, nh, nj, nm, ny, nc, nd, mp, oh, ok, or, pa, pr, ri, sc, sd, tn, tx, ut, vt, vi, va, wa, wv, wi, wy 2 - 7"ca"
Optional corpus to resolve every citation WITHIN: STATE (statutory text, federal or state), REGULATION (administrative codes), STATE_RULES (court rules), CONSTITUTION (constitutional text), STATE_CONSTITUTION (constitutional text; a synonym of CONSTITUTION here, since state is what separates the two). Same semantics as the single-citation route.
CONSTITUTION, REGULATION, STATE, STATE_CONSTITUTION, STATE_RULES "REGULATION"
Response
One verdict per submitted citation, in order.
Response for POST /us/statutes/resolve.
One entry per de-duplicated input citation, in the order supplied. An unresolved citation is an entry with resolved: false, never an omission: a caller checking thirty citations needs to know which of them failed, and a shorter array cannot say.
Show child attributes
Show child attributes
How many of the submitted citations resolved to a code section. A citation answered only by a sessionLaw block is not counted.
2
Total entries in results, after de-duplication.
3
Server-side time for this request in milliseconds.
610.2
Credits actually charged. Read it rather than multiplying the list price by your input length: a backend failure on some citations refunds those, so this can be lower than 2 x count.
6
Was this page helpful?

