apyhub
Back
▣ FINANCE

Korea Drug Price & Reimbursement API

What it does

Korea Drug Reimbursement Price API provides current and historical reimbursement prices for medicines covered by South Korea's National Health Insurance (NHI). Each medicine is identified by a 9-digit Electronic Data Interchange (EDI) code and includes its maximum reimbursement price in Korean Won (KRW).

You can use the API to find a medicine's current reimbursement price, check how its price has changed over time, find prices linked to a Ministry of Food and Drug Safety (MFDS) approval item, or search medicines by product name, company, ingredient, therapeutic class, prescription type, or price range.

The API also provides monthly changes such as medicines added, price changes, and removed medicines. This makes it useful for reimbursement checks, formulary review, price comparison, and building drug pricing dashboards.

Important TermsMeaning
Electronic Data Interchange (EDI)9-digit insurance code used to identify a reimbursed medicine.
Ministry of Food and Drug Safety (MFDS)South Korea's national authority for food and drug safety.
Health Insurance Review & Assessment Service (HIRA)Organization responsible for reviewing and assessing health insurance claims and services.
Ministry of Health and Welfare (MOHW)Government ministry responsible for health and welfare policy in Korea.
National Health Insurance (NHI)Korea's national health insurance system.
Korean Won (KRW)Currency used for reimbursement prices in South Korea.
Over-the-Counter (OTC)Medicine available without a prescription.
▣ ENDPOINT 01 / 07
GET
Get Current Reimbursement Price by EDI Code
https://api.eu.apyhub.com/193market/korea-drug-reimbursement-price-api/prices/:edi_code

QUICKSTART

GUIDE

Quickstart

Look up the current reimbursement price for a specific EDI code.

curl -X GET "https://api.eu.apyhub.com/193market/korea-drug-reimbursement-price-api/prices/:edi_code" \
  -H "apy-token: $APY_TOKEN"

What you'll get back

You will receive the current reimbursement price, medicine details, ingredient information, listing information, linked MFDS approval details, and attribution information.

Response Example

{
  "edi_code": "073400340",
  "price_krw": 638,
  "price_note": null,
  "price_unit": "KRW per 정",
  "product_name_ko": "리피토정10밀리그램(아토르바스타틴칼슘삼수화물)_(10.85mg/1정)",
  "company_ko": "비아트리스코리아(주)",
  "ingredient_code": "111501ATB",
  "ingredient_code_same_form": "111501ATB",
  "ingredient_count": "1",
  "ingredient": "atorvastatin calcium (as atorvastatin 10mg)",
  "strength_spec": "1",
  "unit": "정",
  "route_ko": "내복",
  "route": "oral",
  "class_code": "218",
  "mfds_class_code": "218",
  "prescription": "prescription",
  "remark_ko": null,
  "flags": [],
  "listed_since": "2023-01-01",
  "last_price_change": "2026-01-01",
  "as_of": "2026-09-01",
  "mfds": [
    {
      "item_seq": "200410090",
      "name_en": "Lipitor Tab. 10mg",
      "name_ko": "리피토정10밀리그램",
      "company_en": "Viatris",
      "company_ko": "비아트리스코리아(주)",
      "ingredients_en": "Atorvastatin Calcium Trihydrate",
      "prescription": "전문의약품",
      "approval_status": "active",
      "approved_on": "2004-11-25",
      "listed": true,
      "reimbursed_now": true
    }
  ],
  "same_ingredient_products": 128,
  "price_changes": 2,
  "notice": "Reference data as published; prices are the insurance maximum (상한금액) in KRW per unit, not retail prices. Informational only.",
  "attribution": {
    "source": "Ministry of Health and Welfare of Korea (보건복지부) notice 「약제 급여 목록 및 급여 상한금액표」 (Drug Benefit List and Maximum Reimbursement Price Table), Schedule 1; monthly compilation published by the Health Insurance Review & Assessment Service (건강보험심사평가원, HIRA). English product names: Ministry of Food and Drug Safety approval register via data.go.kr 15095677.",
    "license": "The price table is a public notice of the Korean government (Copyright Act art. 7). MFDS data: KOGL type 1 (attribution). Attribution to MOHW and HIRA is required when redistributing.",
    "changes": "Field names translated to English keys, prices parsed to numbers ('산정불가' kept as price_note), remarks mapped to flags, monthly files diffed into price-change events, EDI codes linked to MFDS approvals.",
    "notice": "Reference data as published; prices are the insurance maximum (상한금액) in KRW per unit, not retail prices. Informational only."
  }
}
TRY ITLIVE · 100 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
9-digit insurance EDI code identifying the product.

About this endpoint

What it does

Retrieves the current maximum reimbursement price and medicine details for one product using its 9-digit insurance EDI code. Use this when you need the current reimbursed price, product information, ingredient details, prescription status, or linked MFDS approval information for a specific medicine.

Path Parameter(s)

AttributeTypeMandatoryDescription
edi_codeStringYes9-digit insurance EDI code identifying the medicine, such as 073400340. Must be exactly 9 digits, including any leading zeros.

Response

FieldTypeDescription
edi_codeStringInsurance EDI code of the medicine.
price_krwNumber / NullCurrent maximum reimbursement price in KRW per unit. null when price_note explains why no price applies.
price_noteString / NullNote shown when no normal price applies, such as 산정불가 (no price set). null when a normal price applies.
price_unitStringUnit the reimbursement price applies to, such as KRW per 정 (KRW per tablet).
product_name_koStringKorean medicine name, including strength and pack information.
company_koStringKorean name of the manufacturer or marketing company.
ingredient_codeString9-character HIRA ingredient code for this product's ingredient, strength, route, and form.
ingredient_code_same_formStringIngredient code grouping products of the same ingredient and form.
ingredient_countStringNumber of active ingredients, such as "1" or "2" for a combination product.
ingredientStringEnglish ingredient name(s) and strength.
strength_specStringStrength specification value used by HIRA for the priced unit.
unitStringDispensing unit in Korean, such as 정 (tablet).
route_koStringAdministration route in Korean, such as 내복.
routeStringAdministration route in English: oral, injection, or topical.
class_codeString3-digit therapeutic class code, such as 218.
mfds_class_codeStringTherapeutic class code recorded by MFDS. Usually the same as class_code.
prescriptionStringMedicine type: prescription or otc.
remark_koString / NullInsurer's remark in Korean, when present.
flagsArrayStatus flags that apply to the listing. Empty when none apply. See Status Flags in Key Terms.
listed_sinceStringDate the product was first listed at its current code (YYYY-MM-DD).
last_price_changeStringDate of the latest price change (YYYY-MM-DD).
as_ofStringMonthly list the data reflects (YYYY-MM-DD).
mfdsArrayLinked MFDS approval information. Usually one entry.
mfds[].item_seqStringMFDS approval item number. Can be used with Get Reimbursement Prices by MFDS Approval.
mfds[].name_enStringApproved medicine name in English.
mfds[].name_koStringApproved medicine name in Korean.
mfds[].company_enStringApproval holder's company name in English.
mfds[].company_koStringApproval holder's company name in Korean.
mfds[].ingredients_enStringEnglish ingredient name(s) as listed by MFDS.
mfds[].prescriptionStringPrescription status in Korean, such as 전문의약품 (prescription medicine).
mfds[].approval_statusStringMFDS approval status, such as active.
mfds[].approved_onStringDate the MFDS approval was granted (YYYY-MM-DD).
mfds[].listedBooleanWhether the EDI code appears in the current monthly list.
mfds[].reimbursed_nowBooleanWhether the medicine is currently reimbursed.
same_ingredient_productsNumberNumber of products sharing the same ingredient_code.
price_changesNumberNumber of recorded price-change events for this EDI code.
noticeStringReference-data notice and pricing limitation.
attributionObjectSource and licence information. See Common Response Fields.
▣ ENDPOINT 02 / 07
GET
Get Reimbursement Price History by EDI Code
https://api.eu.apyhub.com/193market/korea-drug-reimbursement-price-api/prices/:edi_code/history

QUICKSTART

GUIDE

Quickstart

Check the reimbursement price for a specific EDI code.

curl -X GET "https://api.eu.apyhub.com/193market/korea-drug-reimbursement-price-api/prices/:edi_code/history" \
  -H "apy-token: $APY_TOKEN"

What you'll get back

You will receive the current product record, the starting month of the available history, the latest data month, each recorded price or listing change, and attribution information.

Response Example

{
  "edi_code": "073400340",
  "current": {
    "edi_code": "073400340",
    "price_krw": 638,
    "price_note": null,
    "price_unit": "KRW per 정",
    "product_name_ko": "리피토정10밀리그램(아토르바스타틴칼슘삼수화물)_(10.85mg/1정)",
    "company_ko": "비아트리스코리아(주)",
    "ingredient_code": "111501ATB",
    "ingredient_code_same_form": "111501ATB",
    "ingredient_count": "1",
    "ingredient": "atorvastatin calcium (as atorvastatin 10mg)",
    "strength_spec": "1",
    "unit": "정",
    "route_ko": "내복",
    "route": "oral",
    "class_code": "218",
    "mfds_class_code": "218",
    "prescription": "prescription",
    "remark_ko": null,
    "flags": [],
    "listed_since": "2023-01-01",
    "last_price_change": "2026-01-01",
    "as_of": "2026-09-01"
  },
  "history_from": "2010-02-01",
  "as_of": "2026-09-01",
  "events": [
    {
      "month": "2023-01-01",
      "event": "added",
      "price_krw": 642
    },
    {
      "month": "2024-06-01",
      "event": "remark",
      "price_krw": 642,
      "previous_price_krw": 642,
      "remark_ko": "24.7.1., 640원"
    },
    {
      "month": "2024-07-01",
      "event": "changed",
      "price_krw": 640,
      "previous_price_krw": 642
    },
    {
      "month": "2026-01-01",
      "event": "changed",
      "price_krw": 638,
      "previous_price_krw": 640
    }
  ],
  "note": "Only months in which the price, the remark or the listing changed are listed; between events the price is unchanged. A product listed since the first month we hold shows no 'added' event.",
  "attribution": {
    "source": "Ministry of Health and Welfare of Korea (보건복지부) notice 「약제 급여 목록 및 급여 상한금액표」 (Drug Benefit List and Maximum Reimbursement Price Table), Schedule 1; monthly compilation published by the Health Insurance Review & Assessment Service (건강보험심사평가원, HIRA). English product names: Ministry of Food and Drug Safety approval register via data.go.kr 15095677.",
    "license": "The price table is a public notice of the Korean government (Copyright Act art. 7). MFDS data: KOGL type 1 (attribution). Attribution to MOHW and HIRA is required when redistributing.",
    "changes": "Field names translated to English keys, prices parsed to numbers ('산정불가' kept as price_note), remarks mapped to flags, monthly files diffed into price-change events, EDI codes linked to MFDS approvals.",
    "notice": "Reference data as published; prices are the insurance maximum (상한금액) in KRW per unit, not retail prices. Informational only."
  }
}
TRY ITLIVE · 100 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
9-digit insurance EDI code identifying the product.

About this endpoint

What it does

Returns the month-by-month reimbursement price history for one medicine using its 9-digit insurance EDI code. Use this to see when a medicine was added, repriced, had a remark change, was recoded, or was removed from the reimbursement list. Only months in which something changed are listed; between two events, the price stayed the same.

Path Parameter(s)

AttributeTypeMandatoryDescription
edi_codeStringYes9-digit insurance EDI code identifying the medicine, such as 073400340. Must be exactly 9 digits, including any leading zeros.

Response

FieldTypeDescription
edi_codeStringInsurance EDI code of the medicine.
currentObject / NullCurrent price record, with the same fields as Get Current Reimbursement Price by EDI Code. null if the product is no longer listed.
history_fromStringEarliest month held in the dataset for price history (YYYY-MM-DD).
as_ofStringLatest month covered by the data (YYYY-MM-DD).
eventsArrayOne entry for each month in which the price, listing, or remark changed.
events[].monthStringMonth when the event was recorded (YYYY-MM-DD).
events[].eventStringEvent type: added, changed, removed, remark, recoded, or recoded_to. See Change Events in Key Terms.
events[].price_krwNumber / NullPrice recorded for the event, when applicable.
events[].price_noteString / NullNote when no price could be set that month, such as 산정불가.
events[].previous_price_krwNumber / NullPrice before the change, for changed and remark events.
events[].remark_koString / NullInsurer's remark in Korean. For recoded and recoded_to events, holds the related old or new code.
events[].product_name_koStringKorean medicine name at the time of the event.
events[].company_koStringKorean company name at the time of the event.
events[].ingredientString / NullEnglish ingredient information at the time of the event, when recorded.
noteStringExplains that only months with a change are listed.
attributionObjectSource and licence information. See Common Response Fields.
▣ ENDPOINT 03 / 07
GET
Get Reimbursement Prices by MFDS Item Sequence
https://api.eu.apyhub.com/193market/korea-drug-reimbursement-price-api/drugs/:item_seq/prices

QUICKSTART

GUIDE

Quickstart

Fetch the reimbursement-price lookup for a single item_seq path value.

curl -X GET "https://api.eu.apyhub.com/193market/korea-drug-reimbursement-price-api/drugs/:item_seq/prices" \
  -H "apy-token: $APY_TOKEN"

What you'll get back

You will receive the MFDS approval details, linked insurance EDI codes, the number of reimbursed codes, price records, any linked codes that are no longer listed, and attribution information.

Response Example

{
  "item_seq": "200410090",
  "name_en": "Lipitor Tab. 10mg",
  "name_ko": "리피토정10밀리그램",
  "company_en": "Viatris",
  "company_ko": "비아트리스코리아(주)",
  "ingredients_en": "Atorvastatin Calcium Trihydrate",
  "approval_status": "active",
  "edi_codes": ["073400340"],
  "reimbursed_codes": 1,
  "prices": [
    {
      "edi_code": "073400340",
      "price_krw": 638,
      "price_unit": "KRW per 정",
      "strength_spec": "1",
      "flags": [],
      "listed_since": "2023-01-01",
      "last_price_change": "2026-01-01"
    }
  ],
  "not_currently_listed": [],
  "as_of": "2026-09-01",
  "notice": "Reference data as published; prices are the insurance maximum (상한금액) in KRW per unit, not retail prices. Informational only.",
  "attribution": {
    "source": "Ministry of Health and Welfare of Korea (보건복지부) notice 「약제 급여 목록 및 급여 상한금액표」 (Drug Benefit List and Maximum Reimbursement Price Table), Schedule 1; monthly compilation published by the Health Insurance Review & Assessment Service (건강보험심사평가원, HIRA). English product names: Ministry of Food and Drug Safety approval register via data.go.kr 15095677.",
    "license": "The price table is a public notice of the Korean government (Copyright Act art. 7). MFDS data: KOGL type 1 (attribution). Attribution to MOHW and HIRA is required when redistributing.",
    "changes": "Field names translated to English keys, prices parsed to numbers ('산정불가' kept as price_note), remarks mapped to flags, monthly files diffed into price-change events, EDI codes linked to MFDS approvals.",
    "notice": "Reference data as published; prices are the insurance maximum (상한금액) in KRW per unit, not retail prices. Informational only."
  }
}
TRY ITLIVE · 100 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
MFDS approval item number (6-12 ASCII digits).

About this endpoint

What it does

Finds the insurance reimbursement codes and prices linked to one MFDS approval item. Use this when you have an MFDS approval item number and want to see its linked insurance codes, current reimbursement status, and prices.

Path Parameter(s)

AttributeTypeMandatoryDescription
item_seqStringYesMFDS approval item number, 6–12 digits, such as 200410090.

Response

FieldTypeDescription
item_seqStringMFDS approval item number.
name_enStringApproved medicine name in English.
name_koStringApproved medicine name in Korean.
company_enStringApproval holder's company name in English.
company_koStringApproval holder's company name in Korean.
ingredients_enStringEnglish ingredient name(s) as listed by MFDS.
approval_statusStringMFDS approval status, such as active.
edi_codesArrayInsurance EDI codes linked to the approval.
reimbursed_codesNumberNumber of linked EDI codes that are currently reimbursed.
pricesArrayOne price record for each currently reimbursed EDI code linked to the approval.
prices[].edi_codeStringInsurance EDI code.
prices[].price_krwNumber / NullCurrent maximum reimbursement price in KRW per unit.
prices[].price_unitStringUnit the price applies to.
prices[].strength_specStringStrength specification value.
prices[].flagsArrayStatus flags that apply to the listing.
prices[].listed_sinceStringDate first listed at the current code (YYYY-MM-DD).
prices[].last_price_changeStringDate of the latest price change (YYYY-MM-DD).
not_currently_listedArrayLinked EDI codes that are not currently reimbursed.
as_ofStringMonthly list the data reflects (YYYY-MM-DD).
noticeStringReference-data notice and pricing limitation.
attributionObjectSource and licence information. See Common Response Fields.
▣ ENDPOINT 04 / 07
GET
Get Reimbursement Prices by Ingredient
https://api.eu.apyhub.com/193market/korea-drug-reimbursement-price-api/ingredients/:name/prices

QUICKSTART

GUIDE

Quickstart

Compare reimbursement prices for Atorvastatin Calcium.

curl -X GET "https://api.eu.apyhub.com/193market/korea-drug-reimbursement-price-api/ingredients/:name/prices?page=1&per_page=2" \
  -H "apy-token: $APY_TOKEN"

What you'll get back

You will receive the total matching products, number of companies, overall price statistics, price statistics by strength, the requested page of product-level reimbursement prices, and attribution information.

Response Example

{
  "query": "Atorvastatin Calcium",
  "total": 538,
  "companies": 137,
  "price_krw": {"count": 538, "min": 405, "median": 709.5, "max": 1755},
  "by_strength": [
    {
      "ingredient_code": "111501ATB",
      "ingredient": "atorvastatin calcium (as atorvastatin 10mg)",
      "products": 128,
      "companies": 128,
      "price_krw": {"count": 128, "min": 405, "median": 612, "max": 663}
    }
  ],
  "page": 1,
  "per_page": 2,
  "results": [
    {
      "edi_code": "657203250",
      "price_krw": 405,
      "price_note": null,
      "price_unit": "KRW per 정",
      "product_name_ko": "아토르스타정10밀리그램(아토르바스타틴칼슘삼수화물)_(10.85mg/1정)",
      "company_ko": "환인제약(주)",
      "ingredient_code": "111501ATB",
      "ingredient": "atorvastatin calcium (as atorvastatin 10mg)",
      "strength_spec": "1",
      "unit": "정",
      "route_ko": "내복",
      "route": "oral",
      "class_code": "218",
      "mfds_class_code": "218",
      "prescription": "prescription",
      "remark_ko": null,
      "flags": [],
      "listed_since": "2020-12-01",
      "last_price_change": "2026-01-01",
      "as_of": "2026-09-01"
    },
    {
      "edi_code": "641700370",
      "price_krw": 489,
      "price_note": null,
      "price_unit": "KRW per 정",
      "product_name_ko": "일양아토르바스타틴정10밀리그램(아토르바스타틴칼슘수화물)_(10.85mg/1정)",
      "company_ko": "일양약품(주)",
      "ingredient_code": "111501ATB",
      "ingredient": "atorvastatin calcium (as atorvastatin 10mg)",
      "strength_spec": "1",
      "unit": "정",
      "route_ko": "내복",
      "route": "oral",
      "class_code": "218",
      "mfds_class_code": "218",
      "prescription": "prescription",
      "remark_ko": "집행정지(21.11.30.)",
      "flags": ["suspended_by_court"],
      "listed_since": "2012-07-01",
      "last_price_change": "2024-04-01",
      "as_of": "2026-09-01"
    }
  ],
  "as_of": "2026-09-01",
  "notice": "Reference data as published; prices are the insurance maximum (상한금액) in KRW per unit, not retail prices. Informational only.",
  "attribution": {
    "source": "Ministry of Health and Welfare of Korea (보건복지부) notice 「약제 급여 목록 및 급여 상한금액표」 (Drug Benefit List and Maximum Reimbursement Price Table), Schedule 1; monthly compilation published by the Health Insurance Review & Assessment Service (건강보험심사평가원, HIRA). English product names: Ministry of Food and Drug Safety approval register via data.go.kr 15095677.",
    "license": "The price table is a public notice of the Korean government (Copyright Act art. 7). MFDS data: KOGL type 1 (attribution). Attribution to MOHW and HIRA is required when redistributing.",
    "changes": "Field names translated to English keys, prices parsed to numbers ('산정불가' kept as price_note), remarks mapped to flags, monthly files diffed into price-change events, EDI codes linked to MFDS approvals.",
    "notice": "Reference data as published; prices are the insurance maximum (상한금액) in KRW per unit, not retail prices. Informational only."
  }
}
TRY ITLIVE · 200 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
English ingredient generic name as HIRA lists it (prefix match, e.g. `gabapentin`), or a 9-character ingredient code such as `164201ACH`.
Page number, 1-based.
Filter by administration route: `oral` | `injection` | `topical`.
Results per page. Range: 1-100.

About this endpoint

What it does

Returns reimbursed products for one ingredient together with price statistics and a breakdown by ingredient strength or form. Use this when you want to compare the reimbursement-price landscape for an ingredient, review different strengths, or identify the minimum, median, and maximum prices across all companies.

Path Parameter(s)

AttributeTypeMandatoryDescription
nameStringYesEnglish ingredient name as HIRA lists it, such as Atorvastatin Calcium or metformin hydrochloride. Matches from the start of the name, so gabapentin also works. A 9-character ingredient code, such as 111501ATB, can be used instead.

Query Parameter(s)

AttributeTypeMandatoryDescription
strengthStringNoFree-text filter on strength, such as 10mg.
routeStringNoFilters by route: oral, injection, or topical.
pageIntegerNoPage number, starting from 1. Default: 1.
per_pageIntegerNoNumber of results per page. Allowed range: 1-100. Default: 50.

Response

FieldTypeDescription
queryStringIngredient name or code used for the lookup.
totalNumberTotal number of matching products across all strengths and forms.
companiesNumberNumber of distinct companies among the matching products.
price_krwObjectOverall price statistics across all matching products.
price_krw.countNumberNumber of prices included in the statistics.
price_krw.minNumberLowest reimbursement price in KRW.
price_krw.medianNumberMedian reimbursement price in KRW.
price_krw.maxNumberHighest reimbursement price in KRW.
by_strengthArrayPrice statistics grouped by ingredient code (one group per strength and form).
by_strength[].ingredient_codeStringIngredient code for the group.
by_strength[].ingredientStringIngredient and strength information for the group.
by_strength[].productsNumberNumber of products in the group.
by_strength[].companiesNumberNumber of companies in the group.
by_strength[].price_krwObjectPrice statistics (count, min, median, max) for the group.
pageNumberCurrent page number.
per_pageNumberNumber of results returned per page.
resultsArrayPaginated product price records.
results[].edi_codeStringInsurance EDI code.
results[].price_krwNumber / NullReimbursement price in KRW per unit.
results[].price_noteString / NullNote when no normal price applies.
results[].price_unitStringUnit the price applies to.
results[].product_name_koStringKorean product name.
results[].company_koStringKorean company name.
results[].ingredient_codeStringIngredient code.
results[].ingredientStringIngredient information.
results[].strength_specStringStrength specification value.
results[].unitStringDispensing unit in Korean.
results[].route_koStringAdministration route in Korean.
results[].routeStringAdministration route in English.
results[].class_codeStringTherapeutic class code.
results[].mfds_class_codeStringMFDS therapeutic class code.
results[].prescriptionStringprescription or otc.
results[].remark_koString / NullInsurer's remark in Korean.
results[].flagsArrayStatus flags that apply to the listing.
results[].listed_sinceStringDate first listed at the current code.
results[].last_price_changeStringDate of the latest price change.
results[].as_ofStringMonthly list the record reflects.
as_ofStringMonthly list the data reflects (YYYY-MM-DD).
noticeStringReference-data notice and pricing limitation.
attributionObjectSource and licence information. See Common Response Fields.
▣ ENDPOINT 05 / 07
GET
Search Reimbursement Prices
https://api.eu.apyhub.com/193market/korea-drug-reimbursement-price-api/search

QUICKSTART

GUIDE

Quickstart

Search the current price list by ingredient.

curl -X GET "https://api.eu.apyhub.com/193market/korea-drug-reimbursement-price-api/search?ingredient=Atorvastatin%20Calcium&page=1&per_page=5" \
     -H "apy-token: $APY_TOKEN"

What you'll get back

You will receive the total number of matching products, pagination details, a list of matching reimbursement price records, and attribution information.

Response Example

{
  "total": 538,
  "page": 1,
  "per_page": 5,
  "results": [
    {
      "edi_code": "657203250",
      "product_name_ko": "아토르스타정10밀리그램(아토르바스타틴칼슘삼수화물)_(10.85mg/1정)",
      "company_ko": "환인제약(주)",
      "ingredient": "atorvastatin calcium (as atorvastatin 10mg)",
      "strength_spec": "1",
      "unit": "정",
      "route": "oral",
      "class_code": "218",
      "prescription": "prescription",
      "price_krw": 405,
      "price_note": null,
      "flags": [],
      "listed_since": "2020-12-01",
      "last_price_change": "2026-01-01",
      "mfds": []
    }
  ],
  "as_of": "2026-09-01",
  "notice": "Reference data as published; prices are the insurance maximum (상한금액) in KRW per unit, not retail prices. Informational only.",
  "attribution": {
    "source": "Ministry of Health and Welfare of Korea (보건복지부) notice 「약제 급여 목록 및 급여 상한금액표」 (Drug Benefit List and Maximum Reimbursement Price Table), Schedule 1; monthly compilation published by the Health Insurance Review & Assessment Service (건강보험심사평가원, HIRA). English product names: Ministry of Food and Drug Safety approval register via data.go.kr 15095677.",
    "license": "The price table is a public notice of the Korean government (Copyright Act art. 7). MFDS data: KOGL type 1 (attribution). Attribution to MOHW and HIRA is required when redistributing.",
    "changes": "Field names translated to English keys, prices parsed to numbers ('산정불가' kept as price_note), remarks mapped to flags, monthly files diffed into price-change events, EDI codes linked to MFDS approvals.",
    "notice": "Reference data as published; prices are the insurance maximum (상한금액) in KRW per unit, not retail prices. Informational only."
  }
}
TRY ITLIVE · 50 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.

About this endpoint

What it does

Searches the current Korean drug reimbursement price list using product name, company, ingredient, therapeutic class, prescription status, flags, or price range, with sorting and pagination.

Use this when you need to find multiple medicines matching specific criteria instead of looking up one known EDI code.

Query Parameter(s)

AttributeTypeMandatoryDescription
qStringNoSearches the Korean product name (contains match).
companyStringNoSearches the Korean company name (contains match), such as 한국아스트라제네카(주).
ingredientStringNoSearches the English ingredient name (contains match), such as metformin hydrochloride.
class_codeStringNo3-digit therapeutic class code, such as 396 (diabetes medicines).
prescriptionStringNoMedicine type: prescription or otc.
flagStringNoOne status flag: suspended_by_court, reimbursement_suspended, flexible_price_contract, or temporarily_suspended.
min_priceNumberNoMinimum reimbursement price in KRW (inclusive).
max_priceNumberNoMaximum reimbursement price in KRW (inclusive).
sortStringNoSort order: price_desc, price_asc, or name. Default: price_desc.
pageIntegerNoPage number, starting from 1. Default: 1.
per_pageIntegerNoNumber of results per page. Allowed range: 1-100. Default: 20.

Response

FieldTypeDescription
totalNumberTotal number of matching products.
pageNumberCurrent page number.
per_pageNumberNumber of results returned per page.
resultsArrayMatching medicine price records.
results[].edi_codeStringInsurance EDI code.
results[].product_name_koStringKorean product name.
results[].company_koStringKorean company name.
results[].ingredientStringIngredient information.
results[].strength_specStringStrength specification value.
results[].unitStringDispensing unit in Korean.
results[].routeStringAdministration route.
results[].class_codeStringTherapeutic class code.
results[].prescriptionStringprescription or otc.
results[].price_krwNumber / NullReimbursement price in KRW per unit.
results[].price_noteString / NullNote when no normal price applies.
results[].flagsArrayStatus flags that apply to the listing.
results[].listed_sinceStringDate first listed at the current code.
results[].last_price_changeStringDate of the latest price change.
results[].mfdsArrayLinked MFDS approval information.
as_ofStringMonthly list the data reflects (YYYY-MM-DD).
noticeStringReference-data notice and pricing limitation.
attributionObjectSource and licence information. See Common Response Fields.
▣ ENDPOINT 06 / 07
GET
Get Monthly Reimbursement Price Changes
https://api.eu.apyhub.com/193market/korea-drug-reimbursement-price-api/changes

QUICKSTART

GUIDE

Quickstart

Get the changes recorded for September 2026.

curl "https://api.eu.apyhub.com/193market/korea-drug-reimbursement-price-api/changes?month=2026-09&page=1&per_page=2" \
  -H 'apy-token: YOUR_API_KEY'

To see only re-priced products, add event=changed. To get the latest month, leave out month.

What you'll get back

You will receive the selected month, counts for each change type, pagination details, the individual products affected by the monthly changes, and attribution information.

Response Example

{
  "month": "2026-09-01",
  "summary": {
    "added": 130,
    "changed": 95,
    "remark": 1,
    "removed": 83
  },
  "total": 309,
  "page": 1,
  "per_page": 2,
  "results": [
    {
      "month": "2026-09-01",
      "event": "added",
      "price_krw": 68985,
      "price_note": null,
      "previous_price_krw": null,
      "remark_ko": null,
      "product_name_ko": "레볼팍정75밀리그램(엘트롬보팍올라민)_(95.7mg/1정)",
      "company_ko": "에스케이플라즈마(주)",
      "ingredient": "eltrombopag olamine (as eltrombopag 75mg)"
    },
    {
      "month": "2026-09-01",
      "event": "added",
      "price_krw": 21397,
      "price_note": null,
      "previous_price_krw": null,
      "remark_ko": null,
      "product_name_ko": "메펨주2그램(메로페넴수화물)_(2g/1병)",
      "company_ko": "(주)비씨월드헬스케어",
      "ingredient": "meropenem 2g"
    }
  ],
  "as_of": "2026-09-01",
  "notice": "Reference data as published; prices are the insurance maximum (상한금액) in KRW per unit, not retail prices. Informational only.",
  "attribution": {
    "source": "Ministry of Health and Welfare of Korea (보건복지부) notice 「약제 급여 목록 및 급여 상한금액표」 (Drug Benefit List and Maximum Reimbursement Price Table), Schedule 1; monthly compilation published by the Health Insurance Review & Assessment Service (건강보험심사평가원, HIRA). English product names: Ministry of Food and Drug Safety approval register via data.go.kr 15095677.",
    "license": "The price table is a public notice of the Korean government (Copyright Act art. 7). MFDS data: KOGL type 1 (attribution). Attribution to MOHW and HIRA is required when redistributing.",
    "changes": "Field names translated to English keys, prices parsed to numbers ('산정불가' kept as price_note), remarks mapped to flags, monthly files diffed into price-change events, EDI codes linked to MFDS approvals.",
    "notice": "Reference data as published; prices are the insurance maximum (상한금액) in KRW per unit, not retail prices. Informational only."
  }
}
TRY ITLIVE · 200 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.

About this endpoint

What it does

Returns products that were added, changed, removed, or had a relevant remark change in a selected month.

Use this to monitor monthly updates to the reimbursement price list and identify products whose reimbursement status or price changed.

Query Parameter(s)

AttributeTypeMandatoryDescription
monthStringNoMonth to inspect in YYYY-MM format, such as 2026-09. Defaults to the newest available month.
eventStringNoFilters by event type: added, changed, removed, or remark. See Change Events in Key Terms.
pageIntegerNoPage number, starting from 1. Default: 1.
per_pageIntegerNoNumber of results per page. Allowed range: 1-100. Default: 50.

Response

FieldTypeDescription
monthStringMonth covered by the response (YYYY-MM-DD).
summaryObjectCount of products for each event type in the month.
summary.addedNumberNumber of products newly listed.
summary.changedNumberNumber of products whose price changed.
summary.remarkNumberNumber of products where only the remark changed.
summary.removedNumberNumber of products removed from the list.
totalNumberTotal number of change events in the month (after any event filter).
pageNumberCurrent page number.
per_pageNumberNumber of results returned per page.
resultsArrayMonthly change events.
results[].monthStringMonth the event was recorded in (YYYY-MM-DD).
results[].eventStringType of change: added, changed, removed, or remark.
results[].price_krwNumber / NullNew price in KRW, when the event carries a price.
results[].price_noteString / NullNote when no price could be set, such as 산정불가.
results[].previous_price_krwNumber / NullPrice before the change, for changed events.
results[].product_name_koStringKorean product name.
results[].company_koStringKorean company name.
results[].ingredientString / NullEnglish ingredient information, when recorded.
results[].remark_koString / NullInsurer's remark in Korean, for remark events.
as_ofStringMonthly list the data reflects (YYYY-MM-DD).
noticeStringReference-data notice and pricing limitation.
attributionObjectSource and licence information. See Common Response Fields.
▣ ENDPOINT 07 / 07
GET
Get Dataset Reference Codes and Coverage
https://api.eu.apyhub.com/193market/korea-drug-reimbursement-price-api/codes

QUICKSTART

GUIDE

Quickstart

Call the endpoint without any parameters.

curl -X GET "https://api.eu.apyhub.com/193market/korea-drug-reimbursement-price-api/codes" \
  -H "apy-token: $APY_TOKEN"

What you'll get back

You will receive the list of available monthly datasets, the supported flags, price notes, and event types with their meanings, route and prescription value maps, dataset build and cross-check information, and attribution information.

Response Example

The months array below is shortened to the first two and last two entries.

{
  "months": [
    {
      "month": "2008-04-01",
      "products": 117,
      "status": "partial",
      "published": "2008-04-08"
    }
  ],
  "flags": [
    {
      "key": "suspended_by_court",
      "label_ko": "집행정지",
      "meaning": "Price change suspended by a court order; the listed price is provisional"
    },
    {
      "key": "reimbursement_suspended",
      "label_ko": "급여정지",
      "meaning": "Reimbursement suspended"
    }
  ],
  "price_note_values": [
    {
      "value": "산정불가",
      "meaning": "No price set (price_krw is null)"
    }
  ],
  "events": [
    {
      "key": "added",
      "meaning": "Code appears in this month's list for the first time"
    },
    {
      "key": "changed",
      "meaning": "Ceiling price differs from the previous month (previous_price_krw given)"
    }
  ],
  "route": {
    "내복": "oral",
    "주사": "injection",
    "외용": "topical"
  },
  "prescription": {
    "전문": "prescription",
    "일반": "otc"
  },
  "data": {
    "built_at": "2026-09-22T19:47:28",
    "counts": {
      "snapshots": 197,
      "snapshots_failed": 0,
      "snapshots_partial": 10,
      "prices": 22045,
      "events": 138073,
      "mfds_links": 22307,
      "linked_products": 21947
    },
    "latest_snapshot": "2026-09-01",
    "earliest_snapshot": "2010-02-01",
    "source_cross_check": {
      "checked": true,
      "notice_no": "2026-175",
      "effective": "2026. 9. 1.",
      "sheets_effective_later_skipped": 8,
      "added_in_notice": 131,
      "added_present_in_list": 130,
      "removed_in_notice": 84,
      "removed_absent_from_list": 84,
      "changed_in_notice": 112,
      "changed_price_matches": 110
    }
  },
  "attribution": {
    "source": "Ministry of Health and Welfare of Korea (보건복지부) notice 「약제 급여 목록 및 급여 상한금액표」 (Drug Benefit List and Maximum Reimbursement Price Table), Schedule 1; monthly compilation published by the Health Insurance Review & Assessment Service (건강보험심사평가원, HIRA). English product names: Ministry of Food and Drug Safety approval register via data.go.kr 15095677.",
    "license": "The price table is a public notice of the Korean government (Copyright Act art. 7). MFDS data: KOGL type 1 (attribution). Attribution to MOHW and HIRA is required when redistributing.",
    "changes": "Field names translated to English keys, prices parsed to numbers ('산정불가' kept as price_note), remarks mapped to flags, monthly files diffed into price-change events, EDI codes linked to MFDS approvals.",
    "notice": "Reference data as published; prices are the insurance maximum (상한금액) in KRW per unit, not retail prices. Informational only."
  }
}
TRY ITLIVE · 1 ATOM
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.

About this endpoint

What it does

Returns reference information about the dataset: every monthly list available, the meaning of each status flag, price-note value, and change-event type, the route and prescription value maps, and dataset build and coverage details.

Use this endpoint first to understand the codes and values used by the other endpoints. It takes no parameters and is free to call.

Parameters

This endpoint does not require any parameters.

Response

FieldTypeDescription
monthsArrayEvery monthly reimbursement list available in the dataset.
months[].monthStringMonth represented by the list (YYYY-MM-DD).
months[].productsNumberNumber of products in that monthly list.
months[].statusStringList status: ok (complete list) or partial (incomplete early-period list).
months[].publishedStringDate the government notice for that month was published (YYYY-MM-DD).
flagsArrayAvailable status flags.
flags[].keyStringFlag name used in the flags field, such as suspended_by_court.
flags[].label_koStringOriginal Korean label, such as 집행정지.
flags[].meaningStringEnglish explanation of the flag.
price_note_valuesArraySupported price-note values.
price_note_values[].valueStringPrice-note text, such as 산정불가.
price_note_values[].meaningStringEnglish explanation of the value.
eventsArraySupported change-event types.
events[].keyStringEvent name, such as added or changed.
events[].meaningStringEnglish explanation of the event.
routeObjectMap of Korean route values to English values (내복 → oral, 주사 → injection, 외용 → topical).
prescriptionObjectMap of Korean prescription values to English values (전문 → prescription, 일반 → otc).
dataObjectDataset build and coverage information.
data.built_atStringTime the dataset was built.
data.countsObjectDataset record counts.
data.counts.snapshotsNumberNumber of monthly lists processed.
data.counts.snapshots_failedNumberNumber of monthly lists that failed to process.
data.counts.snapshots_partialNumberNumber of partial monthly lists.
data.counts.pricesNumberNumber of current price records.
data.counts.eventsNumberNumber of recorded change events.
data.counts.mfds_linksNumberNumber of links between EDI codes and MFDS approvals.
data.counts.linked_productsNumberNumber of products linked to at least one MFDS approval.
data.latest_snapshotStringNewest monthly list included (YYYY-MM-DD).
data.earliest_snapshotStringOldest monthly list used for price history (YYYY-MM-DD).
data.source_cross_checkObjectResults of checking the compiled list against the MOHW notice currently in force.
data.source_cross_check.checkedBooleanWhether the cross-check was performed.
data.source_cross_check.notice_noStringNumber of the MOHW notice checked against.
data.source_cross_check.effectiveStringEffective date of that notice.
data.source_cross_check.sheets_effective_later_skippedNumberNotice sheets skipped because they take effect later.
data.source_cross_check.added_in_noticeNumberProducts listed as added in the notice.
data.source_cross_check.added_present_in_listNumberAdded products confirmed present in the compiled list.
data.source_cross_check.removed_in_noticeNumberProducts listed as removed in the notice.
data.source_cross_check.removed_absent_from_listNumberRemoved products confirmed absent from the compiled list.
data.source_cross_check.changed_in_noticeNumberProducts listed as re-priced in the notice.
data.source_cross_check.changed_price_matchesNumberRe-priced products whose compiled price matches the notice.
attributionObjectSource and licence information. See Common Response Fields.
▣ COMMON ERRORS

Errors any endpoint can return

400bad_request

Required parameter missing or malformed body.

401unauthorized

API key missing, revoked, or not authorized for this service.

429rate_limited

Your plan's per-second rate exceeded. Retry with exponential backoff.

503upstream_busy

Backend temporarily unavailable. Try again in a few seconds.