VETS-4212 Public Filing Verification avatar

VETS-4212 Public Filing Verification

Pricing

from $5.58 / 1,000 item extracteds

Go to Apify Store
VETS-4212 Public Filing Verification

VETS-4212 Public Filing Verification

Search official DOL VETS-4212 public filing lists by company, year, state, ZIP or NAICS. Export employer and hiring-location identities with source provenance for supplier checks; no veteran counts or legal compliance conclusions.

Pricing

from $5.58 / 1,000 item extracteds

Rating

0.0

(0)

Developer

Automation Lab

Automation Lab

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Search official DOL vets-4212 filings lists to check whether a supplier name appears in a year-specific public workbook. Export employer and hiring-location identities, public addresses, NAICS codes and reproducible source provenance.

This Actor reports public filing-list presence, not a legal compliance conclusion. It does not access private submissions, veteran counts or employment totals. A missing match is not proof that an employer failed to file.

Who is this for?

Procurement analysts can cross-check supplier rosters against a public government source. Supplier-onboarding teams can preserve the workbook year, row and hash behind a match. Researchers can export a filtered list without repeatedly opening a large spreadsheet.

Why use this Actor?

  • Fetch the official public workbook afresh on every run.
  • Combine company, state, ZIP and NAICS filters rather than exporting unrelated rows.
  • Retain source filename, worksheet row and SHA-256 for an audit trail.
  • Keep year-specific rows distinct and eliminate exact duplicate public records within each year.

No DOL account, cookies or proxy configuration is required. This is a standalone public-list lookup, not a filing service or government endorsement.

Getting started

  1. Enter a company substring, such as 1 Accord.
  2. Leave years empty to search the newest worksheet available from DOL.
  3. Optionally narrow the search with a state, ZIP or NAICS prefix.
  4. Set a global maxItems, then run the Actor.
  5. Open the default dataset or download JSON, CSV, Excel or another Apify-supported export.

Example input:

{"company":"1 Accord","years":[],"maxItems":5}

The public workbook can be large. Even a narrow query downloads the entire archive and reads its shared-string table. maxItems limits returned rows, not downloaded bytes.

Searching vets-4212 filings

The source is DOL's VETS-4212 information page and its linked public validation archive.

At implementation time the workbook contained sheets 2025 and 2026. These are sheet labels, not independently inferred reporting periods. Availability changes when DOL replaces its workbook. The Actor does not promise historical years absent from the current public download.

DOL describes filing confirmation emails as submission verification. This public-list search does not replace those confirmations or any contracting officer's process.

Input parameters

ParameterMeaning
companyCase-insensitive literal substring of Company Name, with input leading/trailing whitespace removed. Not hiring-location name, token matching or whole-field equality. Omit for all companies.
yearsArray of four-digit sheet-year strings. Empty or omitted selects newest available. Multiple values use ANY, processed newest first. An unavailable year fails explicitly.
stateExact two-letter state/territory code, case-insensitive.
zipFive digits match the first five source ZIP characters; ZIP+4 matches the full source value exactly.
naicsLiteral 2–6 digit prefix of source NAICS. No inferred industry names.
maxItemsGlobal maximum of 1–10000 unique matching rows across selected sheets. Default 100. Zero/unlimited is unsupported.

All nonempty filter fields combine with AND. For example, company="Acme" and state="VA" require both a company-name substring match and exact state match. Multiple years alone use ANY. Empty strings disable their corresponding filter.

Output fields

FieldDescription
recordIdSHA-256 of the sheet year and public row values; useful for comparisons.
reportTypeSource report type, currently VETS-4212.
companyNameListed employer name.
hiringLocationNameListed hiring-location name, or null.
address, city, state, zipPublic source address, including PO boxes where supplied.
naicsSource industry code as text, or null.
sheetYearLiteral workbook sheet label.
filingListPresenceAlways true for a returned row; means present in this public workbook only.
sourceRowOne-based worksheet row number.
sourceUrl, sourcePageUrlOfficial archive and information-page URLs.
sourceWorkbookOriginal downloaded workbook filename.
sourceSha256Hash of the XLSX bytes for reproducibility.
retrievedAtUTC retrieval time.

Missing optional source values are null. Source ZIP and NAICS values are retained as text, without guessed corrections. The default dataset contains one record type only: matching public filing-list rows.

Output example

This shortened example is based on a current public-source local result; full dataset records also include the URLs, filename and hash described above.

{
"companyName":"1 Accord Consulting LLC",
"hiringLocationName":null,
"address":"8014C Hammock Lane",
"city":"Pasadena",
"state":"MD",
"zip":"21122",
"naics":"541330",
"sheetYear":"2026",
"filingListPresence":true,
"sourceRow":2
}

The key-value store's search summary lists selected/available years, scanned and returned rows, archive size and whether the row limit was reached. It is included with the run. Source row counts are not employee or veteran counts.

How much does it cost to verify VETS-4212 public filing presence?

The Actor uses pay-per-event pricing: one start event per valid run and one item event per produced public filing-list row. Rejected rows, duplicates and empty search results have no item charge. A valid no-match search still incurs the start fee because it downloads and scans the public source.

The run-start event costs $0.005. Per public filing-list row:

Spend tierPrice per row
FREE$0.010686
BRONZE$0.009292
SILVER$0.0072478
GOLD$0.0055752
PLATINUM$0.0055752
DIAMOND$0.0055752

For example, at BRONZE the event fees are $0.014292 for one row, $0.05146 for five rows, and $0.9342 for 100 rows, including one start event. A valid no-match search costs $0.005 in Actor event fees. Spend tiers follow your qualifying aggregate monthly Store spend, not a per-Actor volume schedule.

The displayed Apify pricing panel is authoritative. Pricing varies by subscription tier; platform usage and any separately applicable Apify charges are distinct from the Actor's event fees.

Limits and interpretation

  • No veteran counts, employment totals, private filing forms or legal opinions.
  • A match is a public row, not an authenticated employer identity or proof of all obligations.
  • A no-match result can reflect a name variation, unsupported year, source delay or incomplete source coverage.
  • No fuzzy entity resolution, company deduplication across locations, or enrichment from other sources.
  • Exact duplicate rows within a year are collapsed; the same company in different years remains separate.
  • Output traverses newest selected sheet first and retains its source order. A capped result is not a full inventory.
  • Billing limits, run timeouts and upstream failures can stop a run before maxItems.
  • The supported archive bound is 200 MiB. Unexpected workbook headers or structure fail rather than return a misleading empty success.

Reliability and troubleshooting

Transient network failures, HTTP 429 and temporary 5xx responses receive at most three total download attempts with bounded backoff. Permanent 4xx responses are not blindly retried. There is no automatic paid-proxy fallback or stale cached workbook.

No results? Try a shorter literal company substring and remove geographic/industry filters. Check the newest available sheet before interpreting absence.

Unavailable year? Select a year present in the current source workbook, or leave years empty. The Actor will not silently substitute a different explicit year.

Source changed or download failed? Check the official DOL links and run log. Failed runs must not be treated as completed negative supplier checks. Any dataset rows from a failed run are partial.

Integrations

Export the default dataset to a supplier-review spreadsheet or use Apify dataset APIs in an internal procurement pipeline. Join results to your own supplier roster outside the Actor and review ambiguous names manually.

For recurring checks, create an Apify schedule with a saved input and compare recordId, sheetYear and sourceSha256 across completed runs. This Actor does not maintain a cross-run history or send change alerts itself. Keep full exports in storage rather than placing an entire workbook in an LLM context.

API usage

Set your own APIFY_TOKEN securely. The examples below start one run and return run metadata; they do not return dataset rows immediately.

curl -X POST -H "Authorization: Bearer $APIFY_TOKEN" \
-H 'Content-Type: application/json' \
'https://api.apify.com/v2/acts/automation-lab~vets-4212-contractor-records/runs' \
-d '{"company":"1 Accord","maxItems":5}'
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/vets-4212-contractor-records')
.call({ company: '1 Accord', maxItems: 5 });
const { items } = await client.dataset(run.defaultDatasetId).listItems({ limit: 5 });
console.log(items);
import os
from apify_client import ApifyClient
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/vets-4212-contractor-records').call(
run_input={'company': '1 Accord', 'maxItems': 5})
print(client.dataset(run['defaultDatasetId']).list_items(limit=5).items)

MCP setup

Use a stable Actor-specific subset:

claude mcp add --transport http apify \
'https://mcp.apify.com?tools=automation-lab/vets-4212-contractor-records'

Claude Desktop, Cursor and VS Code clients supporting remote HTTP MCP can use this equivalent configuration (authentication follows the client's Apify setup):

{"mcpServers":{"apify":{"url":"https://mcp.apify.com?tools=automation-lab/vets-4212-contractor-records"}}}

Discover actual tool names and input schemas with scoped tools/list. Actor selection also exposes run/data helpers; discovery alone does not authorize execution or aborts.

Example prompt: “Search the newest public VETS-4212 list for 1 Accord and show at most five rows. Explain that list presence is not a compliance conclusion.”

For an authorized invocation, start once and retain the run ID. If nonterminal, follow that same run with bounded 2/4/8/10-second backoff and a 120-second total deadline. Set the client request timeout above the chosen server wait plus transport margin. On client timeout, check the known run rather than starting again. At the deadline, report pending with the run ID.

After success, read the returned default dataset using explicit limit, offset and fields. An example consumer budget is pages of 20 source rows, at most 100 rows and 64 KiB of serialized UTF-8 result content admitted to the model, whichever comes first. Enforce the byte budget host-side, track source offsets and disclose truncation. Without response interception, do not claim a hard byte guarantee. These consumer limits do not change Actor collection defaults. Tool discovery/cache behavior depends on the client; no universal token-saving claim is made.

Legality and privacy

Use public filing-list data for lawful supplier research and follow applicable source terms and data-protection obligations. This Actor is independent of DOL. Do not use it as an authoritative legal compliance determination or infer individual veteran status.

Failed operations send sanitized diagnostic input, exceptions and Actor/build/run IDs to our private GlitchTip service for repair. Secret fields and URL queries are removed; reports are retained for 30 days.

FAQ

Does a match prove compliance? No. It proves only that a matching public row was present in this downloaded workbook.

Can I get veteran employment counts? No. This Actor excludes employment totals, veteran counts and private submission contents.

Does the Actor use AI? No runtime AI or model enrichment is used; filtering and output are deterministic.

How do I request help or delete data? Open an issue on the Actor's Apify page. Delete your datasets, key-value stores and run logs through your Apify account according to your retention requirements. The Actor uses ephemeral download files and removes them at completion; it does not keep a separate public-record history. Sanitized private diagnostic reports expire after 30 days. Apify storage and backup retention follows your account/platform policies, not an Actor-set automatic deletion deadline.

For separate procurement context, see SAM.gov Government Contracts Scraper and SBA DSBS Small Business Search. These workflows do not establish VETS-4212 filing presence.