DOL OFLC Foreign Labor Disclosure Scraper
DOL OFLC Foreign Labor Disclosure Scraper
Scrapes the U.S. Department of Labor OFLC quarterly disclosure datasets for H-2A (agricultural), H-2B (seasonal), PERM (permanent labor certification), Prevailing Wage, and CW-1 programs. The only actor covering all five non-H-1B OFLC programs in one normalized schema.
What This Actor Does
The DOL publishes quarterly XLSX disclosure files at the OFLC performance disclosure index. This actor:
- Fetches the index page to auto-discover all available quarterly files per program
- Filters by your requested programs, fiscal year, and quarter
- Downloads each XLSX directly from dol.gov (0.5 MB CW-1 to ~120 MB Prevailing Wage)
- Stream-parses every row with per-program column mapping
- Outputs a flat normalized dataset
No authentication, proxy, or captcha required — all data is publicly available.
Use Cases
- Immigration attorneys: track petition outcomes across H-2A/H-2B/PERM by employer or state
- Agricultural staffing: monitor seasonal H-2A approvals by region
- Wage benchmarking: compare offered wages against prevailing wage determinations
- Compliance research: analyze denial patterns by program, industry, or state
- Policy research: longitudinal trends across OFLC programs and fiscal years
Programs
| Program | Description | File size |
|---|---|---|
| H-2A | Agricultural temporary workers | ~16 MB/quarter |
| H-2B | Non-agricultural seasonal workers | ~66 MB/quarter |
| PERM | Permanent labor certification | ~36 MB/quarter |
| PW | Prevailing Wage determinations | ~120 MB/quarter |
| CW-1 | CNMI transitional workers | ~0.5 MB/quarter |
Input
| Field | Type | Description |
|---|---|---|
programs |
array | Programs: H-2A, H-2B, PERM, PW, CW-1. Empty = all. |
fiscalYear |
integer | Fiscal year (e.g. 2026). 0 = auto-detect latest. |
fiscalQuarter |
string | Q1/Q2/Q3/Q4. Empty = auto-detect latest. |
worksiteState |
string | Filter by worksite state (e.g. CA). |
employerName |
string | Filter by employer name substring. |
caseStatus |
string | Filter by case status (Certified, Denied, Withdrawn). |
maxItems |
integer | Max records (0 = no limit). |
Output
Each record includes: program, case_number, case_status, received_date, decision_date, employer_name, employer_city, employer_state, employer_fein, job_title, soc_code, soc_title, worksite_city, worksite_state, num_workers_requested, num_workers_certified, wage_offer, wage_unit, prevailing_wage, period_of_employment_start, period_of_employment_end, attorney_agent_name, fiscal_year, fiscal_quarter, source_file.
Notes on Large Files
The Prevailing Wage (PW) file is ~120 MB with ~1 million rows. Use state/employer filters or maxItems to manage volume. The actor streams rows without loading the full file into memory. Default memory: 1024 MB.
DOL publishes new data quarterly: Q1 (Oct-Dec) around February, Q2 (Jan-Mar) around May, Q3 (Apr-Jun) around August, Q4 (Jul-Sep) around November.