usas_search_recompetes
Find federal contracts with current period of performance end dates inside a configurable window, sorted soonest-first. Filter by agency, NAICS, PSC codes, set-aside, and minimum award value.
Instructions
Recompete radar — federal contracts whose CURRENT period of performance ends inside a window around today (default -90d .. +18mo), sorted soonest-first. Use for 'what VA 541512 contracts are up for recompete in the next 18 months'. Reads the current PoP end date directly from spending_by_award (no per-award enrichment), counts (never drops) rows with missing end dates, and flags in _meta when the scan budget truncates the window (totalAvailable becomes null). Filter by agency/naics/pscCodes/setAside/minAwardValue; set includePotentialEnd for option-inclusive end dates. Public signals only — no CPARS/protest/option-intent, no composite vulnerability score.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | 1-based page (default 1). | |
| naics | No | 6-digit NAICS code, e.g. '541512' | |
| agency | No | Canonical awarding toptier agency name (use usas_lookup_agency) | |
| pageSize | No | Rows per page (default 25, max 100). | |
| pscCodes | No | Product/Service Codes to filter on, e.g. ['DA01','R425'] | |
| setAside | No | USAspending set_aside_type_code (honored server-side) | |
| minAwardValue | No | Minimum Award Amount ($) to include (default 0). | |
| windowEndDays | No | Upper edge of the window in days from today (default 548 ≈ 18 months). | |
| scanBudgetPages | No | Max 100-row pages to scan before giving up (default 8). If exhausted before the window ends, results are a lower bound and totalAvailable is null. | |
| windowStartDays | No | Lower edge of the recompete window in days from today (default -90 = include contracts that ended up to 90 days ago). | |
| includePotentialEnd | No | Also return the potential (option-inclusive) PoP end date + extendableDays (default false). | |
| actionDateLookbackYears | No | action_date lower bound in years (default 3). Contracts with no recorded action in this span are excluded — this bound makes the End-Date sort reach the window. |