Updated every trading day, around 18:30 KSTPrices as of 2026-09-18 (settled close)Published 09-21 18:10Not real-time

Korean Stock Data API — endpoints, no key required

2,786 Korean tickers across KOSPI/KOSDAQ/KONEX: T+1 settled closing prices, DART regulatory filings with receipt timestamps (HH:MM KST) — the public filing API gives the date only — and the latest periodic report's year-to-date results (H1 = Jan–Jun, not Q2 alone) read from the filings themselves. Every file below is a plain static JSON document over HTTPS with no authentication, no quota and open CORS. Data is refreshed every trading day after the close (T+1). Machine-readable spec: OpenAPI 3.1 — drop that URL into a ChatGPT custom GPT as an Action, or generate a client from it. Start from the catalog, index.json, which lists every file with its byte size and freshness.

Endpoints

Base: https://aikstockdata.com/data/public/
PathWhat it is
index.jsonCatalog — file list, sizes, freshness, archive dates
today.jsonOne-day digest — index close, advance/decline, top filings, rankings
s/{code}.jsonOne stock — close, market cap, financials, recent filings
s/{code}_history.jsonOne stock's daily history: [date, close, volume] (row count in count)
quotes_top300.jsonTop 300 by market cap, sort order guaranteed
disclosures_top100.jsonTop 100 filings by materiality score
earnings_recent60.jsonTop 80 by market cap + latest 70 filings, with compact financials (truncation-safe)
disclosure_impact.jsonMedian market-adjusted return after each filing type
disclosure_impact_summary.jsonSame, summary only — about 1/15 the size, safe for AI fetch tools
market_index_history.jsonKOSPI and KOSDAQ daily closes — joins to s/{code}_history.json on date
quotes_en.csvAll stocks, latest confirmed close — English column headers
rankings.jsonGrowth leaders, quiet performers, 52-week highs/lows
daily/today_{YYYYMMDD}.jsonArchived daily digest (30-day window)
notices.jsonMachine-readable incident and correction log

Stock codes are the 6-digit KRX short code (Samsung Electronics = 005930). Look them up in search_index_rows.json (code · name · market rows), which also declares the URL patterns so you do not have to guess them.

Large files are truncated by AI fetch tools — use the small edition

Most AI fetch tools cut a response at 50–150 KB, and a truncated JSON is unparseable, which produces a silently wrong answer instead of an error. index.json carries a fetch_guide block naming the small alternative for every large file. Rule of thumb: if you need one stock, always use s/{code}.json rather than the full quotes file.

Examples

curl -s https://aikstockdata.com/data/public/s/005930.json

# Python
import requests
u = "https://aikstockdata.com/data/public/s/005930_history.json"
rows = requests.get(u, timeout=20).json()["rows"]   # [[date, close, volume], ...]
print(rows[-1])

// JavaScript — CORS is open, this works in a browser
const r = await fetch("https://aikstockdata.com/data/public/today.json");
const d = await r.json();
console.log(d.market_index, d.market_breadth);

A caveat we used to have, now gone: from 2026-08-11 to 2026-09-16 the CDN bot filter rejected the default Python-urllib user agent with a 403. We turned that filter off on 2026-09-16 — every user agent we tested now returns 200 (6 agents x 4 paths, 24/24), including a bare pd.read_csv(url) and urllib.request.urlopen(url). If you ever do get a 403, send any User-Agent header: urllib.request.Request(url, headers={"User-Agent": "my-app"}) — and please tell us, because that would be our setting, not your code.

Licence and citation

Derived from Korean public-sector open data. Data published here (/data/public/*) may be quoted and used for non-commercial purposes with attribution. Commercial redistribution is not permitted in any form. Market prices come from the Financial Services Commission's public data portal and are also subject to that source's licence (KOGL Type 4: attribution, non-commercial, no derivatives) and notices; disclosure content follows FSS DART's terms. Real-time quotes are never redistributed here. Licence: aiksd-public-1.1. Please cite as: Source: aikstockdata (aikstockdata.com) — original data: FSS DART, FSC open data portal, Republic of Korea. Schemas are published under /data/public/schemas/.

What is not here

This site publishes public data as fact. It is not investment advice and does not recommend buying or selling any security. Source: Financial Services Commission open data portal (prices) and DART, the Financial Supervisory Service filing system. Terms: Non-commercial use with attribution; commercial redistribution is not permitted. (aiksd-public-1.1)

한국어 사이트로 · GitHub · Hugging Face dataset

Every figure on this page is a snapshot, not real-time — the 2026-09-18 settled close (published 2026.09.21). Check the as-of date before quoting.

Prices, filings and rankings are published as free JSON derived from Korean government open data (FSC open data portal · FSS DART) — see the API page. Brokerage-sourced data is not redistributed, per its terms.