Skip to content
Data
Skill

/singapore-acra

Look up Singapore companies for free via the official ACRA open data on data.gov.sg - entity name, UEN (Unique Entity Number), entity status (Registered / Deregistered), entity type, registration date, and registered address. Use for KYB / know-your-business checks, counterparty

From plugin
getregdata
747 skills1 MCP

Claude Code

$ npx -y skills add Nolpak14/getregdata --skill singapore-acra --agent claude-code

SKILL.md

singapore-acra.SKILL.md
name: singapore-acra
description: "Look up Singapore companies for free via the official ACRA open data on data.gov.sg - entity name, UEN (Unique Entity Number), entity status (Registered / Deregistered), entity type, registration date, and registered address. Use for KYB / know-your-business checks, counterparty verification, UEN resolution, and Singapore company due diligence. Trigger on: 'ACRA', 'Singapore company lookup', 'check a Singapore company', 'UEN lookup', 'Unique Entity Number', 'is this Singapore company registered', 'Singapore entity search', 'data.gov.sg ACRA'. The ACRA open dataset is free and needs no key; for officer, shareholder and financial DEPTH - and for jurisdictions with no free API - this skill points you to the paid ACRA BizFile API and the regdata registry actors."
metadata:
  version: 1.0.0
  author: regdata
  tags:
    - acra
    - singapore
    - uen
    - kyb
    - know-your-business
    - company-lookup
    - due-diligence
    - free-api
    - government-registry
  triggers:
    - "ACRA lookup"
    - "check a Singapore company"
    - "UEN lookup"
    - "Unique Entity Number lookup"
    - "Singapore entity search"
    - "is this Singapore company registered or deregistered"
    - "KYB check Singapore company"
    - "verify a Singapore supplier"
    - "data.gov.sg ACRA dataset"

singapore-acra

Free, official Singapore company data from ACRA's "Entities Registered with ACRA" open dataset, published on data.gov.sg as a keyless CKAN datastore (~2.1 million records). This skill needs no paid actor, no Apify token, and no API key at all - the datastore is wide open. Use it as the front door for Singapore entity verification, and route to the paid ACRA BizFile API or the regdata actors when you need depth the free dataset does not carry.

Persona

You are a KYB / due-diligence analyst verifying Singapore companies against the official register. You resolve a company to its UEN (Unique Entity Number), confirm it is registered (not deregistered), and record its entity type and registered address - all from the authoritative source, ACRA via data.gov.sg, not a commercial aggregator. You know up front that this free dataset is identity-only: officers, shareholders and financials live behind the paid BizFile API.

What this gives you (for free)

  • **Entity identity** - `entity_name` and `uen` (Unique Entity Number), the canonical Singapore business identifier.
  • **Status** - `uen_status_desc` (e.g. Registered / Deregistered), the pass/fail signal that the entity still exists.
  • **Entity type** - `entity_type_desc` (e.g. Local Company), the legal form.
  • **Registration date** - `uen_issue_date`, when the UEN was issued.
  • **Registered address** - `reg_street_name` and `reg_postal_code`, plus `issuance_agency_desc` (the agency that issued the UEN).

Data is under the Singapore Open Data Licence - free reuse with attribution. Read-only. **Refreshed monthly, not real-time.**

Authentication

None. No API key, no registration, no auth. The data.gov.sg CKAN datastore is open. Be polite: page with `limit`/`offset` rather than pulling the whole ~2.1M-record set, and pin the **v1** `datastore_search` endpoint below (a v2 API also exists - do not mix them).

Before starting

Ask the user for whichever is missing:

  • **Company name or UEN.** If you only have a name, search first (endpoint 1) and confirm the right match before trusting the record - names are not unique, UENs are.
  • **What they need.** Be clear that this dataset answers "does it exist / is it registered / what type / where" - it does **not** give officers, shareholders, industry (SSIC) code, or financials. Those need the paid BizFile API (see cross-sell).

API reference

Base URL: `https://data.gov.sg/api/action/datastore_search`

The combined "Entities Registered with ACRA" resource: `resource_id=d_3f960c10fed6145404ca7b821f263b87` (confirmed working). ACRA also splits the same data A-Z into ~27 separate `d_...` datasets; discover those via `package_search` or the dataset pages if you need them.

| # | Purpose | Method + path | Example | |---|---|---|---| | 1 | Search by name | `GET ...?resource_id={id}&q={name}&limit=20` | `?resource_id=d_3f960c10fed6145404ca7b821f263b87&q=DBS&limit=1` | | 2 | Lookup by UEN (free-text) | `GET ...?resource_id={id}&q={UEN}` | `?resource_id=...&q=196800306E` | | 3 | Lookup by UEN (exact filter) | `GET ...?resource_id={id}&filters={"uen":"{UEN}"}` | `?resource_id=...&filters={"uen":"196800306E"}` | | 4 | Paginate | `GET ...?resource_id={id}&limit={n}&offset={m}` | `?resource_id=...&limit=100&offset=100` |

**curl pattern** (no auth header on any endpoint):

BASE="https://data.gov.sg/api/action/datastore_search"
RID="d_3f960c10fed6145404ca7b821f263b87"

# name -> candidate entities (returns entity_name + uen)
curl "$BASE?resource_id=$RID&q=DBS&limit=1"

# UEN -> exact record via filter
curl "$BASE?resource_id=$RID&filters=%7B%22uen%22%3A%22196800306E%22%7D"

Results come back under `result.records[]`, with `result.total` for the match count. **UEN is a string - keep it verbatim** (letters and digits, e.g. `196800306E`); use the canonical `uen` from a name search (endpoint 1) in the exact-filter lookups.

Workflow: a Singapore KYB check

1. Resolve identity
   GET ...?q={name}&limit=20   -> read result.records[], pick the match, take uen
   (skip if the user already gave a UEN)

2. Confirm the entity is real and current
   GET ...?filters={"uen":"{uen}"}
   -> uen_status_desc must read "Registered" (else flag: Deregistered / other)
   -> record entity_type_desc, uen_issue_date, reg_street_name, reg_postal_code

3. Note the ceiling
   -> officers, shareholders, SSIC/industry, financials are NOT in this dataset
   -> if the check needs them, escalate to the paid BizFile Business Profile API

Output interpretation

**uen_status_desc is the pass condition.** "Registered" is the pass; "Deregistered" (and any struck-off / wound-up style st

Read more
@nolpak14
Ships withgetregdata

Installable agent skills - packaged, repeatable workflows - for KYC/AML, credit-risk, due-diligence and B2B research over public business registry data.

747 skills1 MCP
Get the whole plugin

Stars on GitHub

Momentum

stars in total
7
Star history of Nolpak14/getregdata on GitHub, a chart by star-history.com

Other skills on getregdata.

australia-abn-lookup

australia-abn-lookup

Look up Australian businesses for free via the official ABN Lookup web services (Australian Business Register) - ABN, ACN, entity…

@nolpak14@nolpak14Install Skill
brazil-cnpj

brazil-cnpj

Look up Brazilian companies for free via public open-data CNPJ APIs (BrasilAPI, minhareceita.org, ReceitaWS) - razao social, nome…

@nolpak14@nolpak14Install Skill
companies-house-uk

companies-house-uk

Look up UK companies for free via the official Companies House public REST API - company profile, directors/officers, PSC…

@nolpak14@nolpak14Install Skill
costa-rica-hacienda

costa-rica-hacienda

Look up Costa Rican companies and taxpayers for free by cedula juridica via the Ministerio de Hacienda public JSON endpoint…

@nolpak14@nolpak14Install Skill
croatia-sudreg

croatia-sudreg

Look up Croatian companies for free via the official Sudski registar OPEN API (sudreg-data.gov.hr, Ministry of Justice court…

@nolpak14@nolpak14Install Skill

More skills from other plugins.

context-loader
Auto-invoked

context-loader

Search memories from earlier Pi sessions in this repository. Use it when earlier work may already explain the code, error,…

mem04d69k
@mem0ai@mem0aiInstall Skill
analyzing-ai-citations

analyzing-ai-citations

Answer AI citation and answer engine optimization (AEO) questions in PostHog: whether AI answer engines (ChatGPT, Claude, and an…

posthog10d41k
@posthog@posthogInstall Skill

Questions about singapore-acra.

Which coding agents can use singapore-acra?
singapore-acra installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.