> ## Documentation Index
> Fetch the complete documentation index at: https://vaquill.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Catalog the bodies of law available

> List the distinct bodies of law available, each a whole corpus within a jurisdiction (a state's statutes, a state's regulations, the US Code, the US Constitution, federal court rules, ...). Every entry carries a stable `key`, its `corpusType` (pass to `/statutes/search`), a `lawType`, a human `name`, and a `sectionCount`.

Omit `jurisdiction` to list every jurisdiction, or pass one (a 2-letter state code or `federal`) to scope the list. To drill a state's statutes into its individual codes (Penal, Civil, ...), call `GET /statutes/divisions?corpusType=STATE&state=XX`.

**Free.** Requires an API key and is rate-limited, but costs no credits.



## OpenAPI

````yaml https://api.vaquill.ai/external/openapi.json get /api/v1/statutes/laws
openapi: 3.1.0
info:
  title: Vaquill Developer API
  description: >-
    Public API for legal statutes and legislation.


    **Authentication**: Pass your API key via the `Authorization: Bearer
    vq_key_...` header.


    **Credits**: Each call costs API credits. See `GET
    /api/v1/api-credits/pricing` for the full pricing matrix.


    ## Jurisdictions


    | Jurisdiction | Coverage | `countryCode` |

    |---|---|---|

    | **United States** | USC, CFR, nearly all 50 state statutory codes (plus DC
    and Puerto Rico), state constitutions, and court rules. | `US` |


    See the full [Coverage page](https://www.vaquill.ai/docs/coverage) for the
    jurisdiction-by-jurisdiction breakdown, or call `/statutes/states` for live
    counts.


    ## Endpoints


    - **US Statutes**: Search and retrieve USC, CFR, state statutes,
    constitutions, court rules, executive orders, and regulations with full text

    - **Pricing**: Credit costs per endpoint (no auth required)


    ## Rate limits


    Limits are enforced per API key and scale with your plan. A `429` response
    includes a `Retry-After` header.


    | Plan | Per minute | Per hour | Per day |

    |---|---|---|---|

    | API (1x) | 30 | 500 | 2,000 |

    | API Business (5x) | 150 | 2,500 | 10,000 |


    For full documentation, visit the [API
    Reference](https://www.vaquill.ai/docs/api-reference/).
  version: 1.0.0
  contact:
    name: Vaquill API Support
    url: https://www.vaquill.ai
    email: support@vaquill.ai
  license:
    name: Proprietary
    url: https://www.vaquill.ai/terms
  termsOfService: https://www.vaquill.ai/terms
servers:
  - url: https://api.vaquill.ai
    description: Production
security:
  - ApiKeyAuth: []
tags:
  - name: US Statutes
    description: >-
      Search and retrieve US statutes. Covers the United States Code (USC), Code
      of Federal Regulations (CFR), all 50 state statutes, constitutions, court
      rules, executive orders, Federal Register agency rules, agency guidance,
      and state regulations. Scope a search with the `corpusType` filter.


      - **Search**: Search across all USC, CFR, state, and regulatory sections

      - **Section**: Get metadata, citation, hierarchy, and source links for a
      specific section

      - **Body**: Get the full text of a section
  - name: Ask
    description: >-
      AI-powered US legal Q&A. Ask a question in plain language and get an
      answer grounded in 8M+ federal and state court opinions plus the US Code,
      the CFR, and all 50 state statute codes, returned with verified citations.
      Optionally scope to a single state with `usState`, filter sources with
      `sourcesFilter`, and pass `chatHistory` for multi-turn follow-ups.
  - name: Pricing
    description: >-
      Credit pricing and conversion rates. No authentication required. 1 credit
      = $0.01 USD.
externalDocs:
  description: Full API Reference
  url: https://www.vaquill.ai/docs/api-reference/
paths:
  /api/v1/statutes/laws:
    get:
      tags:
        - US Statutes
      summary: Catalog the bodies of law available
      description: >-
        List the distinct bodies of law available, each a whole corpus within a
        jurisdiction (a state's statutes, a state's regulations, the US Code,
        the US Constitution, federal court rules, ...). Every entry carries a
        stable `key`, its `corpusType` (pass to `/statutes/search`), a
        `lawType`, a human `name`, and a `sectionCount`.


        Omit `jurisdiction` to list every jurisdiction, or pass one (a 2-letter
        state code or `federal`) to scope the list. To drill a state's statutes
        into its individual codes (Penal, Civil, ...), call `GET
        /statutes/divisions?corpusType=STATE&state=XX`.


        **Free.** Requires an API key and is rate-limited, but costs no credits.
      operationId: list_statutes_laws_api_v1_statutes_laws_get
      parameters:
        - name: jurisdiction
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Optional jurisdiction filter: a 2-letter US state code (one of the
              52 supported) or `federal`. Omit to list every jurisdiction.
            examples:
              - ca
            enum:
              - federal
              - al
              - ak
              - az
              - ar
              - ca
              - co
              - ct
              - de
              - dc
              - fl
              - ga
              - hi
              - id
              - il
              - in
              - ia
              - ks
              - ky
              - la
              - me
              - md
              - ma
              - mi
              - mn
              - ms
              - mo
              - mt
              - ne
              - nv
              - nh
              - nj
              - nm
              - ny
              - nc
              - nd
              - oh
              - ok
              - or
              - pa
              - pr
              - ri
              - sc
              - sd
              - tn
              - tx
              - ut
              - vt
              - va
              - wa
              - wv
              - wi
              - wy
            title: Jurisdiction
          description: >-
            Optional jurisdiction filter: a 2-letter US state code (one of the
            52 supported) or `federal`. Omit to list every jurisdiction.
      responses:
        '200':
          description: The catalog of bodies of law.
          content:
            application/json:
              schema: {}
              example:
                data:
                  jurisdiction: ca
                  laws:
                    - key: ca-STATE
                      jurisdiction: ca
                      jurisdictionName: California
                      corpusType: STATE
                      lawType: statutes
                      name: California Statutes
                      sectionCount: 176778
                    - key: ca-REGULATION
                      jurisdiction: ca
                      jurisdictionName: California
                      corpusType: REGULATION
                      lawType: regulations
                      name: California Administrative Regulations
                      sectionCount: 51142
                  count: 2
                meta:
                  processingTimeMs: 12
                  creditsConsumed: 0
        '400':
          description: '`jurisdiction` is not a valid state code or `federal`.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiDetailError'
        '401':
          description: Invalid or missing API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiDetailError'
        '403':
          description: API key lacks `research:read` scope.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiDetailError'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
        '429':
          description: Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiDetailError'
components:
  schemas:
    ApiDetailError:
      properties:
        detail:
          type: string
          title: Detail
          description: >-
            Human-readable reason, safe to surface to an end user. Branch on the
            HTTP status rather than on this string: the wording is not part of
            the contract and may be reworded, but 401 (bad key), 402 (out of
            credits), 403 (missing scope), 404 (no such resource) and 429 (rate
            limited) are stable.
          examples:
            - Insufficient API credits.
      type: object
      required:
        - detail
      title: ApiDetailError
      description: |-
        Error envelope the API actually returns.

        All errors (401/402/403/404/422/429/5xx) come back as a single
        `detail` string (FastAPI default), e.g. `{"detail": "Insufficient API
        credits."}`. Documenting the real shape so client code can rely on it.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    ApiKeyAuth:
      type: http
      scheme: bearer
      bearerFormat: vq_key_*
      description: >-
        API key issued from the Vaquill developer dashboard. Pass as
        `Authorization: Bearer vq_key_...`

````