# Korean Company Filings & Financials - DART (`loopchips/korea-company-filings-scraper`) Actor

Pull Korean public company profiles, audited financial statements and regulatory filings from DART, Korea's official disclosure system. Search by company name, ticker or corp code.

- **URL**: https://apify.com/loopchips/korea-company-filings-scraper.md
- **Developed by:** [Loopchips](https://apify.com/loopchips) (community)
- **Categories:** Lead generation, Automation, Other
- **Stats:** 1 total users, 0 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $20.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — 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

## Korean Company Filings & Financials - DART

**Audited financials and regulatory filings for Korean companies, straight from the official source.** DART is the disclosure system every Korean listed company must file into - this actor turns it into structured rows.

Type a company name, a ticker, or a corp code. Get the profile, the financial statements, and the recent filings.

***

### What you get per company

**Profile**

| Field | Example |
|---|---|
| corpNameKo / corpNameEn | 삼성전자(주) / SAMSUNG ELECTRONICS CO,.LTD |
| ticker | 005930 |
| ceo | 전영현, 노태문 |
| businessRegistrationNo | 1248100998 |
| corporateRegistrationNo | 1301110006246 |
| address | 경기도 수원시 영통구 삼성로 129 |
| homepage / irPage / phone | official contact points |
| establishedDate | 19690113 |
| industryCode / fiscalYearEndMonth | 264 / 12 |

**Financials** (from the annual, half-year or quarterly report you choose)

| Field | Example (KRW) |
|---|---|
| revenue | 333,605,938,000,000 |
| operatingProfit | 43,601,051,000,000 |
| netIncome | 45,206,805,000,000 |
| totalAssets / totalLiabilities / totalEquity | full balance sheet headline |
| retainedEarnings | |
| **financialAccounts** | every statement line with current, prior and two-years-ago figures |

**Filings** - recent DART submissions with title, filing date, filer and a direct link to the document.

Export as **JSON, CSV or Excel**, or pull from the API.

### What people use it for

**Investment research on Korea** - Pull a watchlist of companies and get audited revenue, margins and balance sheet in one table, with three periods per line item for trend work.

**Credit and counterparty checks** - Business registration number, corporate registration number, CEO, address and equity position for any Korean company that files.

**M\&A and market entry screening** - Compare financial size and profitability across an industry before you pick partners or targets.

**Filing monitoring** - Schedule the actor on a watchlist and see new disclosures (capital raises, major contracts, governance changes) with direct document links.

**Building Korea datasets** - The actor resolves names and tickers to official DART corp codes, so it slots cleanly into a data pipeline.

### How to use it

1. Get a **free DART API key** - 3 minutes at https://opendart.fss.or.kr (인증키 신청/관리 > 인증키 신청). The free tier allows 20,000 calls per day
2. Paste the key into the **DART API key** field
3. Enter **companies**: `삼성전자`, `005930`, or the 8-digit corp code `00126380`. Mixed input is fine
4. Choose the **financial year** and **report type**, and whether to include filings
5. Run it, or schedule it to monitor a watchlist

**Name matching** - Every record includes a `matchType` field so you can see exactly how your input resolved: by ticker, by corp code, by exact name, or by prefix. When there is no confident match the actor says so instead of guessing a similarly named company.

### Notes

- Amounts are in KRW, exactly as filed
- Some companies report N/A for certain lines (loss-making, newly listed, non-standard filers) - those come back empty rather than zero
- Financial statement labels come back in Korean, as filed; the headline metrics are mapped to English fields for you

### Pairs with

**Korean Stock Market Scraper** (price, market cap, PER, ROE), **Korean Tech Job Postings Scraper** and **Korean Job Postings Scraper (Saramin)** - fundamentals plus market data plus hiring velocity is a strong combined signal on any Korean company.

### FAQ

**Do I need my own API key?** Yes, and it is free. This keeps your usage under your own quota rather than a shared one, which means no rate limit surprises.

**Is the data official?** Yes - DART is operated by Korea's Financial Supervisory Service and is the legally mandated disclosure channel.

**How far back does it go?** Financial statement data is available for business years from 2015 onward.

**Can I get every listed company?** Yes - pass the tickers. The actor loads the full DART directory (about 4,000 listed companies, 110,000 filing entities) at the start of each run.

**Is this legal?** The actor reads the official OpenDART API using your own key, under DART's terms. It is not investment advice. You are responsible for complying with applicable laws in your use of the data.

### Support

Need another DART endpoint (shareholders, executives, dividends)? Open an issue on the actor page - issues are answered within 3 business days.

# Actor input Schema

## `dartApiKey` (type: `string`):

Your own free OpenDART key. Get one in 3 minutes at https://opendart.fss.or.kr (인증키 신청/관리 > 인증키 신청). Free tier allows 20,000 calls per day.

## `companies` (type: `array`):

Company names, 6-digit tickers or 8-digit DART corp codes. Examples: 삼성전자, 005930, 00126380. Korean names match best.

## `includeFinancials` (type: `boolean`):

Adds balance sheet and income statement figures plus headline metrics (assets, equity, revenue, operating profit, net income).

## `financialYear` (type: `integer`):

Business year of the report to fetch, e.g. 2025.

## `reportType` (type: `string`):

Which periodic report to read the financials from.

## `includeDisclosures` (type: `boolean`):

Adds the company's recent DART filings with titles, dates and direct links.

## `disclosureFromDate` (type: `string`):

Start date for filings, YYYY-MM-DD. Defaults to one year ago.

## `disclosureToDate` (type: `string`):

End date for filings, YYYY-MM-DD. Defaults to today.

## `maxDisclosures` (type: `integer`):

How many recent filings to attach to each company.

## `requestDelayMs` (type: `integer`):

Politeness delay between API calls.

## `refreshDirectory` (type: `boolean`):

The Actor ships with a company directory snapshot so lookups are instant. Turn this on to download the latest directory from DART instead (slow outside Korea, and it uses your API quota). Only needed for companies registered very recently.

## Actor input object example

```json
{
  "companies": [
    "삼성전자",
    "000660"
  ],
  "includeFinancials": true,
  "financialYear": 2025,
  "reportType": "annual",
  "includeDisclosures": true,
  "maxDisclosures": 20,
  "requestDelayMs": 400,
  "refreshDirectory": false
}
```

# 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 = {
    "companies": [
        "삼성전자",
        "000660"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("loopchips/korea-company-filings-scraper").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 = { "companies": [
        "삼성전자",
        "000660",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("loopchips/korea-company-filings-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "companies": [
    "삼성전자",
    "000660"
  ]
}' |
apify call loopchips/korea-company-filings-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,loopchips/korea-company-filings-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/255ef2WUXOigg6j0U/builds/sWysPYKUIeH1ptN7k/openapi.json
