Financial analysts, compliance officers, and equity researchers tracking the Singapore Exchange (SGX) often face a tedious bottleneck: manually checking the SGX "Company Announcements" portal for material updates. Whether you are tracking corporate actions like dividend distributions, monitoring trading halts, or archiving financial results across dozens of issuers, manual oversight is slow and prone to missed disclosures.
Automating data collection from SGX enables teams to build automated alert pipelines, enrich financial data platforms, and conduct systematic market research. The sgx-company-announcements-scraper actor on Apify provides a structured, automated way to extract public SGX disclosures and filed document URLs without requiring logins, API keys, or paid proxies.
Why Automate SGX Announcement Extraction?
SGX publishes critical disclosures daily, ranging from standard annual reports to price-sensitive trading status notices. Collecting this information programmatically addresses several core financial workflows:
- Corporate Action Tracking: Automatically track dividend payouts, rights issues, and capital reductions across the entire exchange.
- Investor Relations and Equity Research: Aggregate historical filings, earnings releases, and general announcements for specific issuers over custom timeframes.
- Compliance and Regulatory Oversight: Monitor trading status notices, regulatory queries, suspensions, and trading halts as they are published.
- Financial Platform Data Feeds: Ingest structured disclosure metadata directly into internal research dashboards or databases.
How the SGX Company Announcements Scraper Works
The scraper interacts directly with public disclosure records on the Singapore Exchange archive. It parses full announcement metadata and extracts direct links to filed PDF documents and source web pages.
Key Input Filters
You can tailor data extraction using specific parameters in the actor's input configuration:
-
issuerQuery: Enter an issuer name or stock code (such asDBS) to filter filings for a single company, or leave it blank to pull announcements across the entire market. -
categoryandsubcategory: Filter disclosures by top-level categories (such as Announcements, Corporate Action, Product Announcements & Listings, or Trading Status) or drill down to specific subcategories like Cash Dividend/Distribution (CACT06). -
titleKeyword: Restrict returned filings to those containing specific case-insensitive terms in the headline. -
dateFromanddateTo: Define a custom date range inYYYY-MM-DDformat. These fields filter based on the marketbroadcastDate. -
maxItems: Set a cap on the total number of records retrieved (from 1 to 2000).
Structured Output Data
For every filing matched, the actor returns structured JSON output containing:
- Primary and multi-security identifiers:
stockCode,stockCodes[],isinCode, andisinCodes[] - Company details:
issuerNameandissuerNames[] - Announcement specifics:
title,category,categoryCode, andsubcategoryCode - Timestamps:
publishDate(original submission timestamp in Singapore time) andbroadcastDate(the time the announcement was broadcast to the market) - Lodgment details:
submittedBy(the person lodging the filing on behalf of the issuer) - Document access:
documentUrl(stable link to the filed document) andsourceUrl - Identifiers and metadata:
refId,announcementId,recordType, andscrapedAt
Empty fields are automatically omitted from the output.
How to Scrape SGX Announcements in 4 Steps
Step 1: Open the Actor on Apify
Navigate to sgx-company-announcements-scraper in the Apify Store and create a run task.
Step 2: Configure Your Search Parameters
Set up your run based on your tracking requirements. For example, to track recent disclosures for DBS Group, configure the input with:
-
issuerQuery: "DBS" -
dateFrom: "2025-07-01" -
dateTo: "2026-07-10" -
maxItems: 50
To track dividend distributions across all listed companies instead, set subcategory to CACT06 and leave issuerQuery blank.
Step 3: Run the Actor
Click Start. The actor will search the SGX disclosure archive and collect matching records. Datacenter proxy fallback is handled automatically via proxyConfiguration if rate-limiting occurs.
Step 4: Export the Dataset
Once the run finishes, download the extracted announcements in JSON, CSV, Excel, or XML format, or integrate the dataset directly into external platforms via Apify webhooks and API endpoints.
Frequently Asked Questions
Does this scraper require an SGX account or authentication?
No. All SGX company disclosures are publicly available, so no login, API key, or authentication is required.
Why do some announcements have multiple stock codes?
A single corporate filing can apply to multiple listed securities from the same issuer, such as ordinary shares, preference shares, or debt tranches. In these cases, all affected securities are listed in the stockCodes[] and isinCodes[] arrays alongside the primary stockCode and isinCode.
Why does a record's publishDate differ from its broadcastDate?
The dateFrom and dateTo parameters filter by the broadcastDate, which matches SGX's search indexing. For standard filings, publishDate and broadcastDate are identical. For replacement or amended filings (often prefixed with REPL: in the title), SGX retains the original submission timestamp in publishDate, while broadcastDate marks when the amended version was broadcast to the market.
Ready to try it yourself? Run *SGX Company Announcements Scraper** on the Apify Store -- no setup required.*
Top comments (0)