# Federal Contract Award Leads — Companies That Just Won (`omegapointsolutions/federal-contract-award-leads`) Actor

US companies that just won a federal contract, from the official USASpending.gov API — with award amount, agency, NAICS/PSC, location and UEI. Scored by freshness, award size and repeat wins. For subcontractors, suppliers, staffing firms, GovCon consultants and receivables factors.

- **URL**: https://apify.com/omegapointsolutions/federal-contract-award-leads.md
- **Developed by:** [Omega Point Solutions](https://apify.com/omegapointsolutions) (community)
- **Categories:** Lead generation, Business
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $20.00 / 1,000 leads

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Federal Contract Award Leads

**US companies that just won a federal contract — while the money is still unspent.**

Every business day the federal government obligates money to thousands of companies.
Each of those companies has just acquired a budget, a deadline, and a delivery
obligation. This Actor turns that public record into a scored, sales-ready lead list.

Data comes from the **official USASpending.gov API** — the government's own public
API. No scraping, no logins, no terms-of-service grey area.

### Who buys these leads

| Buyer | Why a fresh award matters |
|---|---|
| Subcontractors & suppliers | The prime just won work and needs to source it out, now |
| Staffing & recruiting | New contract means new billets to fill against a deadline |
| GovCon consultants | Compliance, DCAA accounting, CMMC, proposal support |
| Receivables factoring | Federal receivables are prime factoring collateral |
| Bonding & insurance agents | New performance obligations need new coverage |

### What makes this different

**Freshness is enforced, not claimed.** The API's `new_awards_only` filter is
mandatory in this Actor. Without it, a "last 14 days" query returns contracts first
awarded in 1993 whose period of performance merely overlaps your window — a trap that
makes a lead list look full while being worthless.

**Sorted by date, not dollars.** Sorting by award amount looks smarter but biases a
capped run toward billion-dollar awards to established primes — the *least* sellable
leads. This pages newest-first.

**Repeat-winner detection.** Recipients are resolved by UEI, not by name string, so
"ACME CORP" and "Acme Corp." are one company. A recipient with several awards inside
the window is flagged as actively buying and scored up.

**Every score is explained.** Each lead carries `score_reasons` in plain English.
A lead you can't justify is a lead your sales team won't call.

### Scoring

0–100, weighted toward recency, because a 60-day-old award has already been
subcontracted:

- **Recency** — up to 40 points (within 7 days), decaying to 3 at 90 days
- **Award size** — peaks at 22 points for $250K–$2M; very large awards score *lower*,
  since those primes already have a supplier bench
- **Repeat wins** — +8 per extra award in the window, capped at +24
- **Likely new entrant** — +12 for a single mid-size award

### Output

Recipient name, UEI, award ID, amount, award date and age, award type, awarding and
funding agency, work description, NAICS and PSC codes with descriptions, recipient
city/county/state/ZIP, place of performance, a link to the source record on
USASpending, plus `lead_score` and `score_reasons`.

### Input

All optional — running with no input returns the last 14 days nationwide.

- `lookbackDays` (default 14) — federal data lands with a reporting lag, so windows
  under 7 days can return very little
- `states` — place-of-performance state codes, e.g. `IL`, `MO`
- `agencies` — top-tier agency names as USASpending spells them
- `naicsCodes` — restrict to specific industries
- `minAwardAmountUsd` — screen out micro-purchases
- `minLeadScore` — only return leads at or above a score
- `maxResults` (default 1000)

### Pricing

Pay per event: **$0.02 per lead delivered**. Your own maximum-charge setting for a run
can stop delivery before `maxResults` is reached — the run report records exactly how
many records were dropped for that reason, so you are never silently short-changed.

### Notes and limits

- USASpending reports **prime** contract awards. Subcontract data is separate and not
  included here.
- Award records are reported by agencies with a lag; very recent awards may appear
  days after the obligation date.
- Contact details are not part of the federal award record. Leads carry the company's
  UEI, legal name and address, which are what you need to match against your own CRM
  or an enrichment provider.
- Grants and loans use different award-type codes and a different record shape; they
  are not included.

### Source

USASpending.gov API — `api.usaspending.gov/api/v2/search/spending_by_award/`.
Public domain US government data.

***

Built by **Omega Point Solutions LLC**.

# Actor input Schema

## `lookbackDays` (type: `integer`):

How far back to look for newly obligated awards. Federal award data lands on USASpending with a short reporting lag, so windows under 7 days can return very little. 14 is a good default.

## `states` (type: `array`):

Optional two-letter state codes to restrict where the work is performed, e.g. IL, MO. Leave empty for the whole United States.

## `agencies` (type: `array`):

Optional top-tier agency names exactly as USASpending spells them, e.g. "Department of Veterans Affairs". Leave empty for all agencies.

## `naicsCodes` (type: `array`):

Optional NAICS industry codes to restrict the results, e.g. 236220 for commercial building construction. Leave empty for all industries.

## `minAwardAmountUsd` (type: `integer`):

Skip awards below this dollar value. Useful for filtering out micro-purchases.

## `minLeadScore` (type: `integer`):

Only return leads scoring at or above this value (0-100). Every lead explains its own score in score\_reasons.

## `maxResults` (type: `integer`):

Caps how many leads are returned and charged. Note that your own maximum-charge setting for the run may stop delivery before this limit is reached.

## `requestDelaySeconds` (type: `number`):

Politeness delay between paged requests to the USASpending API.

## Actor input object example

```json
{
  "lookbackDays": 14,
  "states": [],
  "agencies": [],
  "naicsCodes": [],
  "minAwardAmountUsd": 0,
  "minLeadScore": 0,
  "maxResults": 1000,
  "requestDelaySeconds": 0.25
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("omegapointsolutions/federal-contract-award-leads").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("omegapointsolutions/federal-contract-award-leads").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call omegapointsolutions/federal-contract-award-leads --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,omegapointsolutions/federal-contract-award-leads"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/pCP6Kb2g2V1ha5vkI/builds/Vytjv3YxevU2xuElF/openapi.json
