Government Jobs Scraper for GovernmentJobs.com (unofficial)
Pricing
from $4.00 / 1,000 job results
Government Jobs Scraper for GovernmentJobs.com (unofficial)
Extract public sector job listings from GovernmentJobs.com (NEOGOV) by keyword, location, category or agency. Structured salary, dates and full descriptions. Export JSON, CSV or Excel. Pay per result. Unofficial; not affiliated with or endorsed by NEOGOV or GovernmentJobs.com.
Pricing
from $4.00 / 1,000 job results
Rating
0.0
(0)
Developer
Joshua Budd
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
GovernmentJobs.com Scraper (NEOGOV) - Government Jobs API
Unofficial tool. This actor is not affiliated with, endorsed by, or sponsored by NEOGOV or GovernmentJobs.com. It is an independent tool that extracts publicly available job listings from governmentjobs.com.
Turn GovernmentJobs.com (NEOGOV), the dominant US public sector job platform used by thousands of city, county and state agencies, into a clean, structured government jobs API. Search by keyword, location, category or agency and get back ready-to-use NEOGOV jobs data: job title, agency, location, structured salary range, job type, posted and closing dates, and the full job description.
No login, no API keys, no HTML parsing on your side. Just a public sector jobs feed in JSON, CSV or Excel, at roughly $0.004 per job: you pay only for the results you actually receive.
Why use this GovernmentJobs.com scraper
- Coverage that matters. GovernmentJobs.com hosts postings from thousands of US government employers: cities, counties, states, transit districts, utilities, universities.
- Structured salary data. Salary strings like
$7,938.11 - $9,648.82 Monthlyare parsed intosalaryMin,salaryMaxand a normalizedsalaryPeriod(YEAR,MONTH,HOUR). - Full descriptions on demand. A single toggle adds the complete job description (plain text and HTML), department, division, and posted/closing dates from each job's detail page. Leave it off for the fastest, cheapest runs.
- Pay per result. One charge per job returned. A run that finds 50 jobs costs about 20 cents.
- Polite by design. Low default concurrency and a configurable requests-per-minute throttle.
Use cases
- Job boards and aggregators: syndicate public sector openings into your own site or app.
- Labor market research: track government hiring volume, salary bands and closing windows by region, category or agency over time.
- Job alerts: run daily with
postedWithinDays: 1and push new matches to email, Slack or a spreadsheet via Apify integrations. - Recruiting and career services: monitor openings for specific agencies or job families (law enforcement, public works, IT, nursing, skilled trades).
- AI agents and LLM pipelines: every Apify Actor doubles as an MCP tool; feed structured government job data straight into your agent workflows.
How to scrape government jobs from GovernmentJobs.com
- Create a free Apify account (no credit card needed).
- Open the Actor page and click Try for free.
- Enter a
keyword(e.g.civil engineer) and optionally alocation,categoryoragency, then click Start. - When the run finishes, open the Dataset tab and export your government job listings as JSON, CSV, Excel, XML or RSS.
- Optional: add a Schedule (daily with
postedWithinDays: "1") to turn one search into a continuously updated public sector job alert feed.
Input
| Field | Type | Description |
|---|---|---|
keyword | string | Search keyword, e.g. mechanic, civil engineer. |
location | string | City, state or region, e.g. California, Austin, TX. |
category | string | Exact site category, e.g. Automotive, Law Enforcement. Optional. |
agency | string | Exact employer name, e.g. City of Livermore. Optional. |
postedWithinDays | string | 1, 7 or 30 to only return recent postings. Optional. |
maxResults | integer | Cap on returned jobs (default 100). |
fetchDescriptions | boolean | Also fetch each job's detail page for the full description, dates and department (one extra request per job). Default false. |
maxRequestsPerMinute | integer | Politeness throttle (default 60). |
proxyConfiguration | object | Proxy settings. Defaults to Apify Proxy (automatic datacenter group). If you see request timeouts, switch to the RESIDENTIAL proxy group. |
Example input:
{"keyword": "mechanic","location": "California","maxResults": 100,"postedWithinDays": "7","fetchDescriptions": true,"proxyConfiguration": { "useApifyProxy": true }}
Output
One dataset item per job. Example (trimmed):
{"id": "5016895-0","title": "Bus Mechanic","agency": "Golden Gate Bridge, Highway and Transportation District","location": "San Rafael, CA","state": "CA","postalCode": "94901","jobType": "Regular, Full-Time","salaryText": "$122,636.80 Annually","salaryMin": 122636.8,"salaryMax": 122636.8,"salaryPeriod": "YEAR","category": null,"department": "Bus Maintenance - Mechanics/Stores","division": "Bus Division","postedDate": "2025-12-30","closingDate": "Continuous","employmentType": "OTHER","url": "https://www.governmentjobs.com/jobs/5016895-0/bus-mechanic","isFeatured": true,"description": "Under supervision, performs inspection, maintenance, troubleshooting...","descriptionHtml": "<p><strong>...</strong></p>","scrapedAt": "2026-09-28T23:59:00.000Z"}
Without fetchDescriptions, each item still includes id, title, agency, location, job type,
parsed salary range and the job URL; description, dates and department are only populated
when detail fetching is enabled.
Notes:
closingDatemay be a date (2026-10-20) or the literalContinuousfor open-until-filled postings; some agencies omit it entirely.categoryechoes your category filter; GovernmentJobs.com does not display a category on individual job pages.descriptionis plain text;descriptionHtmlpreserves the agency's original formatting.
How much does it cost to scrape GovernmentJobs.com?
Pay per event: about $0.004 per job returned, and nothing for empty searches. Typical runs:
| Run | Approximate cost |
|---|---|
| 100 jobs, listings only | $0.40 |
| 100 jobs with full descriptions | $0.40 plus a little compute |
| Daily alert, ~10 new jobs/day, 30 days | ~$1.20/month |
Government jobs API: integrate with code or AI agents (MCP)
Call this Actor from any language with the Apify API and use it as a drop-in government jobs API.
JavaScript (apify-client):
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });const run = await client.actor('civicfeeds/governmentjobs-scraper').call({keyword: 'civil engineer',location: 'Texas',maxResults: 50,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python (apify-client):
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("civicfeeds/governmentjobs-scraper").call(run_input={"keyword": "civil engineer","location": "Texas","maxResults": 50,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["title"], item["agency"], item["salaryText"])
MCP for AI agents. Every Apify Actor is also an MCP (Model Context
Protocol) tool. Point your agent (Claude, Cursor, or any MCP client) at
https://mcp.apify.com with your Apify token and it can search government
jobs on demand inside your agent workflows.
Apify integrations also connect runs to Google Sheets, Make, Zapier, Slack and webhooks, and Schedules let you run the scraper hourly, daily or weekly without writing any code.
Compliance
This Actor only accesses publicly available job listings that GovernmentJobs.com serves to any visitor without a login. It collects no personal data, respects a conservative request rate, and is intended for legitimate uses such as job aggregation, research and alerts. It is not intended for, and must not be used for, consumer screening or any purpose governed by the FCRA.
Copyright warning on job descriptions. Job description prose written by state and local agencies MAY be copyrighted: unlike federal works, state and local government text is not automatically in the public domain. Structured facts (title, agency, salary, dates) are fine; use the description text for analysis, aggregation and alerts, not for verbatim republication. Obtain rights from the posting agency before republishing description text.
GDPR. If you collect any personal data with this tool, you, the end user, are the data controller for that data. EU users are responsible for establishing their own lawful basis for any processing of personal data.
Operating rule. This Actor respects targeted revocation. If the target site issues a cease-and-desist or otherwise individually revokes access, access folds: the Actor will be paused and reassessed immediately.
FAQ
Is there an official GovernmentJobs.com API? NEOGOV does not offer a public API for job search. This Actor fills that gap by extracting the same listings any visitor can see, delivered as structured data.
Is it legal to scrape GovernmentJobs.com? This Actor only collects job listings that are publicly visible to any visitor without a login, at a polite request rate, and collects no personal data. See the Compliance section above for the details, including the FCRA restriction and the note on job description copyright.
How fresh is the data? Every run fetches live listings. Schedule the Actor (hourly, daily, weekly) to keep a continuously updated public sector jobs feed.
Can I export to CSV, Excel or Google Sheets? Yes. Apify datasets export to JSON, CSV, Excel, XML and RSS, and integrate with Google Sheets, Make, Zapier and webhooks.