한국주식데이터 (aikstockdata) · Schema
per-stock JSON (/data/public/s/{code}.json)
South KoreaStock MarketFinancial DataOpen DataDartkospikosdaqkonexFilingsStocksMCPllms-txtOpenAPI
Properties
| Name | Type | Description |
|---|---|---|
| $schema | string | 이 파일을 설명하는 JSON Schema 주소 |
| schema_version | string | |
| name | string | |
| as_of | stringnull | YYYYMMDD |
| as_of_iso | stringnull | as_of 를 YYYY-MM-DD 로 정규화한 값. 형식이 하나뿐이라 파싱에 이것만 쓰면 됩니다. 원본 as_of 는 하위호환을 위해 그대로 둡니다. 날짜를 못 읽으면 null(추측하지 않음). |
| generated_kst | string | |
| snapshot_id | stringnull | 이 발행 배치 식별자. 인용할 때 이 값을 함께 적으세요 — latest 는 매 거래일 덮어쓰입니다. |
| limitations | array | 이 데이터셋으로 **무엇을 할 수 없는가**. 개별 파일의 note 필드에 흩어져 있던 것을 한 자리에 모은 것이며 새 사실이 아닙니다(원문이 더 자세합니다). 메타를 아직 안 쓴 파일에는 이 키가 없습니다 — '한계가 없다'는 뜻이 아니라 '아직 안 적었다'는 뜻입니다. |
| code_rev | stringnull | 이 파일을 만든 코드의 git 커밋(짧은 SHA). generated_kst 는 데이터 시각, 이것은 코드 버전. |
| source | stringobject | 집계 파일은 한 줄 문자열 · 종목 파일은 원천별 객체 |
| license | stringobject | 집계 파일은 전문 문자열 · 종목 파일은 {name, url} 객체 |
| citation | string | |
| disclaimer | string | |
| @type | string | schema.org 표지(Dataset). 검색엔진과 AI 가 이 파일을 데이터셋으로 인식하게 합니다. |
| description | string | 이 파일이 무엇인지 한 문단. 사람이 읽는 설명이며 데이터 값이 아닙니다. |
| notes | stringobject | 이 파일을 쓸 때 틀리기 쉬운 지점에 대한 주의. 집계 전에 읽으세요. |
| generated_at | string | 생성 시각(ISO 8601·KST). generated_kst 와 같은 시각의 다른 표기입니다. |
| generated | string | 생성 시각(사람용 표기). generated_kst·generated_at 과 같은 시각입니다 — 한 파일에 세 표기가 함께 있는 것은 구 소비자 호환 때문입니다. |
| code | string | |
| name_ko | string | |
| market | stringnull | |
| security_class | stringnull | common·preferred·etf·etn·reit·spac·foreign |
| issuer | objectnull | 이 수치가 누구 것인가. inference=true 면 추정입니다 |
| quote | objectnull | |
| financials | objectnull | |
| recent_disclosures | array | |
| signals | object | |
| valuation | objectnull | PER(TTM)·PBR — 금융위 시가총액 + DART 주요계정만. 적자·자본잠식·재료 부족이면 null 이고 pe_note/pb_note 가 이유를 말한다. 증권사 EPS·컨센서스는 쓰지 않는다. 기계 산정, 추천 아님. |
| status | stringnull | 이 키가 있으면 **묘비**입니다 — 현재 수집 대상이 아닌 종목이라 quote·signals·financials 가 마지막 관측 시점에 멈춰 있습니다. 주소는 기존 링크·인용이 깨지지 않도록 살려 둡니다. 정상 종목 파일에는 이 키 자체가 없습니다. |
| status_note | stringnull | 수집이 끊긴 사유의 **추정**. 상장폐지·거래정지· 코드 변경 등으로 추정하며 공식 확인이 아닙니다. |
| last_seen | stringnull | 우리 수집분에서 마지막으로 관측된 날(YYYYMMDD). 상장폐지일이 아닙니다. |
| first_seen | stringnull | 보유한 시세 파일 범위 안의 최초 관측일(YYYYMMDD) — **상장일이 아닙니다.** 그 범위 밖은 알 수 없습니다(build_universe_fsc 의 first_seen_note 와 같은 한계입니다). |
| page_url | string | 사람이 보는 종목 페이지 |
| dart_url | string | DART 원문 검색 — 값이 의심되면 여기가 최종 근거입니다 |
| field_definitions | objectnull | 이 파일 안의 각 필드가 무엇인지 파일 스스로 담은 정의표. 스키마를 따로 받지 않아도 값을 해석할 수 있습니다. 값은 설명 문자열이거나, 하위 필드를 더 가른 표입니다. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://aikstockdata.com/data/public/schemas/stock.schema.json",
"title": "per-stock JSON (/data/public/s/{code}.json)",
"type": "object",
"required": [
"schema_version",
"code",
"name_ko",
"quote",
"signals"
],
"properties": {
"$schema": {
"type": "string",
"description": "이 파일을 설명하는 JSON Schema 주소"
},
"schema_version": {
"type": "string"
},
"name": {
"type": "string"
},
"as_of": {
"type": [
"string",
"null"
],
"description": "YYYYMMDD"
},
"as_of_iso": {
"type": [
"string",
"null"
],
"description": "as_of 를 YYYY-MM-DD 로 정규화한 값. 형식이 하나뿐이라 파싱에 이것만 쓰면 됩니다. 원본 as_of 는 하위호환을 위해 그대로 둡니다. 날짜를 못 읽으면 null(추측하지 않음)."
},
"generated_kst": {
"type": "string"
},
"snapshot_id": {
"type": [
"string",
"null"
],
"description": "이 발행 배치 식별자. 인용할 때 이 값을 함께 적으세요 — latest 는 매 거래일 덮어쓰입니다."
},
"limitations": {
"type": "array",
"items": {
"type": "string"
},
"description": "이 데이터셋으로 **무엇을 할 수 없는가**. 개별 파일의 note 필드에 흩어져 있던 것을 한 자리에 모은 것이며 새 사실이 아닙니다(원문이 더 자세합니다). 메타를 아직 안 쓴 파일에는 이 키가 없습니다 — '한계가 없다'는 뜻이 아니라 '아직 안 적었다'는 뜻입니다."
},
"code_rev": {
"type": [
"string",
"null"
],
"description": "이 파일을 만든 코드의 git 커밋(짧은 SHA). generated_kst 는 데이터 시각, 이것은 코드 버전."
},
"source": {
"type": [
"string",
"object"
],
"description": "집계 파일은 한 줄 문자열 · 종목 파일은 원천별 객체",
"properties": {
"quote": {
"type": [
"object",
"null"
],
"properties": {
"provider": {
"type": "string"
},
"dataset": {
"type": "string"
},
"note": {
"type": [
"string",
"null"
]
}
}
},
"financials_disclosures": {
"type": [
"object",
"null"
],
"properties": {
"provider": {
"type": "string"
},
"dataset": {
"type": "string"
},
"note": {
"type": [
"string",
"null"
]
}
}
}
}
},
"license": {
"type": [
"string",
"object"
],
"description": "집계 파일은 전문 문자열 · 종목 파일은 {name, url} 객체",
"properties": {
"name": {
"type": "string"
},
"url": {
"type": "string"
}
}
},
"citation": {
"type": "string"
},
"disclaimer": {
"type": "string"
},
"@type": {
"type": "string",
"description": "schema.org 표지(Dataset). 검색엔진과 AI 가 이 파일을 데이터셋으로 인식하게 합니다."
},
"description": {
"type": "string",
"description": "이 파일이 무엇인지 한 문단. 사람이 읽는 설명이며 데이터 값이 아닙니다."
},
"notes": {
"type": [
"string",
"object"
],
"description": "이 파일을 쓸 때 틀리기 쉬운 지점에 대한 주의. 집계 전에 읽으세요."
},
"generated_at": {
"type": "string",
"description": "생성 시각(ISO 8601·KST). generated_kst 와 같은 시각의 다른 표기입니다."
},
"generated": {
"type": "string",
"description": "생성 시각(사람용 표기). generated_kst·generated_at 과 같은 시각입니다 — 한 파일에 세 표기가 함께 있는 것은 구 소비자 호환 때문입니다."
},
"code": {
"type": "string",
"pattern": "^[0-9]{6}$"
},
"name_ko": {
"type": "string"
},
"market": {
"type": [
"string",
"null"
]
},
"security_class": {
"type": [
"string",
"null"
],
"description": "common·preferred·etf·etn·reit·spac·foreign"
},
"issuer": {
"type": [
"object",
"null"
],
"description": "이 수치가 누구 것인가. inference=true 면 추정입니다",
"properties": {
"is_representative_listing": {
"type": [
"boolean",
"null"
]
},
"issuer_common_code_guess": {
"type": [
"string",
"null"
]
},
"inference": {
"type": [
"boolean",
"null"
]
},
"inference_basis": {
"type": [
"string",
"null"
]
},
"issuer_note": {
"type": [
"string",
"null"
]
}
}
},
"quote": {
"type": [
"object",
"null"
],
"properties": {
"close": {
"type": [
"number",
"null"
]
},
"open": {
"type": [
"number",
"null"
]
},
"high": {
"type": [
"number",
"null"
]
},
"low": {
"type": [
"number",
"null"
]
},
"change_pct": {
"type": [
"number",
"null"
]
},
"volume": {
"type": [
"number",
"null"
]
},
"market_cap_krw": {
"type": [
"number",
"null"
]
},
"has_trade": {
"type": [
"boolean",
"null"
]
},
"trading_status": {
"type": [
"string",
"null"
],
"enum": [
"traded",
"no_trade",
null
]
}
}
},
"financials": {
"type": [
"object",
"null"
],
"properties": {
"basis": {
"type": [
"string",
"null"
],
"description": "연결/별도"
},
"period": {
"type": [
"string",
"null"
]
},
"period_ko": {
"type": [
"string",
"null"
]
},
"source": {
"type": [
"string",
"null"
]
},
"unit": {
"type": [
"string",
"null"
]
},
"revenue": {
"type": [
"object",
"null"
],
"properties": {
"current": {
"type": [
"number",
"null"
]
},
"prior_year": {
"type": [
"number",
"null"
]
},
"yoy_pct": {
"type": [
"number",
"null"
]
}
}
},
"operating_income": {
"type": [
"object",
"null"
],
"properties": {
"current": {
"type": [
"number",
"null"
]
},
"prior_year": {
"type": [
"number",
"null"
]
},
"yoy_pct": {
"type": [
"number",
"null"
]
}
}
},
"net_income": {
"type": [
"object",
"null"
],
"properties": {
"current": {
"type": [
"number",
"null"
]
},
"prior_year": {
"type": [
"number",
"null"
]
},
"yoy_pct": {
"type": [
"number",
"null"
]
}
}
},
"newer_available": {
"type": [
"object",
"null"
],
"properties": {
"kind": {
"type": [
"string",
"null"
]
},
"label": {
"type": [
"string",
"null"
]
},
"period": {
"type": [
"string",
"null"
]
},
"period_status": {
"type": [
"string",
"null"
]
},
"period_note": {
"type": [
"string",
"null"
]
},
"value_note": {
"type": [
"string",
"null"
]
},
"value_status": {
"type": [
"string",
"null"
]
},
"basis": {
"type": [
"string",
"null"
]
},
"fact": {
"type": [
"string",
"null"
]
},
"note": {
"type": [
"string",
"null"
]
},
"rcept_no": {
"type": [
"string",
"null"
]
},
"rcept_dt": {
"type": [
"string",
"null"
]
},
"dart_url": {
"type": [
"string",
"null"
]
},
"data_url": {
"type": [
"string",
"null"
]
},
"revenue_yoy_pct": {
"type": [
"number",
"null"
]
},
"op_income_yoy_pct": {
"type": [
"number",
"null"
]
}
}
}
}
},
"recent_disclosures": {
"type": "array",
"items": {
"type": "object",
"properties": {
"rcept_dt": {
"type": [
"string",
"null"
]
},
"title": {
"type": [
"string",
"null"
]
},
"type": {
"type": [
"string",
"null"
]
},
"meaning": {
"type": [
"string",
"null"
]
},
"fact": {
"type": [
"string",
"null"
]
},
"basis": {
"type": [
"string",
"null"
]
},
"score": {
"type": [
"number",
"null"
]
},
"is_correction": {
"type": [
"boolean",
"null"
]
},
"dart_url": {
"type": [
"string",
"null"
]
}
}
}
},
"signals": {
"type": "object",
"properties": {
"growth_score": {
"type": [
"number",
"null"
]
},
"quiet_score": {
"type": [
"number",
"null"
]
},
"growth_top8": {
"type": [
"boolean",
"null"
]
},
"quiet_top": {
"type": [
"boolean",
"null"
]
},
"score_basis": {
"type": [
"string",
"null"
]
}
}
},
"valuation": {
"type": [
"object",
"null"
],
"properties": {
"pe_ttm": {
"type": [
"number",
"null"
]
},
"pb": {
"type": [
"number",
"null"
]
},
"ttm_net_income_krw": {
"type": [
"number",
"null"
]
},
"equity_krw": {
"type": [
"number",
"null"
]
},
"basis": {
"type": [
"object",
"null"
],
"properties": {
"market_cap_asof": {
"type": [
"string",
"null"
]
},
"financial_period": {
"type": [
"string",
"null"
]
},
"fs": {
"type": [
"string",
"null"
]
},
"pe_periods": {
"type": [
"string",
"null"
]
}
}
},
"pe_note": {
"type": [
"string",
"null"
]
},
"pb_note": {
"type": [
"string",
"null"
]
},
"method": {
"type": [
"string",
"null"
]
}
},
"description": "PER(TTM)·PBR — 금융위 시가총액 + DART 주요계정만. 적자·자본잠식·재료 부족이면 null 이고 pe_note/pb_note 가 이유를 말한다. 증권사 EPS·컨센서스는 쓰지 않는다. 기계 산정, 추천 아님."
},
"status": {
"type": [
"string",
"null"
],
"enum": [
"not_collected",
null
],
"description": "이 키가 있으면 **묘비**입니다 — 현재 수집 대상이 아닌 종목이라 quote·signals·financials 가 마지막 관측 시점에 멈춰 있습니다. 주소는 기존 링크·인용이 깨지지 않도록 살려 둡니다. 정상 종목 파일에는 이 키 자체가 없습니다."
},
"status_note": {
"type": [
"string",
"null"
],
"description": "수집이 끊긴 사유의 **추정**. 상장폐지·거래정지· 코드 변경 등으로 추정하며 공식 확인이 아닙니다."
},
"last_seen": {
"type": [
"string",
"null"
],
"description": "우리 수집분에서 마지막으로 관측된 날(YYYYMMDD). 상장폐지일이 아닙니다."
},
"first_seen": {
"type": [
"string",
"null"
],
"description": "보유한 시세 파일 범위 안의 최초 관측일(YYYYMMDD) — **상장일이 아닙니다.** 그 범위 밖은 알 수 없습니다(build_universe_fsc 의 first_seen_note 와 같은 한계입니다)."
},
"page_url": {
"type": "string",
"description": "사람이 보는 종목 페이지"
},
"dart_url": {
"type": "string",
"description": "DART 원문 검색 — 값이 의심되면 여기가 최종 근거입니다"
},
"field_definitions": {
"type": [
"object",
"null"
],
"description": "이 파일 안의 각 필드가 무엇인지 파일 스스로 담은 정의표. 스키마를 따로 받지 않아도 값을 해석할 수 있습니다. 값은 설명 문자열이거나, 하위 필드를 더 가른 표입니다.",
"additionalProperties": {
"type": [
"string",
"object"
]
}
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/aikstockdata-stock.schema"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.