NYC Government Contracts & Procurement - Awards & Solicitations avatar

NYC Government Contracts & Procurement - Awards & Solicitations

Pricing

from $0.03 / 1,000 nyc contract records

Go to Apify Store
NYC Government Contracts & Procurement - Awards & Solicitations

NYC Government Contracts & Procurement - Awards & Solicitations

New York City contract awards (53,868) and open solicitations (45,257) from the Office of Citywide Procurement (public open data). Search by agency, vendor, PIN, category or date; look up one notice; or aggregate awards by agency or category. The historical bid tabulations are a third corpus.

Pricing

from $0.03 / 1,000 nyc contract records

Rating

0.0

(0)

Developer

Wenhao Yang

Wenhao Yang

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

New York City's own procurement register: ~53,900 contract awards and ~45,300 open solicitations from the Office of Citywide Procurement, plus the historical bid tabulations. Who the city awarded, to which vendor, for how much - and what is open for bids right now, and until when.

Low cost

From $0.00005 per record, down to $0.00003 at Gold. Pay only for the records you actually receive - the whole register stays queryable, and you are never billed for the scan behind it.

Three registers, one shape

  • awards (default) - contracts NYC has awarded: agency, vendor, amount, PIN, selection method, start date. ~53,900 awards back to 2003.
  • solicitations - open requests for bids and proposals: agency, category, the PIN, and the response due date. ~45,300 notices.
  • bids - the bid tabulations: which bidder priced which line item and at what price. 57,704 lines. This table is frozen - its most recent bid dates to 2021 and it was last updated in 2023; it is a historical pricing register.

Find awards and opportunities

  • Agency - agency="Parks", "Police", "Sanitation".
  • Vendor - vendor="Dell" (awards only).
  • Category - category is one of 6 (Goods, Services, Construction ).
  • Method - selectionMethod="Sole Source", "Request for Proposals".
  • When - dateFrom / dateTo (start), dueFrom / dueTo (deadline).
  • How much - minAmount / maxAmount (awards).
{ "corpus": "solicitations", "category": "Construction/Construction Services",
"dueFrom": "2026-11-01", "maxResults": 50 }
{ "corpus": "awards", "vendor": "Dell", "minAmount": 100000, "maxResults": 50 }

Look up one notice

mode=record returns a single notice by its request id (or the bid number for the bids corpus):

{ "mode": "record", "requestId": "20261005010" }

Or roll it up

mode=aggregate returns one count row per group - agency, category, selection method or year. Every group comes back; this mode is not cut off by maxResults.

{ "corpus": "awards", "aggregate": true, "groupBy": "agency" }
Citywide Administrative Services 13,350
Health and Mental Hygiene 5,368
Dept. of Social Svcs/Human Resources Administration 4,353

Example output

One award - mode=record, corpus=awards:

{
"platform": "nyc-contracts",
"corpus": "awards",
"requestId": "20261005010",
"pin": "05625U0007001R001",
"agencyName": "Police Department",
"category": "Services (other than human services)",
"selectionMethod": "Renewal",
"shortTitle": "Training for Forensic Interviewing",
"contractAmount": "213940",
"vendorName": "National Children's Advocacy Center",
"startDate": "2026-10-09",
"mode": "record"
}

Notes on the data, from the source

  • One row = one procurement notice (one award or one solicitation). The request id is unique on each table.
  • A solicitation has no vendor yet - that is why vendor applies to awards only; ask for it against solicitations and the actor says so rather than returning nothing.
  • The award amount is populated on ~15% of solicitations (an estimate) and on most awards. Blank means the source did not state one.
  • due_date is blank when the source has no deadline (the source stores a far-future placeholder such as 2099-12-31); it is never shown as a real date, and a dueFrom / dueTo filter excludes those open-ended records.
  • The event-location columns in the source are empty on essentially every row, so they are not published. The real submission address is addressToRequest, present on 96% of solicitations.
  • The registers refresh daily. Awards and solicitations go back to 2003; the bid tabulations stopped in 2023.