Statutes at Large API: Reading Federal Law As Enacted

The United States Code is a compilation. The United States Statutes at Large is the enactment. Congress passes a public law with its own section numbering, and only afterward does an editor decide where each provision belongs in the Code, which means a large amount of real, binding federal law never gets a US Code citation at all. Vaquill AI serves that layer as corpusType=SESSION_LAW: 5,256 public and private laws, 110,287 sections, refreshed weekly, with the round trip from a codified USC section back to the text Congress actually voted on. If you have ever hunted for an effective-date clause and found nothing in the Code, this post is why.

TL;DR

  • The Code is edited, the Statutes at Large is enacted. Congress numbers sections its own way. The Office of the Law Revision Counsel then decides which Code title each provision lands in, and some provisions land nowhere.
  • The evidentiary weight differs and it is written into statute. Under 1 U.S.C. 112 the Statutes at Large is legal evidence of laws. Under 1 U.S.C. 204 a Code title enacted into positive law is legal evidence, and the rest of the Code is only prima facie evidence.
  • Effective dates, savings clauses, findings, and sunsets often never enter the Code. They stay in the session law, sometimes surfacing as a Code note, sometimes not at all.
  • The corpus covers 113th through 119th Congresses, public and private laws, with a weekly refresh and a stable actId per section.
  • Round trip: a USC section carries publicLawCites, and each of those resolves to the enacting text in SESSION_LAW. Worked example below with the CARES Act.
  • These items carry actStatus: "enacted" and goodLawStatus: "unknown" on purpose. Law as enacted is a historical record. For current law, query corpusType=USC.

Three cards reading 110,287 session law sections, the 113th to 119th Congresses, and 1 U.S.C. 112 as legal evidence.

4-question check
Question 1 of 4

Which is the enactment rather than a compilation?

Part of our US primary law corpus series, a source-by-source walk through what the corpus holds.

Its nearest neighbor is Executive Orders API: Presidential Documents, Refreshed Daily, the other federal-as-issued corpus. GovInfo Is Free and Authoritative. Here Is What You Still Have to Build. covers the publisher these volumes come from.

The distinction almost every developer gets wrong

Most legal-tech integrations treat "federal statute" as a synonym for "US Code section." That works until it does not, and when it fails it fails quietly.

Here is the actual sequence. Congress passes a bill, the President signs it, and it becomes a public law with a number like Pub. L. 116-136. That law has its own internal structure: divisions, titles, and sections numbered by Congress for that law alone.

The public law is printed as a slip law and then bound into the Statutes at Large in order of enactment. Nothing about that arrangement is by subject. Volume order is chronological, because the Statutes at Large is a record of what happened, not a filing system.

Then the Office of the Law Revision Counsel of the House takes over. OLRC reads the new law and decides, provision by provision, where it belongs in the fifty-plus titles of the US Code. One public law can scatter across a dozen titles.

Loading diagram...
US CodeStatutes at Large
What it isCompilation of general and permanent law, by subjectThe laws as enacted, in order of enactment
Who produces itOffice of the Law Revision CounselOffice of the Federal Register, from enrolled bills
ArrangementTitle, chapter, sectionVolume, page, public law number
NumberingEditorial, assigned by OLRCCongressional, assigned in the bill
Changes over timeYes, it is updated as law changesNo, an enacted law is fixed
Evidentiary weightLegal evidence for positive-law titles, prima facie otherwise (1 U.S.C. 204)Legal evidence (1 U.S.C. 112)
corpusTypeUSCSESSION_LAW

Why the evidentiary gap has teeth

This is not a librarian's distinction. It is written into the Code itself.

1 U.S.C. 112 provides that the Statutes at Large "shall be legal evidence of laws, concurrent resolutions, treaties, international agreements other than treaties, proclamations by the President, and proposed or ratified amendments to the Constitution of the United States therein contained, in all the courts of the United States."

1 U.S.C. 204 splits the Code in two. Where a title "shall have been enacted into positive law the text thereof shall be legal evidence of the laws therein contained." For every other title, the current edition and its supplement "establish prima facie the laws of the United States."

Congress has enacted some Code titles into positive law and left the rest as an editorial restatement. For a non-positive-law title, if the Code text and the Statutes at Large text disagree, the Statutes at Large wins.

What lives only in the session law

The practical reason to keep this corpus is not doctrine, it is the provisions that never make the trip into the Code.

  • Effective-date provisions. A law commonly says its provisions take effect on a date, or on a triggering event, or for tax years beginning after a date. That clause is frequently uncodified and appears in the Code, if at all, as a note.
  • Savings and transition clauses. Language preserving pending proceedings, prior rights, or existing contracts under the old rule. This is the clause litigators fight over and it very often lives only in the session law.
  • Sunset provisions. A program that expires on a date. If the sunset clause is uncodified, a reader of the Code section alone sees an operative program with no expiry.
  • Findings and statements of purpose. Congressional findings shape interpretation and are routinely dropped from the codified text.
  • Appropriations and one-time authority. Money and short-lived grants of authority are often not general and permanent law, so they are not codified at all.
  • Amendments phrased as instructions. Language in the form "section 5 of the prior Act is amended by striking subsection (b)" only makes sense read against the enacted text it operates on.

A compliance tool that reads only the Code will confidently miss every one of these. That is the failure mode this corpus exists to close.

The corpus

PropertyValue
corpusType tokenSESSION_LAW
Laws5,256 public and private laws
Sections110,287
Congresses113th to 119th
Date range2013 onward
RefreshWeekly
actStatusenacted
goodLawStatusunknown

For context, the federal side of the corpus totals 618,875 sections, of which USC is 60,170 and CFR is 219,114, the latter covered in CFR API: 219,114 Federal Regulation Sections, Refreshed Daily. The session-law layer at 110,287 sections is larger than the Code it feeds, which is what you would expect once you remember that a compilation keeps only what is general and permanent.

The round trip, with a real example

Start from the enacting text. Search the session-law corpus for a provision of the CARES Act, Pub. L. 116-136.

curl -s https://api.vaquill.ai/api/v1/us/statutes/search \
  -H "Authorization: Bearer $VAQUILL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "CARES Act section 1109 Treasury program management authority",
    "corpusType": "SESSION_LAW",
    "matchType": "any",
    "limit": 10
  }'

The identifier that comes back for CARES Act section 1109 is:

SAL_PL116-136_DVA_TII_S1109

Now fetch the section, and then its body.

curl -s https://api.vaquill.ai/api/v1/us/statutes/section/SAL_PL116-136_DVA_TII_S1109 \
  -H "Authorization: Bearer $VAQUILL_API_KEY"

curl -s https://api.vaquill.ai/api/v1/us/statutes/section/SAL_PL116-136_DVA_TII_S1109/body \
  -H "Authorization: Bearer $VAQUILL_API_KEY"

Going the other direction

A USC section carries publicLawCites, which names the public laws that produced its current text. That field is the bridge.

GET /us/statutes/section/{actId} -> publicLawCites: ["Pub. L. 116-136", ...]
POST /us/statutes/search -> corpusType: SESSION_LAW, query the cite
GET /us/statutes/section/{sessionActId} -> the text Congress voted on

The practical loop for a research tool looks like this:

  1. Resolve the user's citation to a USC section.
  2. Read publicLawCites off that section.
  3. For each cite, search SESSION_LAW and collect the actId values.
  4. Batch-fetch those sections in one call rather than N calls.
  5. Show the codified text and the enacting text side by side, each with its own official source link.

Every result carries the publisher's own URL, so a reviewer can open the government copy without trusting our rendering. That is the check that turns "the model said so" into "here is the page."

Why goodLawStatus is "unknown" and that is correct

Every SESSION_LAW item carries actStatus: "enacted" and goodLawStatus: "unknown". Both are deliberate, and the status and currency reference covers what each value means.

enacted is a statement of fact that never changes. Pub. L. 116-136 was enacted in 2020 and will still have been enacted in 2050. Nothing about that is a moving target.

unknown is the honest answer to a different question. Asking whether a 2020 session law is "good law" is a category error, because the enacted text is a fixed historical artifact and cannot itself go stale. What can go stale is the codified provision it created, and that lives in USC, where a good-law signal is meaningful.

The alternative would be to stamp a confident status on a historical record, which is exactly the kind of quiet wrong answer that ends up in a brief. A field that says "unknown" is worth more than a field that says something plausible and wrong.

The lag nobody plans for

There is a gap between enactment and codification, and it is where production bugs live.

A public law is enacted on a date. OLRC integrates it into the Code on its own editorial cycle, which is not same-day. In the interval, the Code shows the old text while the enacted law is already operative.

Our USC corpus reflects the 2024 edition, current through 2025-01-06, and is checked weekly for a new edition. The SESSION_LAW corpus refreshes weekly. Those two clocks are not the same clock, and any product that presents them as one is misleading someone.

The design that works: query USC for the codified rule, query SESSION_LAW for anything enacted after the Code's currency date, and show both dates in the UI. Never silently merge them. Legal Data Freshness: What Refresh Cadence Actually Means, Source by Source covers how to read a cadence claim.

Who should skip this corpus

  • You only need current, operative federal rules. Query USC and CFR and stop. Session law adds a layer you will not use.
  • You need pre-1999 federal law. The window starts at the 113th Congress. Older public laws are outside it, and govinfo publishes the historical Statutes at Large volumes for that work.
  • You want the legislative process. Bills, amendments, committee reports, and floor action are a different dataset. This corpus starts at the finished law.
  • You are tracking executive action rather than legislation. Orders and proclamations sit in a separate corpus, covered in the executive orders API guide.
  • You want a good-law verdict on enacted text. You will not get one, on purpose.

Where it earns its place is narrower: uncodified provisions, effective-date and savings clauses, and any workflow where a non-positive-law Code title needs to be checked against the enacted text.

Vaquill AI serves this alongside 4,150,839 sections of US primary law across 53 jurisdictions. The sourcing rule across those corpora is the government publisher's own site, and a commercial aggregator is never used as a source or as a fallback. Where a state's only consolidated text sits behind a commercial licensee, the corpus carries a declared gap instead of filling it. The collection layer is published at Vaquill-AI/open-us-law.

FAQ

What is the difference between the US Code and the Statutes at Large?

The Statutes at Large is the enactment: every public and private law printed in order of enactment, exactly as Congress passed it. The US Code is a compilation of the general and permanent parts of that law, rearranged by subject by the Office of the Law Revision Counsel. One is a record of what happened, the other is a subject index that gets edited over time.

Which one controls if the two disagree?

It depends on the title. Under 1 U.S.C. 204, a Code title enacted into positive law is legal evidence of the law it contains. For every other title, the Code is prima facie evidence, and under 1 U.S.C. 112 the Statutes at Large is legal evidence, so the enacted text controls.

What is a session law?

A session law is a law as passed during a session of a legislature, published in enactment order rather than by subject. At the federal level the session laws are the public and private laws collected in the United States Statutes at Large. States publish their own equivalents, usually called session laws or acts.

Why is some federal law missing from the US Code?

Because not every provision is general and permanent law. Appropriations, one-time authority, effective-date clauses, savings clauses, findings, and sunsets are frequently left uncodified. They are still binding law. They just live in the session law, and appear in the Code only as notes, if at all.

How do I find the public law behind a US Code section?

Read the publicLawCites field on the USC section, which names the public laws that produced its current text. Then search corpusType=SESSION_LAW for each of those cites to get the enacting text and its actId. Fetch the body from that id.

What does actId SAL_PL116-136_DVA_TII_S1109 refer to?

It is the stable identifier for section 1109 of the CARES Act, Pub. L. 116-136, in the session-law corpus. It is stable across refreshes but not guessable, so take it from a search or resolve response instead of constructing it from a citation.

Why does the API say goodLawStatus is unknown for session law?

Because law as enacted is a historical record, not a statement of current law. Whether a provision still operates is a question about the codified section, so query corpusType=USC for that. Marking an enacted law "good law" or "bad law" would assert something the record cannot support.

How current is the federal session-law data?

The SESSION_LAW corpus refreshes weekly. The USC corpus is the 2024 edition, current through 2025-01-06, and is checked weekly for a new edition. Those are two different clocks, so check GET /us/statutes/coverage, which reports what each corpus is current through in the publisher's own words.

Can I query federal law as it stood on a past date?

Versioning here runs off the amendment record rather than a date parameter. Every citation resolves to a single stored text, the live one, and no as_of parameter exists to ask for another. What exists is amendment history and lastAmendedYear per section, a yearFrom/yearTo currency filter, change events captured on each refresh, and per-section diffs on watched boards. The session-law corpus is the closest thing to a historical layer, because it preserves text as enacted. Amendment History and Point-in-Time Law: What a Legal API Can and Cannot Tell You explains why that distinction matters.

Are private laws included?

Yes. The 5,256 laws in the corpus are public and private laws. Private laws deal with individual parties rather than the general public, are rarely codified, and are easy to miss if your only source is the US Code.

The most complete US primary law API.
Every US statute, regulation, constitution, and executive order through one REST and MCP API. 4M+ sections, section-level citations, and links to the official source. Plus a free open dataset.
17 min read

New legal AI guides, weekly.

Priyansh Khodiyar

Priyansh Khodiyar

Co-Founder & CTO

Priyansh leads engineering and AI at Vaquill, from the matter workbench to drafting, document comparison, document matrix, and citation-verified research.