Discover/passport.cityofnewyork.us API
live

passport.cityofnewyork.us APIpassport.cityofnewyork.us

Access NYC PASSPort public procurement solicitations. Retrieve RFx listings with agency, EPIN, status, procurement method, and release date via 2 endpoints.

Endpoints
2
Updated
3mo ago
Try it
Optional keyword to filter solicitations by name or description.
Maximum number of pages to retrieve. Each page contains 15 results.
api.parse.bot/scraper/818a1929-82b5-4d75-a8cc-bdfe20bd21a1/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Use it in your codegrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/818a1929-82b5-4d75-a8cc-bdfe20bd21a1/list_solicitations?max_pages=1' \
  -H 'X-API-Key: $PARSE_API_KEY'
All endpoints · 2 totalclick to expand

List all public solicitations available on NYC PASSPort. Automatically paginates through result pages to retrieve data. Each page contains 15 results.

Input
ParamTypeDescription
keywordstringOptional keyword to filter solicitations by name or description.
max_pagesintegerMaximum number of pages to retrieve. Each page contains 15 results.
Response
{
  "type": "object",
  "fields": {
    "total_count": "integer - total number of solicitations available on the site",
    "solicitations": "array of solicitation objects with program, industry, epin, procurement_name, agency, rfx_status, procurement_method, release_date, due_date, remaining_time, main_commodity, and detail_id",
    "retrieved_count": "integer - number of solicitations actually retrieved"
  },
  "sample": {
    "data": {
      "total_count": 151,
      "solicitations": [
        {
          "epin": "06926P0008",
          "agency": "DEPARTMENT OF SOCIAL SERVICES",
          "program": "(0705) DOMESTIC VIOLENCE SERVICES",
          "due_date": "12/31/2099 7:00:00 PM",
          "industry": "Human/Client Service",
          "detail_id": "36777",
          "rfx_status": "Released",
          "release_date": "5/13/2026 5:00:00 PM",
          "main_commodity": "Housing Services",
          "remaining_time": "Buyer has not set a bid due date",
          "procurement_name": "06926P0008-Open-Ended RFx for DV Emergency Shelter Beds",
          "procurement_method": "Competitive Sealed Proposal"
        }
      ],
      "retrieved_count": 15
    },
    "status": "success"
  }
}

About the passport.cityofnewyork.us API

The NYC PASSPort Solicitations API provides access to New York City's public procurement opportunities through 2 endpoints, returning fields like EPIN, agency, procurement method, RFx status, and release date for every active solicitation. The list_solicitations endpoint retrieves all public RFx records with automatic pagination, while search_solicitations filters results by keyword across solicitation names and descriptions.

What the API Returns

Both endpoints return an array of solicitation objects drawn from NYC PASSPort, the City of New York's Procurement and Sourcing Solutions Portal. Each object includes: program, industry, epin (the unique procurement identifier), procurement_name, agency, rfx_status, procurement_method, and release_date. The response also surfaces total_count (total solicitations available on the site) and retrieved_count (how many were actually fetched in the current request).

Endpoints and Parameters

list_solicitations accepts an optional keyword string to filter by name or description, and an optional max_pages integer to cap how many pages are fetched — each page holds 15 records. This makes it straightforward to do a full sweep of all open solicitations or limit retrieval to a manageable batch.

search_solicitations takes the same keyword and max_pages parameters and additionally echoes back the keyword field in the response so you can confirm which query produced the results. Use this endpoint when you want to target a specific topic, industry, or agency name rather than pulling the full list.

Pagination and Coverage

Results are paginated at 15 solicitations per page on the source portal. Both endpoints handle pagination automatically up to the max_pages limit you specify. Omitting max_pages will retrieve all available pages. The total_count field lets you calculate how many pages exist before committing to a full retrieval.

Common use cases
  • Monitor new RFx releases from specific NYC agencies by polling list_solicitations and filtering on the agency field.
  • Build a procurement alert system that runs search_solicitations with industry-specific keywords and flags new release_date entries.
  • Compile a dataset of NYC contracting opportunities segmented by procurement_method (RFP, RFQ, RFI) for competitive analysis.
  • Track rfx_status changes over time to identify solicitations moving from open to awarded or cancelled.
  • Populate a vendor-facing dashboard with open NYC solicitations matched to a company's registered industry categories.
  • Research NYC procurement patterns by aggregating solicitation volume per agency over time using total_count and paginated records.
  • Cross-reference epin values against contract award databases to map solicitations to their eventual outcomes.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000250 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does NYC PASSPort have an official developer API?+
NYC does publish some open data through NYC Open Data (data.cityofnewyork.us), but PASSPort itself does not offer a documented public developer API for querying solicitation data programmatically.
What does the `epin` field represent and how is it useful?+
The epin (Electronic Procurement Identification Number) is the unique identifier assigned to each procurement in the NYC PASSPort system. It can be used to look up a specific solicitation directly on the portal and to join records across datasets that reference the same procurement.
What is the difference between `list_solicitations` and `search_solicitations`?+
list_solicitations retrieves all public solicitations on the portal, with an optional keyword filter applied client-side. search_solicitations submits the keyword as a search query and returns only matching results, also surfacing the keyword field in the response to confirm which query was used. For broad sweeps use list_solicitations; for targeted lookups use search_solicitations.
Does the API return solicitation documents, attachments, or award details?+
Not currently. The API returns the solicitation metadata fields listed above — name, agency, EPIN, status, method, release date, program, and industry — but not attached documents, addenda, or contract award information. You can fork this API on Parse and revise it to add an endpoint that retrieves solicitation detail pages and associated attachments.
Are there any limitations on how much data can be retrieved in one request?+
Each page contains 15 solicitations. Setting max_pages controls the upper bound on records returned. If max_pages is omitted, the API will paginate through all available pages, which can result in a large response when total_count is high. For large datasets, setting a reasonable max_pages value and iterating incrementally is advisable.
Page content last updated . Spec covers 2 endpoints from passport.cityofnewyork.us.
Related APIs in Government PublicSee all →
identify.plantnet.org API
Identify and explore plant species by searching through Pl@ntNet's comprehensive botanical database to access detailed information like taxonomic families, genera, species descriptions, photos, and community observations. Track plant distributions, view contribution trends, and discover expert contributors within the platform's collaborative plant identification community.
data.lime.bike API
Access real-time availability data for Lime bikes and scooters, including station locations, vehicle status, system alerts, and geofencing zones across multiple cities. Monitor micromobility inventory and service information to find nearby vehicles or plan your trips effectively.
accessdata.fda.gov API
Search and retrieve comprehensive FDA premarket approval information for medical devices, including approval status, supplements, applicant details, and advisory committee data. Get instant access to specific PMA records with all relevant approval information in one place.
eprocurement.gov API
Monitor India's public procurement opportunities by accessing active tenders, bids closing today, global tenders, high-value contracts, and cancelled tenders from the Central Public Procurement Portal. Search tender details, browse participating organizations, and track real-time procurement statistics to stay informed on government contracting opportunities.
cmegroup.com API
Get CME Group market data including FedWatch interest-rate probabilities, futures quotes and settlements, volume/open interest history, and options expirations and near-the-money option chains.
alienvault.com API
Search and analyze global threat intelligence data including indicators of compromise, threat pulses, and adversary profiles from the Open Threat Exchange community. Monitor recent security alerts and access detailed information about threats and adversaries to strengthen your cybersecurity defenses.
api.nasa.gov API
Access NASA's suite of open data APIs — including the Astronomy Picture of the Day, Near Earth Object tracking, DONKI space weather events, EPIC Earth imagery, Mars weather, the NASA Image and Video Library, the Exoplanet Archive, and EONET natural events.
mahatenders.gov.in API
Access Maharashtra government tenders from mahatenders.gov.in, browsing them by closing date or by organization with full tender details and pagination support. Find and review procurement opportunities across different government departments in one place.
NYC PASSPort Solicitations API · Parse