World Health Organization (WHO) ICD10 API
The ICD10 API from World Health Organization (WHO) — 4 operation(s) for icd10.
The ICD10 API from World Health Organization (WHO) — 4 operation(s) for icd10.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.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.curl "https://apis.io/api/v1/apis/who-icd10-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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.
openapi: 3.2.0
info:
title: ICD Foundation ICD10 API
description: "\n<p>\nICD-API is a REST API that allows programmatic access to the International Classification of Diseases (ICD).\n</p><p>\nFor most users that require accessing the ICD-11 statistical classification with codes, you need to use the <b>Linearization</b> endpoints with the linearizationId set to <b>mms</b>\n</p><p>\n<b>Foundation</b> endpoints provide information on the Foundation Component of ICD-11. \n</p><p>\n<b>ICD10</b> endpoints serves ICD-10 releases. Please note that functionality on the ICD-10 endpoints are limited. (i.e. the search is not provided)\n</p><p>\nFor more information on the API please see the <a href=\"https://icd.who.int/icdapi\">ICD-API home page </a>\n</p>\n"
license:
name: ' ICD-11 Terms of Use and License Agreement '
url: https://icd.who.int/en/docs/icd11-license.pdf
version: v2.6.0
servers:
- url: https://ghoapi.azureedge.net/api
description: Base URL declared by the provider in apis.yml (roadmap#122).
security:
- oauth2:
- icdapi_access
tags:
- name: ICD10
paths:
/icd/release/10:
get:
tags:
- ICD10
summary: Lists the available ICD-10 releases
operationId: GetICD10Releases
parameters:
- name: API-Version
in: header
description: "Version of the API. Values are like v1,v2.\n For example, if you provide value v2, the API will respond in the format of the version 2 of the API"
required: true
schema:
type: string
- name: Accept-Language
in: header
description: "ICD-API is multi-lingual. By changing this header, you may make the API respond in different languages\nLanguages will be available as the translations of ICD-11 completes. \nThe values are language codes such as en, es, zh, etc."
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/MultiVersion'
'401':
description: Unauthorized
/icd/release/10/{code}:
get:
tags:
- ICD10
summary: Lists the available ICD-10 releases for the requested category
operationId: GetAvailableReleasesForICD10Entity
parameters:
- name: code
in: path
description: ICD-10 category code. For blocks the code range
required: true
schema:
type: string
- name: API-Version
in: header
description: "Version of the API. Values are like v1,v2.\n For example, if you provide value v2, the API will respond in the format of the version 2 of the API"
required: true
schema:
type: string
- name: Accept-Language
in: header
description: "ICD-API is multi-lingual. By changing this header, you may make the API respond in different languages\nLanguages will be available as the translations of ICD-11 completes. \nThe values are language codes such as en, es, zh, etc."
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/MultiVersion'
'401':
description: Unauthorized
'404':
description: Not Found
/icd/release/10/{releaseId}:
get:
tags:
- ICD10
summary: This endpoint returns basic information on the released version of ICD-10 together with the chapters in it
operationId: GetICD10Release
parameters:
- name: releaseId
in: path
description: The id for the release. For ICD-10, this is generally the year e.g. 2016
required: true
schema:
type: string
- name: API-Version
in: header
description: "Version of the API. Values are like v1,v2.\n For example, if you provide value v2, the API will respond in the format of the version 2 of the API"
required: true
schema:
type: string
- name: Accept-Language
in: header
description: "ICD-API is multi-lingual. By changing this header, you may make the API respond in different languages\nLanguages will be available as the translations of ICD-11 completes. \nThe values are language codes such as en, es, zh, etc."
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/TopLevel'
'401':
description: Unauthorized
'404':
description: Not Found
/icd/release/10/{releaseId}/{code}:
get:
tags:
- ICD10
summary: This endpoint returns information on the category together with its children categories
operationId: GetICD10Entity
parameters:
- name: releaseId
in: path
description: The id for the release. For ICD-10, this is generally the year e.g. 2016
required: true
schema:
type: string
- name: code
in: path
description: ICD-10 category code. For blocks the code range
required: true
schema:
type: string
- name: API-Version
in: header
description: "Version of the API. Values are like v1,v2.\n For example, if you provide value v2, the API will respond in the format of the version 2 of the API"
required: true
schema:
type: string
- name: Accept-Language
in: header
description: "ICD-API is multi-lingual. By changing this header, you may make the API respond in different languages\nLanguages will be available as the translations of ICD-11 completes. \nThe values are language codes such as en, es, zh, etc."
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ICD10Entity'
'401':
description: Unauthorized
'404':
description: Not Found
components:
schemas:
MultiVersion:
type: object
properties:
title:
$ref: '#/components/schemas/LanguageSpecificText'
latestRelease:
type:
- string
- 'null'
description: Latest release available for this linearization
release:
type:
- array
- 'null'
items:
type: string
description: List of available releases for this linearization
additionalProperties: false
description: 'Class representing available versions of a given classification or classification entity
This is used when the request is made without a relase id (or minor version)'
TopLevel:
type: object
properties:
'@context':
type:
- string
- 'null'
description: JSON-LD Context for the endpoint
'@id':
type:
- string
- 'null'
description: unique id for the classification
title:
$ref: '#/components/schemas/LanguageSpecificText'
definition:
$ref: '#/components/schemas/LanguageSpecificText'
child:
type:
- array
- 'null'
items:
type: string
description: List of top level entities
releaseDate:
type:
- string
- 'null'
description: Release date
releaseId:
type:
- string
- 'null'
description: Release identifier for this particular release of the classification
browserUrl:
type:
- string
- 'null'
description: 'ICD Browser is a web site that allows users see the ICD in its hierarchical structure at the same time providing search and post-coordination features.
Browser URL property provides a direct link to the classification in the WHO''s on-line ICD Browser.'
additionalProperties: false
description: Shared superclass for Foundation and Linearization top level in API response. Used only for swagger docs.
LanguageSpecificText:
type: object
properties:
'@language':
type:
- string
- 'null'
description: Language code for the string
'@value':
type:
- string
- 'null'
description: Label in the given language
additionalProperties: false
description: Language specific text as used in JSON-LD
ICD10Entity:
type: object
properties:
title:
$ref: '#/components/schemas/LanguageSpecificText'
definition:
$ref: '#/components/schemas/LanguageSpecificText'
longDefinition:
$ref: '#/components/schemas/LanguageSpecificText'
fullySpecifiedName:
$ref: '#/components/schemas/LanguageSpecificText'
source:
type:
- string
- 'null'
description: URI of the foundation entity that this entity is derived from
code:
type:
- string
- 'null'
description: Code for the ICD-11 category
note:
$ref: '#/components/schemas/LanguageSpecificText'
codingHint:
$ref: '#/components/schemas/LanguageSpecificText'
classKind:
type:
- string
- 'null'
description: 'Class kind for the category. It could be one of the following
- chapter : if the entity is a chapter. (i.e. at the top level of the classification
- block : huger level entity which don''t have codes
- category : An ICD entity that bears a code'
child:
type:
- array
- 'null'
items:
type: string
description: List of URIs for the child entities
parent:
type:
- string
- 'null'
description: List of URIs for the parent entity
indexTerm:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/Term'
description: "ICD-11 Index terms are generated from the terms (titles, inclusions, narrower terms) included in the entity\nas well as from the foundation entities under the linearization shore line. The IndexTerm property includes \nall of the index terms of a linearization entity in one place."
inclusion:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/Term'
description: List of inclusions for this entity
exclusion:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/Term'
description: List of exclusions for this entity
browserUrl:
type:
- string
- 'null'
description: 'ICD Browser is a web site that allows users see the ICD in its hierarchical structure at the same time providing search and post-coordination features.
Browser URL property provides a direct link to the classification in the WHO''s on-line ICD Browser.'
additionalProperties: false
description: Class representing an ICD-10 Entity
Term:
type: object
properties:
label:
$ref: '#/components/schemas/LanguageSpecificText'
foundationReference:
type:
- string
- 'null'
description: 'In some cases such as in exclusions or index terms, the term itself could be coming from another entity in the classification
In these cases foundationReference holds the foundation URI for that entity
Index terms generated from foundation entities that are not located in the linearization have this reference'
linearizationReference:
type:
- string
- 'null'
description: 'In some cases such as in exclusions or index terms, the term itself could be coming from another entity in the classification
In these cases linearizationReference holds the linearization (or release) URI for that entity'
deprecated:
type: boolean
description: If the term has been deprecated, this flag is set to true
additionalProperties: false
description: Class representing a term with language specific label and optional cross references
securitySchemes:
oauth2:
type: oauth2
flows:
clientCredentials:
tokenUrl: https://icdaccessmanagement.who.int/connect/token
scopes:
icdapi_access: ''