Cincinnati Business Opportunities Scraper avatar

Cincinnati Business Opportunities Scraper

Pricing

from $2.99 / 1,000 results

Go to Apify Store
Cincinnati Business Opportunities Scraper

Cincinnati Business Opportunities Scraper

Cincinnati Business Opportunities Scraper is a Python tool to extract solicitation numbers, project titles, submission deadlines, issuing departments, and contract details from city procurement portals. It exports structured bid datasets into clean CSV or JSON formats

Pricing

from $2.99 / 1,000 results

Rating

0.0

(0)

Developer

real-estate-api

real-estate-api

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Security

Limited permissions

Share

Cincinnati Business Opportunities Scraper — City Procurement and Bid Opportunity Records

Cincinnati Business Opportunities Scraper cover

Collect public bid opportunities and procurement records from the City of Cincinnati open data portal. Retrieve all available rows, apply custom filters, or inspect dataset metadata. Export structured results as JSON, CSV, Excel, or other supported formats.

Overview

This actor collects records from the City of Cincinnati's Business Opportunities (Archived) dataset. It supports full dataset collection, filtered searches, and metadata retrieval.

You can control the number of records collected, sort results, and filter opportunities using SoQL conditions or text searches.

Features

  • Collect business opportunity and procurement records.
  • Retrieve all available dataset rows in paginated batches.
  • Filter records using SoQL conditions.
  • Search records using full-text queries.
  • Retrieve dataset column names, types, and descriptions.
  • Set a maximum number of records per run.
  • Collect bid details, departments, buyers, deadlines, and document links.
  • Export results in JSON, CSV, Excel, and other supported formats.

Collection Modes

All Rows (rows): Collects records from the dataset using pagination and the selected sorting order.

Filtered Rows (filtered): Collects records matching the supplied SoQL where condition and/or full-text search query.

Dataset Metadata (metadata): Retrieves dataset column names, data types, and descriptions.

Input Parameters

ParameterTypeDescription
modeStringCollection mode: rows, filtered, or metadata.
maxItemsIntegerMaximum number of records to collect. Default is 100; maximum is 1,000.
orderByStringField or expression used to sort results. Defaults to :id.
whereStringOptional SoQL condition used to filter records.
requestDelaySecsNumberDelay between requests, in seconds.

Example Input

All Rows

{
"mode": "rows",
"maxItems": 50,
"orderBy": ":id",
"requestDelaySecs": 1
}

Filtered Rows

{
"mode": "filtered",
"where": "status='Under Review'",
"maxItems": 25,
"requestDelaySecs": 1
}

What Data Does This Actor Extract?

Available fields depend on the records returned by the dataset.

FieldDescription
bid_project_numberUnique bid or project reference number.
statusCurrent or recorded opportunity status.
project_nameName of the procurement project.
requesting_departmentCity department requesting the procurement.
buyerBuyer or procurement contact name, when available.
procurement_typeProcurement method, such as Request for Proposals.
date_dueBid submission deadline.
bid_booklet_pdfBid booklet document details and download link, when available.
addendum_1_pdfFirst addendum document details and download link, when available.
scraped_atTimestamp when the record was collected.

Example Output

{
"bid_project_number": "RFP669CRCHIRSCH",
"status": "Under Review",
"project_name": "Hirsch Recreation Fitness Equipment and Center Upgrades",
"requesting_department": "Recreation",
"buyer": "David Nash",
"procurement_type": "Request for Proposals",
"date_due": "2019-02-05T00:00:00.000Z",
"bid_booklet_pdf": {
"url": "https://data.cincinnati-oh.gov/views/b397-t996/files/226f9cc2-bb32-45ad-a8f2-dd4a20e1f9ed?filename=RFP669CRCHIRSCH+-+Final.pdf"
},
"addendum_1_pdf": {
"url": "https://data.cincinnati-oh.gov/views/b397-t996/files/bf2d653d-a179-4860-acf5-17af846f346b?filename=RFP669CRCHIRSCH+-+ADDENDUM+1.pdf"
},
"scraped_at": "2026-10-26T00:00:00+00:00"
}

Use Cases

  • Bid Opportunity Monitoring: Track Cincinnati procurement opportunities and bid deadlines.
  • Business Development: Identify public purchasing opportunities relevant to your products or services.
  • Market Research: Analyze project descriptions, procurement types, departments, and buyers.
  • Government Contracting: Build structured lists of public-sector bid opportunities.
  • Document Collection: Organize available bid booklets and addendum links for review.
  • Procurement Analysis: Export historical opportunity records for reporting and research.

Working with Your Dataset

After the actor finishes running, open its dataset to explore the collected records. You can:

  • Export records as JSON, CSV, Excel, and other supported formats.
  • Filter opportunities by status, department, or procurement type.
  • Sort records by bid deadline or project number.
  • Open available bid booklet and addendum links.
  • Import the exported data into spreadsheets or data analysis tools.

FAQ

Who is this actor for?

It is useful for contractors, suppliers, procurement researchers, business development teams, analysts, and developers interested in Cincinnati public procurement opportunities.

What export formats are supported?

You can export the dataset as JSON, CSV, Excel, and other formats supported by Apify.

Can I filter opportunities by status?

Yes. Use the where parameter with a SoQL condition, such as status='Under Review'.

Can I search for specific keywords?

Yes. The filtered collection mode supports full-text search using the dataset's search functionality.

Can I retrieve dataset metadata?

Yes. Select metadata mode to retrieve available column names, types, and descriptions.

Can I run it on a schedule?

Yes. You can configure an Apify schedule to run the actor automatically at your preferred interval.

What happens if a page cannot be collected?

The actor continues processing other pages when possible. A failed page may not produce records.

How many records can one run collect?

The default maxItems value is 100, and the maximum is 1,000 records per run.

Are these all current bid opportunities?

Not necessarily. The source dataset is identified as an archived Business Opportunities dataset. Some records may be historical or have expired deadlines. Verify opportunity status and deadlines before making business decisions.

Disclaimer

This is an independent data collection tool and is not affiliated with, endorsed by, sponsored by, or officially associated with the City of Cincinnati. The City of Cincinnati name and related trademarks belong to their respective owners.

The actor collects information from publicly accessible government records. Users are responsible for ensuring that their collection and use of the data comply with applicable laws and the source's terms.

Collecting information that is already public is generally legal. There is no single law that bans all forms of web scraping. The limits are the usual ones: do not break into accounts, do not take private or confidential data, and be careful with personal data and copyrighted works. A site's terms can also restrict how you access it. Facts such as a public name, price, or rating are not the same thing as republishing someone's article or photo.

This actor collects information from public pages. It does not log in and it does not bypass access controls.

For a longer explanation, see Apify's article Is web scraping legal?.