OpenLaws is a Public Benefit Corporation that provides programmatic access to U.S. law text — federal and state statutes, regulations, constitutions, and case law — through a unified Legal Data API. The platform exposes keyword and citation search, hierarchical division retrieval, historical versions with redline comparisons, citation parsing and validation, and deep links to authoritative government sources. Coverage spans 53 U.S. jurisdictions (50 states + D.C. + Puerto Rico + Federal) with more than 4.3 million law sections under a single data model, targeted at RegTech, LegalTech, GRC / IRM, generative AI / RAG, and legal research workloads.
1 APIs0 Features
LegalLawStatutesRegulationsConstitutionsCase LawCitationsSearchRAGLegalTechRegTechComplianceGRCGovernment Data
The OpenLaws Legal Data API exposes statutes, regulations, constitutions, and case law across 53 U.S. jurisdictions through a unified data model. It supports keyword and BM25 / ...
opencollection: 1.0.0
info:
name: OpenLaws API Documentation
version: 1.0.4
request:
auth:
type: bearer
token: '{{bearerToken}}'
items:
- info:
name: Jurisdictions
type: folder
items:
- info:
name: List all Jurisdictions
type: http
http:
method: GET
url: https://api.openlaws.us/api/v1/jurisdictions
docs: Returns all valid jurisdictions, coverage data, and metadata for OpenLaws Jurisdictions
- info:
name: Law Divisions
type: folder
items:
- info:
name: Get a specific Law's Root Divisions
type: http
http:
method: GET
url: https://api.openlaws.us/api/v1/jurisdictions/:jurisdiction_key/laws/:law_key/divisions
params:
- name: jurisdiction_key
value: ''
type: path
description: Two to three letter Jurisdiction Key. `FED` for federal and generally, the postal abbreviation for most
U.S. states and territories.
- name: law_key
value: ''
type: path
description: A unique identifier for OpenLaws Laws. A `law_key` is a combination of a jurisdiction_key and an abbreviation
of a law type joined by a '-' character.
docs: Root divisions are top of the document hierarchy for a law. Typically, these documents are Titles or Agency document
types.
- info:
name: Get Division by Jurisdiction and OpenLaws path
type: http
http:
method: GET
url: https://api.openlaws.us/api/v1/jurisdictions/:jurisdiction_key/laws/:law_key/divisions/:path
params:
- name: jurisdiction_key
value: ''
type: path
description: Two to three letter Jurisdiction Key. `FED` for federal and generally, the postal abbreviation for most
U.S. states and territories.
- name: law_key
value: ''
type: path
description: A unique identifier for OpenLaws Laws. A `law_key` is a combination of a jurisdiction_key and an abbreviation
of a law type joined by a '-' character.
- name: path
value: ''
type: path
description: An OpenLaws field that describes the Division's relationship to other documents in the law's hierarchy.
Combined with the law_key and effective_date_* fields this creates a unique key for Divisions.
docs: A precise way of retrieving one Division object with its unique path
- info:
name: (Enterprise Only) Get a list of Divisions that were created or updated after a date.
type: http
http:
method: GET
url: https://api.openlaws.us/api/v1/jurisdictions/:jurisdiction_key/laws/:law_key/divisions/updates
params:
- name: jurisdiction_key
value: ''
type: path
description: Two to three letter Jurisdiction Key. `FED` for federal and generally, the postal abbreviation for most
U.S. states and territories.
- name: law_key
value: ''
type: path
description: A unique identifier for OpenLaws Laws. A `law_key` is a combination of a jurisdiction_key and an abbreviation
of a law type joined by a '-' character.
- name: updated_after
value: ''
type: query
description: Return list of Divisions updated AFTER this ISO Date (UTC). Date must be within 90 days of the current
date.
- name: limit
value: ''
type: query
description: Maximum number of results to return
- name: page
value: ''
type: query
description: Combines with `limit` to implement cursor-based pagination. This parameter sets the cursor to the next
page of data.
docs: This query returns a list of DivisionUpdate objects which are a lightweight subset of the Division. DivisionUpdates
contain the law_key, path, and effective dates to identify Division which can be queried further for changes. Note that
changes to Divisions may not be material. For example, the addition of whitespace or correction of a minor typo from
the source text is considered an update. Pagination is supported using RFC-8288 HTTP Headers (https://datatracker.ietf.org/doc/html/rfc8288).
- info:
name: (Enterprise Only) Get a list of Divisions that were created or updated after a date within a subtree of Divisions.
type: http
http:
method: GET
url: https://api.openlaws.us/api/v1/jurisdictions/:jurisdiction_key/laws/:law_key/divisions/:starting_path/updates
params:
- name: jurisdiction_key
value: ''
type: path
description: Two to three letter Jurisdiction Key. `FED` for federal and generally, the postal abbreviation for most
U.S. states and territories.
- name: law_key
value: ''
type: path
description: A unique identifier for OpenLaws Laws. A `law_key` is a combination of a jurisdiction_key and an abbreviation
of a law type joined by a '-' character.
- name: updated_after
value: ''
type: query
description: Return list of Divisions updated AFTER this ISO Date (UTC). Date must be within 90 days of the current
date.
- name: starting_path
value: ''
type: path
description: The starting path to traverse down to find updated Divisions.
- name: limit
value: ''
type: query
description: Maximum number of results to return
- name: page
value: ''
type: query
description: Combines with `limit` to implement cursor-based pagination. This parameter sets the cursor to the next
page of data.
docs: This query returns a list of DivisionUpdate objects within the Division hierarchy beginning at starting_path. DivisionUpdates
contain the law_key, path, and effective dates to identify Division which can be queried further for changes. Note that
changes to Divisions may not be material. For example, the addition of whitespace or correction of a minor typo from
the source text is considered an update. Pagination is supported using RFC-8288 HTTP Headers (https://datatracker.ietf.org/doc/html/rfc82
- info:
name: Keyword Search within a Jurisdiction
type: http
http:
method: GET
url: https://api.openlaws.us/api/v1/jurisdictions/:jurisdiction_key/laws/search
params:
- name: jurisdiction_key
value: ''
type: path
description: Two to three letter Jurisdiction Key. `FED` for federal and generally, the postal abbreviation for most
U.S. states and territories.
- name: query
value: ''
type: query
description: One or more keywords to search by
- name: type
value: ''
type: query
description: Search type. Default is 'or'.
- name: with_federal
value: ''
type: query
description: When with_federal=`true` with a state jurisdiction_key argument, the Federal jurisdiction will also be
included in the search scope.
- name: limit
value: ''
type: query
description: Maximum number of results to return
docs: Heuristic keyword search within a specific Jurisdiction (and optionally, federal Laws at the same time with `with_federal`).
The search scope will include statutes, rules, regulations, and constitutions. See "Keyword Search Case Opinions" for
case law search.
- info:
name: Keyword Search within a Jurisdiction and a specific law_key for that Jurisdiction
type: http
http:
method: GET
url: https://api.openlaws.us/api/v1/jurisdictions/:jurisdiction_key/laws/:law_key/search
params:
- name: jurisdiction_key
value: ''
type: path
description: Two to three letter Jurisdiction Key. `FED` for federal and generally, the postal abbreviation for most
U.S. states and territories.
- name: law_key
value: ''
type: path
description: A unique identifier for OpenLaws Laws. A `law_key` is a combination of a jurisdiction_key and an abbreviation
of a law type joined by a '-' character.
- name: query
value: ''
type: query
description: One or more keywords to search by
- name: type
value: ''
type: query
description: Search type. Default is 'or'.
- name: limit
value: ''
type: query
description: Maximum number of results to return
docs: 'Heuristic keyword search within a specific Jurisdiction and a specific type of law for that jurisdiction, ex: Jurisdiction=TX
and law_key=TX-CONST (constitution)'
- info:
name: Lookup by Jurisdiction and Bluebook legal citation for a statute, regulation, or constitution
type: http
http:
method: GET
url: https://api.openlaws.us/api/v1/jurisdictions/:jurisdiction_key/laws/citations
params:
- name: jurisdiction_key
value: ''
type: path
description: Two to three letter Jurisdiction Key. `FED` for federal and generally, the postal abbreviation for most
U.S. states and territories.
- name: query
value: ''
type: query
description: Bluebook legal citation for a statute, code, rule, regulation, or constitution
docs: We highly recommend this method of looking up Divisions when legal citations are available because it is the most
precise way to identify relevant documents.
- info:
name: Laws
type: folder
items:
- info:
name: Get Laws by Jurisdiction
type: http
http:
method: GET
url: https://api.openlaws.us/api/v1/jurisdictions/:jurisdiction_key/laws
params:
- name: jurisdiction_key
value: ''
type: path
description: Two to three letter Jurisdiction Key. `FED` for federal and generally, the postal abbreviation for most
U.S. states and territories.
docs: Jurisdictions, i.e., California, Texas, Federal, contain many laws, e.g., statutes, regulations, court rules, and
a constitution.
- info:
name: Get all Laws
type: http
http:
method: GET
url: https://api.openlaws.us/api/v1/laws
docs: Laws in OpenLaws represent statutes, rules and regulations, and constitutions
- info:
name: Courts
type: folder
items:
- info:
name: Get Courts by Jurisdiction
type: http
http:
method: GET
url: https://api.openlaws.us/api/v1/jurisdictions/:jurisdiction_key/courts
params:
- name: jurisdiction_key
value: ''
type: path
description: Two to three letter Jurisdiction Key. `FED` for federal and generally, the postal abbreviation for most
U.S. states and territories.
docs: Lists all the active and inactive courts for a Jurisdiction. Note that federal bankruptcy courts are separate from
federal courts.
- info:
name: Get single Court
type: http
http:
method: GET
url: https://api.openlaws.us/api/v1/jurisdictions/:jurisdiction_key/courts/:court_key
params:
- name: jurisdiction_key
value: ''
type: path
description: Two to three letter Jurisdiction Key. `FED` for federal and generally, the postal abbreviation for most
U.S. states and territories.
- name: court_key
value: ''
type: path
description: Unique identifier for a Court. See the /jurisdictions/{jurisdiction_key}/courts endpoint for possible
values.
docs: Returns a single court identified by the court_key. Court key is also the unique identifier in the CourtListener
data set.
- info:
name: Opinions
type: folder
items:
- info:
name: Keyword Search Case Opinions
type: http
http:
method: GET
url: https://api.openlaws.us/api/v1/jurisdictions/:jurisdiction_key/opinions/search
params:
- name: jurisdiction_key
value: ''
type: path
description: Two to three letter Jurisdiction Key. `FED` for federal and generally, the postal abbreviation for most
U.S. states and territories.
- name: query
value: ''
type: query
description: One or more keywords to search by
- name: type
value: ''
type: query
description: Search type. Default is 'or'.
- name: with_federal
value: ''
type: query
description: When with_federal=`true` with a state jurisdiction_key argument, the Federal jurisdiction will also be
included in the search scope.
- name: filing_start_date
value: ''
type: query
description: Filter opinions to those that were filed on or after this ISO date.
- name: filing_end_date
value: ''
type: query
description: Filter opinions to those that were filed before or on this ISO date.
- name: court_keys
value: ''
type: query
description: Comma delimited list of court_keys. See GET /jurisdictions/{jurisdiction_key}/courts for valid court_keys.
For the FED jurisdiction, 'first_circuit'...'eleventh_circuit', 'dc_circuit', and 'federal_circuit' are also valid
values which expand to all courts in that circuit.
- name: limit
value: ''
type: query
description: Maximum number of results to return
docs: BM25 keyword search of case opinion text.
- info:
name: Lookup Case Opinion by Jurisdiction and Bluebook legal citation for a case
type: http
http:
method: GET
url: https://api.openlaws.us/api/v1/jurisdictions/:jurisdiction_key/opinions/citations
params:
- name: jurisdiction_key
value: ''
type: path
description: Two to three letter Jurisdiction Key. `FED` for federal and generally, the postal abbreviation for most
U.S. states and territories.
- name: query
value: ''
type: query
description: Bluebook legal citation for a case
docs: Long form with parties or short form of case citations (volume-number reporter-abbreviation first-page-number) will
work.
bundled: true