Skip to main content
Start from a plain-language obligation like “breach notification timelines” and end with the governing sections: federal regulations, agency guidance, and the relevant state rules, each with its citation and a link to the official source. This is the backbone of a RegTech or compliance-mapping feature. Endpoints used: POST /statutes/search, GET /statutes/section/{actId}/body, GET /statutes/coverage (to discover which corpora a jurisdiction has).
Vaquill returns the authoritative regulatory text and links back to the official government source. It supports building a compliance map, it does not render a compliance determination. Pair it with review by qualified counsel.

The flow

1

Pick the corpora that govern the obligation

A regulatory obligation usually lives across several corpora: CFR (federal regulations), FEDERAL_REGISTER (agency rules), AGENCY_GUIDANCE (rulings and notices), and REGULATION (state administrative rules, paired with a state).
2

Search each corpus for the obligation

Run POST /statutes/search once per corpus, using the same plain-language query. Collect the top governing sections from each.
3

Pull the text and group the results

Fetch each section’s full text with GET /statutes/section/{actId}/body, then group by corpusType and jurisdiction so the map reads by source of authority.
4

Present with citations and official links

Show each section with its citation and the official government URL so a reviewer can open the primary source.

Step 1: search across the regulatory corpora

Not sure which corpora a state has? Call GET /statutes/coverage and read the jurisdiction’s corpora keys, then pass one as corpusType. State regulations (REGULATION) are ingested for a subset of states, so check before you scope to one.

Step 2 and 3: collect, fetch text, and group

Python
A grouped result reads by source of authority:

Notes for a production compliance map

Once you have the grouped, cited text, you can pass it to an LLM in your stack to produce a plain-language summary of each obligation, one that cites each section and links its official source. Use the strict grounding pattern in Ground an LLM answer in statutes so the summary quotes only the retrieved regulatory text.
REGULATION is state-scoped: always pair it with a two-letter state code. Coverage spans a subset of states and expands weekly, so drive the state list from GET /statutes/coverage rather than assuming every state is present.

Ground an LLM answer (RAG)

Summarize the mapped obligations with strict, cited grounding.

Resolve a citation

Verify a specific regulation citation and pull its text.

Grounding LLMs

The principles behind grounding legal AI on primary sources.

API Coverage

Which corpora and jurisdictions are ingested, with live counts.