Skip to main content
This guide takes you from zero to your first grounded statute answer. You will search the corpus, take an actId from the results, fetch that section’s metadata and full text, and discover what is queryable. Every path is prefixed with /api/v1 and every request needs an Authorization: Bearer vq_key_... header.
1

Get an API key

Create a key in your dashboard under API Keys. Copy it once, it will not be shown again. See Authentication for details.
2

Make your first search

Send a natural language query to POST /statutes/search. Scope it with corpusType and state for tighter results.
A trimmed response looks like this. The top-level fields describe the page, and each results entry carries a citation, an excerpt, and links to the official source.
total is the count returned on this page, not the corpus-wide match count. Use hasMore to decide whether to fetch the next page. See Pagination.
3

Fetch the section and its body

Take an actId from the results (for example USC_T42_C21_S1983). Call GET /statutes/section/{actId} for metadata, and GET /statutes/section/{actId}/body for the full text.
The body endpoint returns html and plain text plus an available flag and a source.
4

Discover coverage

The corpus grows weekly. Call GET /statutes/coverage to see the corpus legend and, for each jurisdiction, which corpusType tokens have data. Pass one of those tokens back into /statutes/search.

Next steps

Pagination

Page through search results with limit, offset, and hasMore.

Rate limits

Per-plan limits and how to back off on a 429.

Best practices

Scope queries, cache coverage, and handle errors well.