eCFR Regulations Search & Export avatar

eCFR Regulations Search & Export

Pricing

from $2.40 / 1,000 regulation sections

Go to Apify Store
eCFR Regulations Search & Export

eCFR Regulations Search & Export

Search eCFR regulations by query or export a title/part. Get citations, headings, full section text, snapshot dates and official source URLs for recurring compliance research.

Pricing

from $2.40 / 1,000 regulation sections

Rating

0.0

(0)

Developer

Automation Lab

Automation Lab

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Search eCFR regulations or export numbered sections from a CFR title and part for recurring compliance research. Each dataset row includes the citation, heading, complete plain-text regulation, snapshot date and authoritative source links. No source account, API key or proxy is required.

Who is it for?

Compliance analysts can build repeatable section datasets; legal researchers can retrieve citation-linked text; data engineers can load federal regulations into internal research indexes. This Actor retrieves source material, not legal conclusions.

Why use this Actor?

Search snippets are useful for discovery but insufficient for reviewing a provision. This Actor fetches the complete section XML after discovery, keeps the search and text on the same dated snapshot, deduplicates citations and exports typed rows. Direct section lookup avoids irrelevant search matches when you already know the citation.

Getting started

  1. Enter a search query such as airworthiness.
  2. Optionally restrict output to title 14.
  3. Set maxItems, initially 3, and start the Actor.
  4. Review citations and full text in the dataset, then export JSON, CSV or Excel.
{"query":"airworthiness","title":14,"maxItems":3}

Search eCFR regulations

The query is passed to the official full-text search service. It may match regulation text or hierarchical headings, with upstream relevance ordering. It is not a local substring match or a guarantee that every returned section body contains the literal query. Title and part restrictions are checked locally before retrieving details. Broad queries with restrictive filters can require many search pages.

Search is date-bound: omitting a date uses source currency, not the machine's current date. This avoids accidentally returning historical versions mixed with current text.

Title, part and explicit-section export

Omit query and supply title to export numbered sections in source hierarchy order. Add part to restrict that export. When you know the required sections, supply sections instead:

{"title":14,"part":"21","sections":["21.175","21.325"],"maxItems":2}

A query cannot be combined with explicit sections. Duplicate section numbers are emitted once. Missing explicit sections fail rather than being silently ignored.

Input parameters

FieldMeaning
queryOptional nonempty official full-text query; provide query or title.
titleNumeric CFR title 1–50; reserved title 35 is rejected. Required for export and explicit sections.
partExact numeric part string; requires title and applies in both search/export routes.
sections1–100 section numbers, requiring title and no query. Must match supplied part.
dateSupported YYYY-MM-DD snapshot, defaulting to title currency or earliest currency across titles. Future dates fail.
maxItemsGlobal accepted unique section limit, default 10, range 1–1000. Zero/unlimited is unsupported.

Extracted data

FieldMeaning
citation, section, partStable CFR citation and identifiers.
title, titleNameNumeric title and official name.
heading, textSection heading and complete plain text including notes, table cells and amendment citations.
dateSnapshot used for search and XML.
latestAmendedOnLatest amendment date for the entire title, not the individual section.
sourceUrl, xmlUrlDated section page and original XML endpoint.
queryTrimmed search query, null in export mode.
scrapedAtUTC retrieval timestamp.

Output example

Abbreviated from a real section lookup; actual text contains the complete section:

{
"citation":"14 CFR 21.175",
"title":14,
"titleName":"Aeronautics and Space",
"part":"21",
"section":"21.175",
"heading":"§ 21.175 Airworthiness certificates: classification.",
"text":"§ 21.175 Airworthiness certificates: classification.\n\n(a) Standard airworthiness certificates are airworthiness certificates issued for aircraft type certificated: ...",
"date":"2026-09-29",
"latestAmendedOn":"2026-09-29",
"sourceUrl":"https://www.ecfr.gov/on/2026-09-29/title-14/section-21.175",
"xmlUrl":"https://www.ecfr.gov/api/versioner/v1/full/2026-09-29/title-14.xml?section=21.175",
"query":null,
"scrapedAt":"2026-10-01T20:00:00.000Z"
}

How much does it cost to export eCFR regulation sections?

Pay-per-event pricing includes a $0.05 one-time start fee and one item event per saved regulation section. Search and source retrieval are included in the section charge. An empty successful search has only the start fee. Your Apify plan's platform usage may also apply.

PlanPrice per section
FREE$0.0046
BRONZE$0.004
SILVER$0.00312
GOLD / PLATINUM / DIAMOND$0.0024

At BRONZE, 1 section costs $0.054, 10 cost $0.09 and 100 cost $0.45 in Actor event charges. Use a small limit before scheduling a broad export.

Limits and reliability

Only numbered Section entities are exported. Appendices, removed search results and reserved sections are excluded. Large sections retain their entire body, but XML typography and table layout are flattened. Source dates and historical coverage are controlled by eCFR; unsupported snapshots may fail.

Requests are sequential and transient network, 429 or server errors receive up to three attempts with backoff. Permanent errors and invalid XML fail the run. A failed run can retain already saved rows and their charges; it does not silently become an empty success.

Integrations

Schedule recurring runs using Apify Tasks and compare citation plus text in your own pipeline. Send CSV exports to spreadsheets or JSON records to a compliance database. The Actor itself does not implement alerts, change detection, interpretation or a monitoring service.

Full text is suitable for internal retrieval indexes. Keep the source URL, snapshot date and citation alongside each indexed chunk so reviewers can verify provenance.

API usage

Replace YOUR_APIFY_TOKEN with your Apify token, not a source credential.

curl -X POST 'https://api.apify.com/v2/acts/automation-lab~ecfr-regulations-search-export/run-sync-get-dataset-items' \
-H 'Authorization: Bearer YOUR_APIFY_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"query":"airworthiness","title":14,"maxItems":3}'

JavaScript with the Apify client:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/ecfr-regulations-search-export').call({ title: 14, part: '21', maxItems: 10 });
const { items } = await client.dataset(run.defaultDatasetId).listItems();

Python:

import os
from apify_client import ApifyClient
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/ecfr-regulations-search-export').call(run_input={'title': 14, 'sections': ['21.175'], 'maxItems': 1})
items = client.dataset(run['defaultDatasetId']).list_items().items

MCP access

Once the Actor is available to your account, configure the official hosted Apify MCP endpoint:

$claude mcp add --transport http apify "https://mcp.apify.com?tools=automation-lab/ecfr-regulations-search-export"

Equivalent Claude Desktop, Cursor, and VS Code client configuration:

{"mcpServers":{"apify":{"url":"https://mcp.apify.com?tools=automation-lab/ecfr-regulations-search-export"}}}

Example prompt: “Retrieve 14 CFR 21.175 and 21.325 with full regulation text and dated source links.” Hosted availability and authentication depend on your client and Apify account.

Legality and responsible use

The eCFR is continuously updated but is not the official legal edition of the CFR. Confirm legal requirements with authoritative publications and qualified counsel. This Actor is not affiliated with the U.S. government. Use reasonable limits and respect source availability and terms.

FAQ and troubleshooting

Why is the snapshot date earlier than today? The Actor uses the source's published currency, which can lag the calendar.

Why does a heading match a query absent from the body? Official search also considers hierarchy headings. Inspect complete text before drawing conclusions.

Why did my explicit section fail? Check the title, section identifier and historical snapshot. An unavailable section is an error, not a blank record.

Can I export an entire title? The run stops at maxItems (at most 1000). It does not promise unlimited title coverage. Narrow to parts for repeatable bounded datasets.

Does this detect regulatory changes? No. Schedule snapshots and compare them externally. latestAmendedOn is title-level metadata and cannot identify section-level changes.

Data handling, retention and support

No AI is used during execution. Your query and requested section scope are sent to the official eCFR API. Output contains public regulation text, not scraped user profiles. Input, dataset records and run logs are stored by Apify under your account retention settings until deleted; no custom cross-run cache is created. Delete associated storage when removing a research dataset. Do not put secrets or personal information in search queries. For help, open an Actor issue on Apify with the run link and input, excluding credentials.