Taiwan Business Registry Scraper (Company & UBN)
Pricing
from $11.54 / 1,000 results
Taiwan Business Registry Scraper (Company & UBN)
Extract Taiwan company registration records from the official GCIS registry by name or unified business number (UBN). Get company name, status, capital, representative, registered address, directors and business scope. Export to JSON, CSV or Excel.
Pricing
from $11.54 / 1,000 results
Rating
2.0
(1)
Developer
Scrapers Lat
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
0
Monthly active users
20 hours ago
Last modified
Categories
Share
Taiwan Business Registry Scraper (Company & UBN)
Here is one real result, with every field the actor returns:
{"ubn": "54900838","name": "台積電機有限公司","status": "核准設立","statusCode": "01","organizationType": "有限公司","capital": 2000000,"paidInCapital": 0,"sharePar": null,"totalShares": null,"representative": "王志聰","registeredAddress": "臺中市南屯區春社里中台路61之3號","registerAuthority": "臺中市政府","registerAuthorityCode": "17","registrationDate": "2015-07-06","lastApprovalDate": "2020-12-16","revocationDate": null,"caseStatus": null,"suspensionApprovalDate": null,"suspensionStartDate": null,"suspensionEndDate": null,"directorCount": 1,"directors": [{ "position": "董事", "name": "王志聰", "juristicPerson": null, "shareholding": 1200000 }],"businessItemCount": 27,"businessItems": [{ "code": "E601010", "description": "電器承裝業" },{ "code": "E601020", "description": "電器安裝業" },{ "code": "IG03010", "description": "能源技術服務業" },{ "code": "F401010", "description": "國際貿易業" },{ "code": "ZZ99999", "description": "除許可業務外,得經營法令非禁止或限制之業務" }],"branchCount": 0,"branches": [],"observedAt": "2026-08-10T14:41:26.838Z","error": null}
Note: the
businessItemslist is trimmed to five of the company's 27 registered items for readability. The real record returns the full list; every value shown is exactly as returned.
The most complete Taiwan business registry scraper available. It returns every field the government company registry exposes, including capital, organization type, responsible person, registered address, and registration dates, plus the full board of directors with shareholding and the complete registered business scope on demand, and gives you name, representative, and UBN lookup plus an optional contact-enrichment add-on to target exactly the companies you need.
📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples
Table of contents
- What it does
- Quickstart
- Input reference
- Output reference
- Example output record
- Run via API and CLI
- Fetch results
- Billing and limits
- FAQ and troubleshooting
What it does
The actor searches the Taiwan government company registry by company name, by responsible person, or by exact unified business number (UBN), and writes one normalized record per company to the run's dataset. With withDetails on it makes one extra request per company to add the board of directors (name, position, shareholding) and the full registered business scope. Missing source values are returned as null.
Data covers registered companies in Taiwan. Field values are returned in Chinese exactly as the registry publishes them.
Quickstart
Open the actor, paste this into the input, and press Run. It returns up to 10 active companies whose name contains the keyword, each with directors and business scope.
{"maxCompanies": 10,"withDetails": true,"companyName": "台積電","companyStatus": "01"}
Search by companyName, by representativeName (a person's registered name), or by exact ubns. At least one of these is required; other inputs are optional.
Input reference
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
companyName | string | conditional | 台積電 | Keyword to search registered company names. Returns every company whose name contains this text. Leave empty if looking up UBNs or a representative. |
representativeName | string | conditional | (empty) | Find every company whose registered responsible person (負責人) exactly matches this name. Enter the name exactly as registered (Chinese). |
ubns | string[] | conditional | (empty) | List of 8-digit unified business numbers (統一編號) for exact lookups, for example 22099131. Each UBN returns one company. |
maxCompanies | integer | no | 10 | Maximum number of companies to collect. Range 1 to 1000000. |
withDetails | boolean | no | true | Enrich each company with its board of directors and full registered business scope. Adds one request per company. |
companyStatus | enum | no | 01 | Registration status to match on a name search. One of 01 active, 03 rescinded, 04 abolished, 05 dissolved, 06 compulsory dissolution, 07 court-ordered dissolution. |
enrichContacts | boolean | no | false | Optional paid add-on. For each result without an email, attempt to find a public business contact email and a contact person's name. Billed per attempt, plus an extra charge only when an email is found. |
enrichContactsMax | integer | no | 50 | Cap how many results the add-on tries to enrich. Free Apify accounts are capped at 3. |
Provide at least one of companyName, representativeName, or ubns.
Output reference
One dataset item per company. Types: string, integer, object[], or null when the source value is absent. Fields marked (details) require withDetails; fields marked (enrich) require the contact add-on.
| Field | Type | Description |
|---|---|---|
ubn | string | 8-digit unified business number. |
name | string | Registered company name. |
status | string | Registration status label (Chinese). |
statusCode | string | Status code (for example 01). |
organizationType | string | Organization type (for example 有限公司). |
capital | integer | Registered capital (TWD). |
paidInCapital | integer | Paid-in capital (TWD). |
sharePar | integer | Par value per share, or null. |
totalShares | integer | Total shares issued, or null. |
representative | string | Responsible person (負責人). |
registeredAddress | string | Registered address. |
registerAuthority | string | Registering authority name. |
registerAuthorityCode | string | Registering authority code. |
registrationDate | string | Registration date (YYYY-MM-DD). |
lastApprovalDate | string | Date of last approved change (YYYY-MM-DD), or null. |
revocationDate | string | Revocation date, or null. |
caseStatus | string | Case status text, or null. |
suspensionApprovalDate | string | Suspension approval date, or null. |
suspensionStartDate | string | Suspension start date, or null. |
suspensionEndDate | string | Suspension end date, or null. |
directorCount | integer | Number of directors (details). |
directors | object[] | Board of directors, each {position, name, juristicPerson, shareholding} (details). |
businessItemCount | integer | Number of registered business items (details). |
businessItems | object[] | Registered business scope, each {code, description} (details). |
branchCount | integer | Number of branches (details). |
branches | object[] | Branch records (details). Empty when none. |
observedAt | string | ISO 8601 timestamp of when the record was collected. |
enrichedEmail | string | Public business contact email found by the add-on (enrich), or null. |
enrichedContactName | string | Contact person's name found by the add-on (enrich), or null. |
enrichedJobTitle | string | Contact person's job title (enrich), or null. |
enrichedEmailStatus | string | Verification status of the found email (enrich), or null. |
enrichedSource | string | Where the contact was found (enrich), or null. |
enrichedConfidence | number | Confidence score for the found contact (enrich), or null. |
error | string | null on success. On a failed run, a single item with a populated error field is written instead. |
Example output record
Real record from a live run (input {"companyName": "台積電", "maxCompanies": 10, "withDetails": true}):
{"ubn": "54900838","name": "台積電機有限公司","status": "核准設立","statusCode": "01","organizationType": "有限公司","capital": 2000000,"paidInCapital": 0,"representative": "王志聰","registeredAddress": "臺中市南屯區春社里中台路61之3號","registerAuthority": "臺中市政府","registrationDate": "2015-07-06","lastApprovalDate": "2020-12-16","directorCount": 1,"directors": [ { "position": "董事", "name": "王志聰", "juristicPerson": null, "shareholding": 1200000 } ],"businessItemCount": 27,"branchCount": 0,"observedAt": "2026-08-10T14:41:26.838Z"}
Run via API and CLI
Start a run and wait for it to finish, then 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~taiwan-business-registry-scraper/run-sync-get-dataset-items?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"companyName":"台積電","maxCompanies":10,"withDetails":true}'
Start a run asynchronously:
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~taiwan-business-registry-scraper/runs?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"ubns":["22099131","54900838"],"withDetails":true}'
Apify CLI:
apify call scrapers_lat/taiwan-business-registry-scraper \--input '{"representativeName":"王志聰"}'
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. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.
Billing and limits
- Pay per result. You are charged per company returned (
resultevent). See the pricing tab for the current per-result price. - Detail add-on. When
withDetailsis on, each company whose directors and business scope are fetched charges a smalldetailsevent on top of the result price. TurnwithDetailsoff to avoid it. - Contact enrichment add-on (optional, off by default). When
enrichContactsis on, each attempt charges acontact-search-attemptevent, plus acontact-email-foundevent only when an email is found.enrichContactsMaxcaps how many results are attempted (free accounts capped at 3). - 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 and add-on events. - Free Apify plans are capped at 10 companies per run. Upgrade for higher
maxCompanies.
FAQ and troubleshooting
A run returned 0 records. Why?
The name, representative, or UBN matched nothing at the chosen companyStatus. Check the UBN (8 digits), or try a shorter name fragment. Zero-result runs are not charged.
How do I map every company for one person?
Set representativeName to the person's registered Chinese name. Every company where they are the responsible person is returned.
How do I get directors and business scope?
Keep withDetails on. It adds the board of directors with shareholding and the full registered business scope.
Why are field values in Chinese? The values are returned exactly as the government registry publishes them, so they match the official record without translation.
Is this an official government tool? No. This actor is independent and has no affiliation with the Taiwan Ministry of Economic Affairs or any government agency. It reads only data that is publicly available in the company registry.
Related scrapers
- Taiwan TWSE Disclosures Scraper: Taiwan Stock Exchange disclosures.
- Taiwan 104 Jobs Scraper: Taiwan 104.com.tw job listings.
- SUNAT Peru RUC Scraper: Peru taxpayer registry records.
More scrapers at scrapers.lat
Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American 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 the Taiwan Ministry of Economic Affairs. Accesses only publicly available company registry data.
