Congress.gov Bills Scraper avatar

Congress.gov Bills Scraper

Pricing

from $19.00 / 1,000 results

Go to Apify Store
Congress.gov Bills Scraper

Congress.gov Bills Scraper

Scrapes US federal bills and resolutions from Congress.gov by congress number and bill type. Returns each bill as a flat row with title, sponsor, latest action, and full legislative metadata.

Pricing

from $19.00 / 1,000 results

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

5 days ago

Last modified

Categories

Share

ParseForge

Congress.gov Bills Scraper

Scrape US federal bills and resolutions from Congress.gov by congress number, bill type, or sort order, up to a million per run. Every bill comes with its title, sponsor, latest action, and full legislative metadata. No complex API setup. Export to CSV, JSON, Excel, or XML.

The official Congress.gov API requires registration, key management, and careful pagination handling. This Actor reads the public bill feeds directly, filtering by congress number and bill type, and returns each match in one consistent, flat schema. It is built for policy analysts, lobbyists, and researchers who need structured legislative data without writing API code.

Who uses itWhat they scrape Congress.gov for
Government affairs professionalsMonitoring introduced legislation that affects their industry or client.
Policy researchersBuilding datasets of bill introductions and actions for quantitative analysis.
JournalistsTracking the progress of specific bill types through a given Congress.
LobbyistsGetting early alerts on new resolutions and bills in their issue area.

What it does

This Actor collects US federal bills and resolutions from Congress.gov and returns each one as a flat row with its metadata.

  • ๐Ÿ“‹ Bill type filter: restrict results to House bills, Senate bills, joint resolutions, concurrent resolutions, or simple resolutions.
  • ๐Ÿ”ข Congress number filter: target a specific Congress, such as the 118th or 119th, or pull from all available sessions.
  • ๐Ÿ”„ Sort control: order results by the most recently updated bills first, or by the oldest updates first.
  • ๐Ÿ”‘ API key support: use the free DEMO_KEY for testing, or bring your own congress.gov API key for higher rate limits.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with Congress.gov data

๐Ÿ“ˆ Monitor new legislation.

A government affairs team runs the Actor weekly for the current Congress, filtering for House and Senate bills, to update their internal tracking sheet with the latest introductions.

๐Ÿ“Š Build a policy research dataset.

A think tank researcher collects all House and Senate joint resolutions from the last three Congresses to analyze trends in constitutional amendment proposals.

๐Ÿ“ฐ Power legislative news coverage.

A newsroom developer pulls the newest bills each morning to populate a public-facing bill tracker on their website.

๐Ÿ›๏ธ Support lobbying workflows.

A lobbying firm scrapes all bills from the current Congress, then filters the resulting CSV for keywords relevant to their clients' industries.

Why choose this scraper

What you get
No API codingThe Actor handles authentication, pagination, and rate limits for you.
Fixed flat schemaEvery bill returns the same fields, ready for spreadsheets or databases.
Official sourceData comes directly from Congress.gov, the authoritative site for US legislation.

How it compares

This Actor focuses on fast, high-volume bill collection with a simple filter set. The competitors below offer broader data types like members and votes, or different filtering approaches.

FeatureParseForgeCongress.gov IntelligenceCongress.gov Legislation TrackerCongress.gov Scraper
Filter by bill typeYes, all 8 typesNot listedNot listedNot listed
Filter by congress numberYesYesNot listedNot listed
Up to 1,000,000 bills per runYesNot listedNot listedNot listed
Member profilesNot listedYesNot listedYes
Committee dataNot listedYesNot listedYes
AI relevance scoringNot listedYesNot listedNot listed

Configure the run

Drive the Actor by congress number and bill type, alone or together, and sorting runs as each bill is read so only matches reach your dataset. The Input tab lists every parameter.

A first run with the defaults:

{
"maxItems": 10
}

A larger pull:

{
"maxItems": 200
}

Pricing

Pay-per-result: $0.021 per result collected. You pay only for the results written to your dataset.

Results collectedApproximate cost
100 results$2.10
1,000 results$21.00
10,000 results$210.00

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the Congress.gov Bills Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to Congress.gov through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

$claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/congress-gov-bills-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results?

Check that the congress number you entered exists and that bills of the selected type were introduced in that session. Also, if you left the API key empty, the DEMO_KEY may be throttled; wait a few minutes and try again, or add your own key.

The run is very slow or times out.

The DEMO_KEY has strict rate limits. Request a free personal API key at https://api.congress.gov and enter it in the optional field. This will significantly increase the allowed request rate.

I got a 403 or authentication error.

Verify that your API key is entered correctly with no extra spaces. If you are using the DEMO_KEY by leaving the field blank, the service may be temporarily restricting anonymous access. Try again later or register for a free key.

The output has fewer bills than I expected.

The maxItems setting caps the total collected. Increase it if you hit the limit. Also, confirm that your congress number and bill type combination covers the bills you want; a single bill type in one congress typically yields a few hundred to a few thousand results.

Some fields are empty in the output.

Not every bill has every metadata field populated. For example, a newly introduced bill may not yet have committee referrals or a latest action beyond its introduction. Empty fields reflect the current state of the official record.

FAQ

QuestionAnswer
What is the difference between a bill and a resolution?Bills (HR and S) propose new laws and require passage by both chambers and the President's signature. Joint resolutions (HJRes, SJRes) follow a similar path and can propose constitutional amendments. Concurrent resolutions (HConRes, SConRes) express the sentiment of both chambers without the force of law. Simple resolutions (HRes, SRes) address matters of a single chamber.
Do I need a congress.gov API key?No. The Actor works out of the box with the public DEMO_KEY. However, that key is heavily rate-limited. For production use or large runs, get a free personal key at https://api.congress.gov and enter it in the optional field.
Can I scrape bills by subject or keyword?The current version filters by congress number and bill type. For keyword or subject searches, you can download the full dataset and filter it locally, or use one of the related Actors that offer search-based collection.
What data fields does each bill record include?Each record includes the bill number, title, sponsor, cosponsors, introduced date, latest action, committee referrals, and policy area, among other metadata. The exact field list is shown in the sample output on the Actor's page.
How many bills can I scrape in one run?You can set the maximum up to 1,000,000 bills. A typical two-year Congress introduces around 10,000 to 15,000 bills and resolutions, so a single run can easily cover an entire session.
Does this Actor get bill text or metadata?This Actor collects the legislative metadata: titles, sponsors, actions, and status. It does not fetch the full text of the bill. For full text, you would need a separate download step from Congress.gov.
Can I filter by sponsor or cosponsor?The input filters are congress number and bill type. To find bills by a specific member, collect the full set for a congress and filter the output by the sponsor or cosponsor fields in your spreadsheet or database.
What export formats are supported?You can export your results to CSV, JSON, Excel, or XML directly from the Apify dataset, or push them to a cloud storage integration like Google Drive or S3.
How often is the data updated?The Actor reads live data from Congress.gov on each run. Bills are updated as they move through the legislative process, so running the Actor daily gives you the latest actions and status changes.
Can I schedule this Actor to run automatically?Yes. Apify's scheduler lets you set the Actor to run hourly, daily, or weekly. Combined with the sort order set to newest first, you can maintain a continuously updated dataset of recent legislative activity.

Browse the full ParseForge collection for more scrapers.

๐Ÿ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

โš ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Library of Congress. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.