OTHERAI

VETS-4212 Federal Contractor Veteran Hiring

VETS-4212 federal contractor veteran hiring data lets you search, filter, and score every company required by law to report under VEVRAA — in seconds. This actor queries the DOL Open Data Portal's `VETS/4212` dataset, applies VEVRAA compliance scoring, and returns structured records ready for analysis, vendor screening, or regulatory research.

Try on Apify Store
$0.03per event
0
Users (30d)
0
Runs (30d)
90
Actively maintained
Maintenance Pulse
$0.03
Per event

Maintenance Pulse

90/100
Last Build
Today
Last Version
1d ago
Builds (30d)
8
Issue Response
N/A

Cost Estimate

How many results do you need?

result-returneds
Estimated cost:$3.00

Pricing

Pay Per Event model. You only pay for what you use.

EventDescriptionPrice
result-returnedCharged per result returned. Includes data transformation and structured output.$0.03

Example: 100 events = $3.00 · 1,000 events = $30.00

Documentation

VETS-4212 federal contractor veteran hiring data lets you search, filter, and score every company required by law to report under VEVRAA — in seconds. This actor queries the DOL Open Data Portal's VETS/4212 dataset, applies VEVRAA compliance scoring, and returns structured records ready for analysis, vendor screening, or regulatory research.

Whether you need to evaluate a contractor's track record before partnering, benchmark veteran employment rates across an industry, or identify which defense primes are genuinely supporting veteran hiring, this actor surfaces the exact data the federal government requires those companies to disclose.

What data can you extract?

Data PointSourceExample
👤 Company nameVETS-4212 reportBOOZ ALLEN HAMILTON INC
📍 State / City / ZIPVETS-4212 reportVA / MCLEAN / 22102
🏷️ EINVETS-4212 report36-2634345
🏭 NAICS codeVETS-4212 report541611
👥 Total employeesVETS-4212 report32,400
Total veteransVETS-4212 report9,720
📊 Veteran percentageCalculated30.0%
🎖️ Disabled veteransVETS-4212 report1,620
🪖 Active duty / wartime veteransVETS-4212 report6,480
🏅 Armed Forces Service Medal veteransVETS-4212 report3,240
📅 Recently separated veteransVETS-4212 report972
📈 New hires (total)VETS-4212 report5,200
🆕 New hires — veteransVETS-4212 report1,820
New hires — disabled veteransVETS-4212 report260
📉 Veteran new hire rateCalculated35.0%
VEVRAA compliance scoreCalculated (0–100)90
🏆 Compliance levelDerivedExcellent
🗂️ Compliance factorsDerivedStrong veteran representation: 30.0% (+25)
📆 Report yearVETS-4212 report2023

Why use VETS-4212 federal contractor data?

Manually reviewing VETS-4212 reports means downloading bulk files from DOL, normalizing inconsistent field names, filtering thousands of rows in a spreadsheet, and manually calculating veteran percentages and VEVRAA benchmarks — a half-day task that produces a static snapshot.

This actor automates the entire process: it queries the live DOL API with your filters, calculates veteran employment rates, scores each contractor against the VEVRAA benchmark of ~5.4%, and returns ranked, structured records with plain-English compliance factors.

  • Scheduling — run quarterly or annually to track how contractors' veteran hiring changes over time
  • API access — trigger runs from Python, JavaScript, or any HTTP client and pipe results into your compliance workflow
  • Proxy rotation — Apify's built-in infrastructure handles API reliability so your queries don't silently drop
  • Monitoring — get Slack or email alerts when runs fail or produce unexpected zero-result responses
  • Integrations — connect results to Zapier, Make, Google Sheets, Airtable, or your internal BI tooling via webhooks

Features

  • Paginated DOL API fetching — requests up to 1,000 records per page with 500ms inter-request delay, automatically paging until maxResults is reached or the dataset is exhausted
  • VEVRAA compliance scoring engine — computes a 0–100 score from six weighted factors: veteran representation rate, veteran new hire rate, disabled veteran representation, and company size context
  • Benchmark comparison — all veteran rates compared against the federal VEVRAA hiring benchmark of ~5.4%, with explicit above/below/meets-benchmark labels
  • Four compliance levels — Excellent (80+), Good (60–79), Fair (40–59), Needs Improvement (below 40)
  • Compliance factor narratives — every score includes human-readable strings explaining each point addition or deduction (e.g., "Strong veteran representation: 30.0% (+25)")
  • Multi-field filter builder — server-side filtering by company name (LIKE partial match), state (exact), NAICS code prefix, minimum employee count, and report year — combined into a single and filter object
  • Client-side veteran percentage filter — post-API filter on minVeteranPercent applied after retrieval, since the DOL API does not support computed-field filtering
  • Results sorted by compliance score — highest-scoring contractors returned first, so the most VEVRAA-compliant employers appear at the top
  • Aggregate hiring summary — every run produces a summary block with overall veteran rate, veteran new hire rate, top 10 employers by veteran count, top 10 states by veteran employment, and breakdown by 2-digit NAICS sector
  • Exponential backoff with up to 4 retries — rate-limit (HTTP 429) responses trigger exponential delays starting at 4 seconds; transient errors retry with 1/2/4/8-second backoff
  • Dry run mode — returns realistic sample data for three contractors (Lockheed Martin, Booz Allen Hamilton, a small IT firm showing non-compliance) without consuming API quota
  • EIN included — employer identification numbers enable joining VETS-4212 data with SAM.gov registrations, FPDS contract awards, or internal vendor databases

Use cases for VETS-4212 federal contractor data

Government contracting compliance screening

Procurement officers and compliance teams at agencies with contracting authority need to verify that prospective contractors meet VEVRAA obligations before or after award. This actor retrieves the contractor's full VETS-4212 history, calculates their compliance score, and flags contractors scoring below 40 ("Needs Improvement") for additional scrutiny — eliminating manual spreadsheet lookups across multiple DOL bulk files.

Veteran advocacy and workforce research

Policy researchers and veteran service organizations analyzing employer commitment to veteran hiring can query by state, industry sector, or company name to map veteran employment concentration across the federal contractor base. The actor's NAICS-level aggregation surfaces which industries are meeting the federal benchmark and which are chronically below it.

Defense contractor due diligence

Legal and compliance teams conducting M&A diligence, teaming partner evaluations, or subcontractor qualification reviews need to assess whether a target company has a demonstrated record of VEVRAA compliance. A single run returns compliance scores, hiring trends, and specific factor narratives that translate directly into a due diligence memo section.

HR benchmarking and diversity analytics

Human resources and DEI teams at federal contractors can compare their own reported rates against industry peers grouped by NAICS code. Filtering to NAICS 54 (professional services) or 33 (manufacturing) with minEmployees=1000 isolates comparable organizations for benchmarking veteran hiring percentages and new hire rates.

OFCCP audit preparation

Federal contractors preparing for OFCCP compliance reviews can verify that their published VETS-4212 reports are on file with DOL, confirm the exact figures that regulators will see, and identify gaps in disabled veteran or recently-separated veteran hiring before an audit begins.

Competitive intelligence on defense primes

Business development teams at government contractors can monitor how large defense primes are performing on veteran hiring — a factor that can influence agency award decisions and past performance ratings. Filter by NAICS 336 (aerospace/defense manufacturing) to get the full picture across that sector.

How to search VETS-4212 federal contractor records

  1. Enter your search criteria — type a company name (partial match works: "RAYTHEON" returns all Raytheon entities), a two-letter state code like VA, or a NAICS prefix like 541 for professional services. Leave all fields blank to retrieve the top contractors sorted by veteran count.
  2. Set filters — optionally enter a minimum employee count to exclude small shops, a minimum veteran percentage to surface the most committed employers, or a specific report year (e.g., 2023) to focus on recent data.
  3. Run the actor — click "Start" and wait. A search returning 500 records typically completes in under 60 seconds. Larger batches up to 5,000 records may take 3–5 minutes.
  4. Download results — export the full dataset as JSON, CSV, or Excel from the Dataset tab. The compliance score column is pre-sorted highest-first so the best performers appear at the top.

Input parameters

ParameterTypeRequiredDefaultDescription
apiKeystringNo*DOL Open Data Portal API key. Register free at https://dataportal.dol.gov/registration. Required unless dryRun is true.
dryRunbooleanNotrueReturn 3 sample records without calling the API. Automatically set to false when an apiKey is provided.
companyNamestringNoPartial company name match (case-insensitive). "BOEING" matches "THE BOEING COMPANY" and "BOEING DEFENSE".
statestringNoTwo-letter state abbreviation (e.g., VA, TX, CA). Exact match.
naicsCodestringNoNAICS code prefix. 54 returns all professional services; 336411 targets aircraft manufacturing.
minEmployeesintegerNoMinimum total employee count. Use 1000 to exclude small contractors.
minVeteranPercentnumberNoMinimum veteran employment percentage. Use 5.4 to filter to VEVRAA-compliant contractors only.
reportYearintegerNoFilter to a specific reporting year (e.g., 2023). Omit to return all available years.
maxResultsintegerNo500Maximum records to return. Range: 1–5,000.

Input examples

Find top veteran employers in Virginia's defense sector:

{
    "apiKey": "YOUR_DOL_API_KEY",
    "dryRun": false,
    "state": "VA",
    "naicsCode": "541",
    "minEmployees": 500,
    "reportYear": 2023,
    "maxResults": 100
}

Screen a specific contractor by name:

{
    "apiKey": "YOUR_DOL_API_KEY",
    "dryRun": false,
    "companyName": "GENERAL DYNAMICS",
    "maxResults": 50
}

Identify VEVRAA non-compliant large contractors nationwide:

{
    "apiKey": "YOUR_DOL_API_KEY",
    "dryRun": false,
    "minEmployees": 1000,
    "reportYear": 2023,
    "maxResults": 500
}

Input tips

  • Get a free API key first — the actor requires a DOL Open Data Portal key to fetch live data. Registration takes under 2 minutes at https://dataportal.dol.gov/registration. Use dryRun: true to preview the output structure before obtaining a key.
  • Start with a narrow filter — searching by both state and naicsCode returns focused results faster than fetching 5,000 records and filtering manually downstream.
  • Use minVeteranPercent: 5.4 — this is the federal VEVRAA hiring benchmark. Setting this threshold filters the result set to contractors that are statistically meeting their obligation.
  • Omit reportYear for trend analysis — leaving this field blank returns all years on file, allowing you to track a company's veteran hiring rate across multiple reporting cycles.
  • Batch large industry sweeps in one run — requesting 2,000 records across an entire NAICS sector in a single run is more efficient than 20 separate runs of 100 records each.

Output example

{
    "records": [
        {
            "companyName": "BOOZ ALLEN HAMILTON INC",
            "state": "VA",
            "city": "MCLEAN",
            "zip": "22102",
            "ein": "36-2634345",
            "naicsCode": "541611",
            "reportYear": 2023,
            "totalEmployees": 32400,
            "totalVeterans": 9720,
            "veteranPercentage": 30.0,
            "disabledVeterans": 1620,
            "activeDutyWartime": 6480,
            "armedForcesServiceMedal": 3240,
            "recentlySeparated": 972,
            "newHiresTotal": 5200,
            "newHiresVeterans": 1820,
            "newHiresDisabledVeterans": 260,
            "veteranNewHireRate": 35.0,
            "complianceScore": 90,
            "complianceLevel": "Excellent",
            "complianceFactors": [
                "Strong veteran representation: 30.0% (+25)",
                "Strong veteran hiring rate: 35.0% of new hires (+15)",
                "Strong disabled veteran representation: 5.0% (+10)",
                "Mid-size employer: 32,400 employees"
            ],
            "extractedAt": "2024-03-15T14:22:07.311Z"
        }
    ],
    "summary": {
        "totalRecords": 3,
        "totalEmployees": 148850,
        "totalVeterans": 37569,
        "overallVeteranRate": 25.24,
        "totalNewHires": 20280,
        "totalVeteranNewHires": 5572,
        "veteranNewHireRate": 27.47,
        "topEmployers": [
            { "name": "LOCKHEED MARTIN CORPORATION", "veterans": 27840, "rate": 24.0 },
            { "name": "BOOZ ALLEN HAMILTON INC", "veterans": 9720, "rate": 30.0 },
            { "name": "STANDARD TECH SOLUTIONS LLC", "veterans": 9, "rate": 2.0 }
        ],
        "topStates": [
            { "state": "TX", "records": 1, "veterans": 27840 },
            { "state": "VA", "records": 1, "veterans": 9720 }
        ],
        "byNaics": [
            { "code": "33", "records": 1, "veterans": 27840 },
            { "code": "54", "records": 2, "veterans": 9729 }
        ]
    }
}

Output fields

FieldTypeDescription
recordsarrayArray of VeteranHiringRecord objects, sorted by complianceScore descending
records[].companyNamestringFederal contractor legal name as filed
records[].statestring | nullTwo-letter state abbreviation
records[].citystring | nullCity of the reporting establishment
records[].zipstring | nullZIP code of the reporting establishment
records[].einstring | nullEmployer Identification Number (e.g., 52-1893632)
records[].naicsCodestring | null6-digit NAICS industry classification code
records[].reportYearinteger | nullVETS-4212 reporting year
records[].totalEmployeesintegerTotal employees at time of report
records[].totalVeteransintegerTotal veteran employees across all protected categories
records[].veteranPercentagenumberVeteran employees as a percentage of total employees (rounded to 2 decimal places)
records[].disabledVeteransintegerEmployees with a service-connected disability rating
records[].activeDutyWartimeintegerVeterans of active duty during a war or campaign
records[].armedForcesServiceMedalintegerVeterans who received an Armed Forces Service Medal
records[].recentlySeparatedintegerVeterans who separated from service within the past 3 years
records[].newHiresTotalintegerTotal new employees hired during the reporting period
records[].newHiresVeteransintegerVeterans among new hires during the reporting period
records[].newHiresDisabledVeteransintegerDisabled veterans among new hires during the reporting period
records[].veteranNewHireRatenumber | nullVeterans as a percentage of all new hires; null if no new hires reported
records[].complianceScoreintegerVEVRAA compliance score from 0 to 100 (see scoring table below)
records[].complianceLevelstringScore band: Excellent, Good, Fair, or Needs Improvement
records[].complianceFactorsstring[]Plain-English list of scoring factors applied, each showing point impact
records[].extractedAtstringISO 8601 timestamp of when the record was processed
summary.totalRecordsintegerTotal records in the result set
summary.totalEmployeesintegerSum of all employees across all records
summary.totalVeteransintegerSum of all veterans across all records
summary.overallVeteranRatenumberAggregate veteran percentage across the full result set
summary.totalNewHiresintegerSum of all new hires across all records
summary.totalVeteranNewHiresintegerSum of all veteran new hires across all records
summary.veteranNewHireRatenumberAggregate veteran new hire rate across the full result set
summary.topEmployersarrayTop 10 employers by total veteran count (name, veterans, rate)
summary.topStatesarrayTop 10 states by total veteran employment (state, records, veterans)
summary.byNaicsarrayTop 10 2-digit NAICS sectors by veteran employment (code, records, veterans)

How much does it cost to search VETS-4212 contractor data?

VETS-4212 Federal Contractor Veteran Hiring uses pay-per-compute pricing — you pay only for the platform time used per run. There are no per-record charges. The underlying DOL API is free with a free registration key.

ScenarioRecords returnedEstimated run timeApproximate cost
Quick test (dry run)3 sample records~3 seconds$0.00
Targeted company search1–50 records~10 seconds~$0.01
State or sector sweep100–500 records30–60 seconds~$0.02–$0.05
Large industry batch500–2,000 records1–3 minutes~$0.05–$0.15
Full dataset pull5,000 records4–6 minutes~$0.20–$0.35

You can set a maximum spending limit per run to control costs. The actor stops when your budget is reached.

The DOL Open Data Portal API key is completely free — register at https://dataportal.dol.gov/registration. Compare this to commercial GovCon compliance databases that charge $200–500/month for similar VEVRAA contractor lookups.

Search VETS-4212 data using the API

Python

from apify_client import ApifyClient

client = ApifyClient("YOUR_API_TOKEN")

run = client.actor("ryanclinton/vets-4212-contractor-data").call(run_input={
    "apiKey": "YOUR_DOL_API_KEY",
    "dryRun": False,
    "state": "VA",
    "naicsCode": "541",
    "minEmployees": 500,
    "reportYear": 2023,
    "maxResults": 200
})

for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    for record in item.get("records", []):
        print(f"{record['companyName']} — Score: {record['complianceScore']} ({record['complianceLevel']}) — Veterans: {record['totalVeterans']} ({record['veteranPercentage']}%)")

JavaScript

import { ApifyClient } from "apify-client";

const client = new ApifyClient({ token: "YOUR_API_TOKEN" });

const run = await client.actor("ryanclinton/vets-4212-contractor-data").call({
    apiKey: "YOUR_DOL_API_KEY",
    dryRun: false,
    state: "VA",
    naicsCode: "541",
    minEmployees: 500,
    reportYear: 2023,
    maxResults: 200
});

const { items } = await client.dataset(run.defaultDatasetId).listItems();
for (const item of items) {
    for (const record of item.records ?? []) {
        console.log(`${record.companyName} — Score: ${record.complianceScore} (${record.complianceLevel}) — Veterans: ${record.totalVeterans} (${record.veteranPercentage}%)`);
    }
}

cURL

# Start the actor run
curl -X POST "https://api.apify.com/v2/acts/ryanclinton~vets-4212-contractor-data/runs?token=YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "apiKey": "YOUR_DOL_API_KEY",
    "dryRun": false,
    "state": "TX",
    "naicsCode": "336",
    "reportYear": 2023,
    "maxResults": 100
  }'

# Fetch results (replace DATASET_ID from the run response)
curl "https://api.apify.com/v2/datasets/DATASET_ID/items?token=YOUR_API_TOKEN&format=json"

How VETS-4212 Federal Contractor Veteran Hiring works

Phase 1: Filter construction and API query

The actor accepts up to five filter dimensions: company name (partial LIKE match, uppercased), state (exact match), NAICS code prefix (LIKE match), minimum employee count (greater-than-or-equal), and report year (exact match). These are assembled into a DOL API filter_object JSON structure — single conditions are passed directly; multiple conditions are wrapped in an and compound object. The filter is URL-encoded and appended to the https://apiprod.dol.gov/v4/get/VETS/4212/json endpoint with the user's API key, sort order (desc by total_veterans), and pagination parameters.

Phase 2: Paginated retrieval with rate limit handling

The actor fetches up to 1,000 records per API page with a 500ms delay between pages. On HTTP 429 (rate limited), it applies exponential backoff: 4 seconds after the first limit, 8 seconds after the second, up to 4 total attempts. Non-rate-limit transient errors retry with 1/2/4/8-second exponential backoff. Pagination continues until the requested maxResults count is reached or the API returns fewer records than the page limit (indicating the dataset is exhausted). The final slice ensures the output never exceeds maxResults.

Phase 3: VEVRAA compliance scoring

Each raw record is transformed and scored in a single pass. The scoring algorithm starts at a baseline of 50 points and applies six weighted adjustments:

ConditionScore adjustment
Veteran employment rate ≥ 8%+25
Veteran employment rate ≥ 5.4% (meets VEVRAA benchmark)+15
Veteran employment rate 3–5.4% (below benchmark)+5
Veteran employment rate 1–3% (low)-10
Zero veteran employees-20
Veteran new hire rate ≥ 10%+15
Veteran new hire rate ≥ 5.4%+8
Veteran new hire rate > 0%+3
Disabled veteran rate ≥ 2% of total employees+10
Any disabled veterans employed+5

Scores are clamped to 0–100. The minVeteranPercent post-filter is applied after scoring (since the DOL API cannot filter on computed fields), then all records are sorted by complianceScore descending.

Phase 4: Summary aggregation

After transformation and filtering, the actor builds a HiringSummary object by aggregating across all result records: total employees and veterans are summed; veteran rates are calculated from those sums; the top 10 employers, top 10 states, and top 10 NAICS 2-digit sectors are extracted by sorting their respective maps by veteran count and slicing. The entire { records, summary } object is pushed to the Apify dataset as a single item.

Tips for best results

  1. Register for a free DOL API key before running. The actor defaults to dryRun: true when no key is present, which returns sample data only. Registration at https://dataportal.dol.gov/registration takes under 2 minutes and the key is issued immediately.

  2. Use NAICS prefix filtering for industry-wide studies. A 2-digit prefix (54 for professional services, 33 for manufacturing, 23 for construction) returns the full sector. A 6-digit code targets a single industry sub-group. Combine with minEmployees to eliminate micro-contractors from the analysis.

  3. Set reportYear to compare a single filing cycle. Companies file annually, so omitting the year returns all historical records for matching companies — useful for trend analysis, but it multiplies the record count. Set reportYear: 2023 (or the most recent available year) for point-in-time screening.

  4. Filter to minVeteranPercent: 5.4 to produce a shortlist of contractors definitively meeting the federal VEVRAA benchmark. This is a computed post-filter applied after API retrieval, so it does not affect query performance — it reduces the output size.

  5. Join ein to other government datasets. The EIN field enables cross-referencing with USASpending.gov contract awards, SAM.gov entity registrations, and FPDS procurement data to correlate veteran hiring with contract dollar values.

  6. Combine with the Federal Contract Intelligence actor to build a complete picture: retrieve active contract awards from one actor, then use contractor names or EINs to pull their VETS-4212 veteran hiring scores from this one.

  7. Schedule quarterly runs to detect year-over-year changes in a contractor's compliance score. A company moving from "Good" to "Needs Improvement" is a signal worth flagging before the next contract renewal.

Combine with other Apify actors

ActorHow to combine
Company Deep ResearchPull comprehensive company intelligence on contractors flagged as "Needs Improvement" to understand broader hiring culture before a partnership decision
B2B Lead QualifierScore defense contractor leads on 30+ signals alongside their VEVRAA compliance score for a complete vendor qualification profile
Website Contact ScraperExtract HR director or veterans affairs officer contacts from contractors identified via VETS-4212 for targeted outreach
WHOIS Domain LookupVerify contractor domain ownership and registration status when cross-referencing company names with web presence
Waterfall Contact EnrichmentEnrich contractor records with phone, email, and LinkedIn data using a 10-step enrichment cascade after extracting company names from this actor
HubSpot Lead PusherPush compliant contractor records directly into a HubSpot CRM pipeline for government business development follow-up
Multi-Review AnalyzerPull Trustpilot and BBB reviews for contractors to supplement VEVRAA compliance data with employee-facing reputation signals

Limitations

  • Requires a free DOL API key. Unlike some public data APIs, the DOL Open Data Portal requires registration. The key is free and issued immediately, but the actor cannot fetch live data without it.
  • Data freshness reflects annual filing cycles. Contractors file VETS-4212 reports annually; the most recent data is typically 12–18 months behind the current date. This actor retrieves what is on file — it does not have access to unreported current-year data.
  • Coverage limited to VEVRAA-covered contractors. The dataset covers federal contractors and subcontractors with 50+ employees and contracts of $150,000 or more. Smaller companies, non-federal employers, and contractors below the threshold are not included regardless of their veteran hiring practices.
  • minVeteranPercent is a post-API filter. The DOL API cannot filter on calculated fields like veteran percentage. This actor fetches up to maxResults records first, then filters by percentage. If many records fail the threshold, the actual output count may be substantially smaller than maxResults.
  • No multi-year trend output in the current schema. When fetching without a reportYear filter, multiple filing years for the same company are returned as separate records rather than as a merged time series. Post-process by grouping on ein or companyName to build trend data.
  • NAICS codes are self-reported. Contractors self-classify their NAICS code; errors and inconsistencies in the source data are returned as-is and not corrected.
  • No sub-establishment-level breakdown. Large contractors with multiple locations file a single consolidated report; this actor returns the consolidated record, not individual facility data.
  • DOL API rate limits apply. The actor handles rate limiting with exponential backoff, but sustained very large requests may require longer run times during peak API usage periods.

Integrations

  • Zapier — trigger a VETS-4212 lookup when a new contractor is added to a spreadsheet, then post the compliance score to Slack
  • Make — build automated vendor vetting workflows that run this actor on contractor names from a procurement system and flag low-scoring results
  • Google Sheets — export contractor compliance scores and veteran hiring rates directly into a shared due diligence tracker
  • Apify API — integrate VETS-4212 screening into internal compliance platforms, GovCon portals, or vendor management systems via REST
  • Webhooks — receive a webhook when a scheduled run completes, triggering downstream processing in your data pipeline
  • LangChain / LlamaIndex — feed VEVRAA compliance records into a RAG pipeline for natural-language querying of contractor veteran hiring obligations

Troubleshooting

  • Run returns only sample data (dry run output) — the actor defaults to dry run mode when no API key is provided. Set dryRun: false and supply your apiKey. If you have not registered yet, visit https://dataportal.dol.gov/registration for a free key issued within minutes.

  • HTTP 401 or 403 error logged — your DOL API key is invalid, expired, or has not yet been activated. Re-check the key value in your input, confirm it matches the key in your DOL portal account, and wait a few minutes after initial registration before using the key.

  • Zero records returned despite a valid search — the company may not be a VEVRAA-covered contractor (50+ employees, $150,000+ federal contract), may have filed under a different legal name, or may not have a filing for the specified reportYear. Try a broader companyName search (e.g., the parent company name) or remove the reportYear filter to check all available years.

  • Output record count is much smaller than maxResults — if minVeteranPercent is set, it filters records after API retrieval. A high threshold (e.g., 20%) will naturally reduce the returned count. Increase maxResults to fetch more candidates from the API before the percentage filter is applied.

  • Run times out or is slower than expected — large maxResults values (3,000–5,000) with no filters require fetching multiple pages at 500ms intervals. Increase memory to 512 MB in actor settings and expect 4–6 minutes for a full dataset pull. Adding a state or naicsCode filter drastically reduces retrieval time.

Responsible use

  • This actor queries only the DOL Open Data Portal, a publicly accessible U.S. government database containing data that federal contractors are legally required to disclose.
  • VETS-4212 data is public record under VEVRAA and FOIA. Accessing it via this actor is lawful and consistent with the DOL's terms of service.
  • Do not use extracted contractor data to make employment decisions about individuals or for purposes unrelated to legitimate compliance, research, or business assessment.
  • Comply with applicable laws when using contractor contact information derived from VETS-4212 filings for outreach or solicitation purposes.
  • For general guidance on public data access and scraping legality, see Apify's guide.

FAQ

How do I get a DOL API key to use this actor? Register for free at https://dataportal.dol.gov/registration. The key is issued immediately after email confirmation. Paste it into the apiKey field in the actor's input. There is no cost and no usage tier — the DOL API is free for all users.

What is the VETS-4212 report and which companies are required to file? VETS-4212 is an annual report required by the Vietnam Era Veterans' Readjustment Assistance Act (VEVRAA). Federal contractors and subcontractors with 50 or more employees and a federal contract or subcontract of $150,000 or more must file it with the Department of Labor each year, disclosing their veteran employment counts by protected category.

What is the VEVRAA hiring benchmark and how is the compliance score calculated? The federal VEVRAA hiring benchmark is approximately 5.4% — meaning covered contractors should aim to have at least 5.4% of their workforce be veterans. The compliance score in this actor starts at a baseline of 50 and adds or subtracts points based on veteran representation rate, veteran new hire rate, and disabled veteran employment rate, with each factor labeled in the complianceFactors array. Scores of 80+ are "Excellent"; below 40 is "Needs Improvement."

How current is the VETS-4212 data? Contractors file annually, and DOL publishes data on a rolling basis. Reports are typically 12–18 months behind the current calendar year. Filter to the most recent available reportYear (usually 2023) for the freshest data.

How many records can I retrieve in a single run? The actor supports up to 5,000 records per run. Set maxResults: 5000 to fetch the full available dataset matching your filters. Most targeted searches (specific company or state) will return far fewer.

Can I search VETS-4212 data without a DOL API key? Yes — set dryRun: true (or simply leave out the apiKey) to run in dry run mode. The actor returns 3 realistic sample records showing the full output schema, including compliance scores, veteran breakdowns, and the summary block. No API call is made.

How is this different from downloading DOL bulk files manually? The DOL provides annual bulk CSV downloads of VETS-4212 data, but these require manual downloading, opening in a spreadsheet tool, normalizing inconsistent columns, and manually calculating veteran percentages. This actor queries the live API with server-side filters, calculates all derived fields, scores every record against the VEVRAA benchmark, and returns structured JSON — in under 60 seconds.

Can I filter VETS-4212 results by multiple criteria at the same time? Yes. The actor combines all provided filters into a single DOL API and compound filter object. You can simultaneously filter by state, naicsCode, minEmployees, companyName, and reportYear. The minVeteranPercent filter is applied client-side after retrieval.

Is it legal to access and use VETS-4212 data? Yes. VETS-4212 data is public record filed with a U.S. government agency under federal law. The DOL Open Data Portal explicitly provides API access for this data. Using it for compliance research, vendor screening, or workforce analysis is lawful. Ensure any downstream use of the data complies with applicable employment and privacy laws.

Can I schedule this actor to run on a regular basis? Yes. Apify's scheduler supports daily, weekly, monthly, or custom cron schedules. Schedule an annual run each October (when new VETS-4212 filings are typically published) to automatically refresh your contractor compliance database.

Can I join this data with federal contract award records? Yes. The ein field in each record is the employer's federal tax ID, which appears in SAM.gov, FPDS, and USASpending.gov contract data. Use the EIN to join VETS-4212 compliance scores with contract dollar values, award dates, and agency names for a complete GovCon compliance picture.

What veteran categories are tracked in the VETS-4212 report? VEVRAA defines four protected veteran categories: disabled veterans (service-connected disability rating), active duty wartime or campaign badge veterans, Armed Forces Service Medal veterans, and recently separated veterans (within 3 years of discharge). All four are captured separately in this actor's output, alongside a total veteran count that may include veterans in multiple categories.

Help us improve

If you encounter issues, you can help us debug faster by enabling run sharing in your Apify account:

  1. Go to Account Settings > Privacy
  2. Enable Share runs with public Actor creators

This lets us see your run details when something goes wrong, so we can fix issues faster. Your data is only visible to the actor developer, not publicly.

Support

Found a bug or have a feature request? Open an issue in the Issues tab on this actor's page. For custom compliance workflows, bulk data access, or enterprise integrations, reach out through the Apify platform.

How it works

01

Configure

Set your parameters in the Apify Console or pass them via API.

02

Run

Click Start, trigger via API, webhook, or set up a schedule.

03

Get results

Download as JSON, CSV, or Excel. Integrate with 1,000+ apps.

Use cases

Sales Teams

Build targeted lead lists with verified contact data.

Marketing

Research competitors and identify outreach opportunities.

Data Teams

Automate data collection pipelines with scheduled runs.

Developers

Integrate via REST API or use as an MCP tool in AI workflows.

Ready to try VETS-4212 Federal Contractor Veteran Hiring?

Start for free on Apify. No credit card required.

Open on Apify Store