# Singapore Government Data API (`lentic_clockss/singapore-government-data-search`) Actor

Searches Singapore government data across 6 official sources including HDB resale prices, ACRA business entities, GeBIZ procurement, MOH facilities, MOH portal links, and Courts Judgments Hub via the SIP API.

- **URL**: https://apify.com/lentic\_clockss/singapore-government-data-search.md
- **Developed by:** [kane liu](https://apify.com/lentic_clockss) (community)
- **Categories:** Lead generation, MCP servers
- **Stats:** 1 total users, 0 monthly users, 0.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Singapore Government Data Search

Search **6 official Singapore government data sources** in a single API call — ACRA business registry, HDB resale flat prices, GeBIZ procurement tenders, MOH inpatient facilities and beds, MOH portal resources, and Courts Judgments Hub. All data from official Singapore government open data portals through the SIP Public Data Gateway.

### What is Singapore Government Data Search?

Singapore Government Data Search is an Apify Actor that queries official Singapore government databases across business, property, health, legal, and procurement domains. Instead of visiting data.gov.sg, ACRA, HDB, GeBIZ, and MOH portals separately, you search them all at once.

The Actor calls the **SIP Public Data Gateway** — a unified API that normalizes responses from 6 Singapore data products. No browser, no scraping — just HTTPS API calls to official government sources.

### Why use Singapore Government Data Search?

- **One search, 6 sources** — Query ACRA companies, HDB resale prices, GeBIZ tenders, MOH facilities, and court judgments simultaneously
- **Official government data** — All sources are public databases from Singapore government agencies
- **HDB resale intelligence** — Search Singapore's most-used property dataset by town, flat type, or street name
- **Business verification** — ACRA company and business name lookups for due diligence
- **Structured JSON output** — Every record includes source metadata for traceability

#### Use cases

| Who | What |
|-----|------|
| **Property analysts** | Search HDB resale flat transaction data by town, street, or flat type |
| **Due diligence teams** | Look up ACRA business registrations and company details |
| **Government suppliers** | Monitor GeBIZ procurement tenders and contract opportunities |
| **Healthcare researchers** | Access MOH inpatient facility data and bed counts |
| **Legal professionals** | Search Singapore Courts Judgments Hub for case law |
| **Data analysts** | Combine multiple Singapore government datasets in one query |

### What data can Singapore Government Data Search extract?

| Source | Data type | Example fields |
|--------|-----------|----------------|
| ACRA business registry | Company and business registrations | entity_name, uen, status, type |
| HDB resale prices | Flat resale transaction records | town, flat_type, storey_range, resale_price, month |
| GeBIZ procurement | Government tender notices | tender_no, agency, title, close_date |
| MOH inpatient facilities | Hospital and facility bed counts | facility_name, beds, type |
| MOH portal | Ministry of Health resource links | title, url, category |
| Judiciary judgments | Court judgment references | case_name, court, date |

### How to search Singapore data

1. Open the Actor in Apify Console
2. Enter search terms (e.g. "DBS", "Tampines", "hospital", "tender")
3. Click **Start** — the Actor queries all 6 sources in parallel
4. Download results as JSON, CSV, or Excel

#### Example input

```json
{
  "searchTerms": ["Tampines", "Clementi"],
  "maxResultsPerSource": 50
}
````

### Output

Each row is a record from a Singapore government source:

```json
{
  "town": "TAMPINES",
  "flat_type": "4 ROOM",
  "storey_range": "07 TO 09",
  "resale_price": "520000",
  "month": "2026-03",
  "_product_id": "sg_hdb_resale",
  "_source": "hdb_resale",
  "_search_term": "Tampines",
  "_collected_at": "2026-04-08T14:00:00Z"
}
```

### How much does it cost?

Pay-per-event pricing at $3.00 per 1,000 records returned.

- **Quick lookup** (1 term): ~$0.01-0.05
- **Full search** (5 terms, all sources): ~$0.10-0.50

No browser overhead. Control costs with `maxResultsPerSource`.

### Data sources (6 Singapore products)

| Category | Source | Product ID |
|----------|--------|-----------|
| Business | ACRA business registry | sg\_acra\_business |
| Property | HDB resale flat prices | sg\_hdb\_resale |
| Procurement | GeBIZ government tenders | sg\_gebiz\_procurement |
| Health | MOH inpatient facilities & beds | sg\_moh\_inpatient\_facilities\_beds |
| Health | MOH portal navigation links | sg\_moh\_portal\_navigation\_links |
| Legal | Courts Judgments Hub | sg\_judiciary\_judgments\_hub\_links |

### FAQ

**Can I search HDB resale by specific town?**
Yes. Use town names like "Tampines", "Clementi", or "Ang Mo Kio" as search terms. Results include transaction prices, flat types, and storey ranges.

**Does ACRA data include UEN numbers?**
Yes. ACRA business entity records include UEN (Unique Entity Number), entity name, status, and registration type.

**How current is the data?**
HDB resale data updates monthly. GeBIZ tenders update as agencies publish. ACRA data reflects the latest published registry state.

### Use as MCP Tool (AI Agent Integration)

This Actor works as an MCP tool — AI agents (Claude, GPT, Cursor) can discover and run it automatically.

#### Quick setup (Claude Desktop / Cursor / VS Code)

Add to your MCP config:

```json
{
  "mcpServers": {
    "apify": {
      "url": "https://mcp.apify.com",
      "headers": {
        "Authorization": "Bearer YOUR_APIFY_TOKEN"
      }
    }
  }
}
```

Then ask your AI: *"Search for DBS Bank in Singapore government databases"*

#### Direct API call

```python
from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("lentic_clockss/singapore-government-data-search").call(
    run_input={"searchTerms": ["DBS"], "maxResultsPerSource": 50}
)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)
```

### Other Data API Actors

- [Taiwan Government Data API](https://apify.com/lentic_clockss/taiwan-data-search)
- [Japan Government Data API](https://apify.com/lentic_clockss/japan-government-data-search)
- [Australia Government Data API](https://apify.com/lentic_clockss/australia-data-search)
- [US Business Entity Data API](https://apify.com/lentic_clockss/us-business-entity-search)

# Actor input Schema

## `searchTerms` (type: `array`):

Keywords to search (e.g. 'DBS', 'Tampines', 'hospital', 'tender'). Each term is searched across all 6 Singapore data sources in parallel.

## `maxResultsPerSource` (type: `integer`):

Maximum records to return per data source (gateway caps at 200).

## Actor input object example

```json
{
  "searchTerms": [
    "DBS"
  ],
  "maxResultsPerSource": 50
}
```

# Actor output Schema

## `records` (type: `string`):

Dataset containing business, property, health, legal, and procurement data from 6 Singapore government sources.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchTerms": [
        "DBS"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("lentic_clockss/singapore-government-data-search").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "searchTerms": ["DBS"] }

# Run the Actor and wait for it to finish
run = client.actor("lentic_clockss/singapore-government-data-search").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchTerms": [
    "DBS"
  ]
}' |
apify call lentic_clockss/singapore-government-data-search --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=lentic_clockss/singapore-government-data-search",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Singapore Government Data API",
        "description": "Searches Singapore government data across 6 official sources including HDB resale prices, ACRA business entities, GeBIZ procurement, MOH facilities, MOH portal links, and Courts Judgments Hub via the SIP API.",
        "version": "0.1",
        "x-build-id": "fFttYFf469RKQ6RQr"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/lentic_clockss~singapore-government-data-search/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-lentic_clockss-singapore-government-data-search",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/lentic_clockss~singapore-government-data-search/runs": {
            "post": {
                "operationId": "runs-sync-lentic_clockss-singapore-government-data-search",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/lentic_clockss~singapore-government-data-search/run-sync": {
            "post": {
                "operationId": "run-sync-lentic_clockss-singapore-government-data-search",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "searchTerms"
                ],
                "properties": {
                    "searchTerms": {
                        "title": "Search terms",
                        "type": "array",
                        "description": "Keywords to search (e.g. 'DBS', 'Tampines', 'hospital', 'tender'). Each term is searched across all 6 Singapore data sources in parallel.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxResultsPerSource": {
                        "title": "Max results per source",
                        "minimum": 1,
                        "maximum": 200,
                        "type": "integer",
                        "description": "Maximum records to return per data source (gateway caps at 200).",
                        "default": 50
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
