Singapore GeBIZ Government Contracts & Tenders Scraper API
Pricing
from $9.23 / 1,000 results
Singapore GeBIZ Government Contracts & Tenders Scraper API
Scrape Singapore government awarded contracts and tenders from GeBIZ. Get tender number, procuring agency, winning supplier, contract value, award date, status and financial year. Filter by agency, supplier, status, date range and value. No API key. Export JSON, CSV, Excel.
Pricing
from $9.23 / 1,000 results
Rating
0.0
(0)
Developer
Scrapers Lat
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
0
Monthly active users
2 days ago
Last modified
Categories
Share
Singapore GeBIZ Government Contracts & Tenders Scraper API
Scrape Singapore government awarded contracts and tenders from GeBIZ as clean JSON, CSV or Excel. Get the tender number, procuring agency, winning supplier, contract value, award date, status and financial year for every published award since FY2021. No API key, no login, no browser setup. Filter by agency, supplier, status, award date range and contract value.
Here is one real result, with every field the actor returns:
{"tenderNo": "YRS000ETT24000004","agencyCode": "YRS","description": "[T04/2024] Training services for YRSG","agency": "Yellow Ribbon Singapore","supplier": "WONG FONG ACADEMY PTE. LTD.","awarded": true,"awardedAmount": 680,"currency": "SGD","awardDate": "16/6/2025","awardDateISO": "2025-06-16","awardYear": 2025,"awardMonth": "2025-06","financialYear": "FY2025","status": "Awarded by Items","source": "Singapore Government e-procurement (GeBIZ)","observedAt": "2026-09-04T14:16:50.944Z"}
The most complete Singapore GeBIZ government contracts scraper on Apify. It returns every field the official government procurement award feed exposes, plus a sortable ISO award date, award year, award month and Singapore financial year computed on top, and gives you the filters you need to target exactly the contracts you care about.
📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples
Table of contents
- What it does
- Who it is for
- How it compares
- Quickstart
- Input reference
- Output reference
- Example output record
- Run via API and CLI
- Fetch results
- Billing and limits
- FAQ and troubleshooting
What it does
This actor collects the official Singapore government procurement (GeBIZ) award history, applies the filters you pass as input, and writes one normalized record per contract award to the run's dataset. Each record carries the tender number, the awarding government agency, the winning supplier, the awarded amount, the award date and the award status.
On top of the raw values it adds fields that make the data ready to analyze: a sortable ISO award date (awardDateISO), the award year and month, the Singapore government financial year (financialYear, which runs 1 April to 31 March), and an agency reference code parsed from the tender number. Placeholder values from tenders that closed without a supplier are normalized to clean nulls and flagged with an awarded boolean, so your totals and supplier lists stay accurate. Amounts are in Singapore dollars (currency is SGD).
Use it for Singapore government tender data, awarded contract intelligence, supplier win analysis, agency spend benchmarking and public-sector lead generation, without an API key.
Who it is for
- Suppliers and bidders tracking which agencies buy what, and which competitors are winning.
- Market and competitive researchers benchmarking awarded contract values across agencies and financial years.
- Sales and lead-generation teams building lists of active government suppliers and the agencies that award to them.
- Analysts and journalists studying public-sector procurement spend over time.
How it compares
Verified against a manual GeBIZ / official open-data lookup and the other GeBIZ awards actors on Apify. This actor accepts every input the awards competitors accept and returns every field they return, plus more.
| Capability | This actor | nexgendata/singapore-gebiz-tenders | fortuitous_pirate/singapore-gebiz-government-procurement | zinin/gebiz-award-price-benchmark |
|---|---|---|---|---|
| Tender no, description, agency, supplier, amount, date, status | Yes | Yes | Partial | Partial |
| ISO award date + award year + award month | Yes | No | No | No |
| Singapore financial year (FY) field | Yes | No | No | No |
| Agency reference code | Yes | No | No | No |
| Cleans "no supplier" placeholder junk to null | Yes | No | No | No |
awarded success flag | Yes | No | No | No |
| Keyword search | Yes | Yes | Yes | Yes |
| Filter by agency | Yes | Yes | Yes | Yes |
| Filter by supplier | Yes | Yes | No | No |
| Filter by status / only successful awards | Yes | No | No | No |
| Award value range (min and max) | Yes | No | Min only | Min awards |
| Award date range (after / before) | Yes | Since-date only | No | No |
| Optional Apify Proxy support | Yes | Yes | No | No |
| Pay per result, no charge on failure | Yes | Varies | Varies | Varies |
Note: some other Apify actors scrape live open tender opportunities from the GeBIZ portal (with closing dates and contact details). This actor covers the awarded contract history (who won, for how much, and when), which is a different and complementary dataset.
Quickstart
Open the actor, paste this into the input, and press Run. It returns the 10 most recent contract awards.
{"maxContracts": 10,"sortByNewest": true}
Every input field is optional. Leave the filters empty to pull the full award history newest first.
Find every large award to one agency in a date window:
{"agency": "Ministry of Health","minAwardAmount": 100000,"awardedAfter": "2024-01-01","onlyAwarded": true,"maxContracts": 1000}
Input reference
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
maxContracts | integer | no | 10 | Maximum number of contract award records to collect. |
searchQuery | string | no | (empty) | Full-text keyword across tender number, description, agency and supplier, for example ACCENTURE, cloud, construction. |
agency | string | no | (none) | Keep only awards from agencies whose name or reference code contains this text, for example Ministry of Health, HDB. |
supplier | string | no | (none) | Keep only awards to suppliers whose name contains this text, for example NCS, PTE. LTD.. |
status | string | no | (none) | Keep only awards whose status contains this text: Awarded to Suppliers, Awarded by Items, Awarded to No Suppliers. |
onlyAwarded | boolean | no | false | Exclude tenders that closed without a supplier. Keeps only contracts actually awarded. |
minAwardAmount | integer | no | (none) | Only keep contracts awarded for at least this amount in SGD. |
maxAwardAmount | integer | no | (none) | Only keep contracts awarded for at most this amount in SGD. |
awardedAfter | string | no | (none) | Keep only awards dated on or after this date (YYYY-MM-DD). |
awardedBefore | string | no | (none) | Keep only awards dated on or before this date (YYYY-MM-DD). |
sortByNewest | boolean | no | true | Return the most recently added awards first. |
proxyConfiguration | object | no | (none) | Optional Apify Proxy configuration. Not required. |
Filters combine with logical AND. With no filters, the actor returns the full award history newest first, up to maxContracts.
Output reference
One dataset item per contract award. Values are null when the source does not publish them.
| Field | Type | Description |
|---|---|---|
tenderNo | string | GeBIZ tender number (unique per tender). |
agencyCode | string | Agency reference code parsed from the tender number, for example HDB. |
description | string | Tender description. |
agency | string | Government agency that awarded the contract. |
supplier | string | Winning supplier, or null if the tender closed with no supplier. |
awarded | boolean | true if the tender was awarded to a supplier, false if it closed with none. |
awardedAmount | integer | Awarded amount in Singapore dollars, or null if not published. |
currency | string | Currency of awardedAmount (SGD), or null when there is no amount. |
awardDate | string | Award date as published in the source (day/month/year text), for example 16/6/2025. |
awardDateISO | string | Award date normalized to YYYY-MM-DD for sorting, or null. |
awardYear | integer | Four-digit award year, or null. |
awardMonth | string | Award month as YYYY-MM, or null. |
financialYear | string | Singapore government financial year (1 Apr to 31 Mar), for example FY2025. |
status | string | Tender award status, for example Awarded by Items. |
source | string | Data source label. |
observedAt | string | ISO 8601 timestamp of when the record was collected. |
error | string | Present only on a failed run: a single item with a populated error field is written instead of results. |
Example output record
Real record from a live run (input {"maxContracts": 10, "sortByNewest": true}):
{"tenderNo": "YRS000ETT24000004","agencyCode": "YRS","description": "[T04/2024] Training services for YRSG","agency": "Yellow Ribbon Singapore","supplier": "WONG FONG ACADEMY PTE. LTD.","awarded": true,"awardedAmount": 680,"currency": "SGD","awardDate": "16/6/2025","awardDateISO": "2025-06-16","awardYear": 2025,"awardMonth": "2025-06","financialYear": "FY2025","status": "Awarded by Items","source": "Singapore Government e-procurement (GeBIZ)","observedAt": "2026-09-04T14:16:50.944Z"}
Run via API and CLI
Start a run and read the dataset. Replace <TOKEN> with your Apify API token.
Run synchronously and get dataset items in one call:
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~singapore-gebiz-contracts-scraper/run-sync-get-dataset-items?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"searchQuery":"cloud","minAwardAmount":100000,"maxContracts":50}'
Start a run asynchronously:
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~singapore-gebiz-contracts-scraper/runs?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"agency":"Ministry of Health","maxContracts":500}'
Apify CLI:
apify call scrapers_lat/singapore-gebiz-contracts-scraper \--input '{"searchQuery":"ACCENTURE"}'
Fetch results
Every run writes to a dataset. Fetch items as JSON, CSV or Excel by changing format:
# JSONcurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"# CSVcurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"# Paginate large datasetscurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"
<DATASET_ID> is returned as defaultDatasetId in the run object. clean=true drops empty and internal fields.
Billing and limits
- Pay per result. You are charged per record returned (
resultevent). See the pricing tab for the current per-result price. - No charge on failure. If a run errors, the actor writes a single item with a populated
errorfield and does not charge for it. Empty runs cost nothing. - Spend cap respected. Set
maxTotalChargeUsdon the run; once reached, the actor stops emitting and charging further billable results. - Free Apify plans are capped at 10 records per run. Upgrade for higher
maxContracts. - Large pulls are paced automatically. Very large or broadly filtered pulls take longer, since the actor scans the full award history to apply your filters.
FAQ and troubleshooting
A run returned 0 records. Why?
Your filters matched nothing. Loosen searchQuery, widen the amount or date range, or leave the filters empty to pull the full history. Zero-result runs are not charged.
How do I find all awards to one supplier?
Set supplier (or searchQuery) to the supplier name, for example ACCENTURE, and set maxContracts high.
How do I focus on large contracts?
Set minAwardAmount to a SGD threshold, for example 100000. Set maxAwardAmount to focus on small-value awards instead.
How do I get a single financial year?
Use awardedAfter and awardedBefore, for example 2024-04-01 to 2025-03-31 for FY2024. The financialYear field on each record makes grouping easy.
Why is supplier or awardedAmount null?
The tender closed with no supplier awarded (awarded is false), or the amount was not published. The actor returns clean nulls instead of placeholder text so your analysis stays accurate.
Is this an official GeBIZ tool? No. This actor is independent and has no affiliation with GeBIZ or the Singapore government. It reads only data that is publicly available through the official Singapore government open-data channels.
Related scrapers
- Singapore ACRA Entities Scraper: registered companies and businesses.
- Singapore BCA Registered Contractors Scraper: registered construction contractors.
- Singapore SGX Listed Companies Scraper: companies listed on the Singapore Exchange.
- Singapore MAS Financial Institutions Scraper: MAS regulated financial institutions.
- Singapore COE Prices & Bidding Results Scraper: COE bidding results and premiums.
More scrapers at scrapers.lat
Built and maintained by scrapers.lat, where we publish scrapers for public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.
Independent tool, not affiliated with GeBIZ or the Singapore government. Accesses only publicly available Singapore government open data.
