Clinical Tables
NLM Clinical Table Search Service — 22 keyless code systems including LOINC, ICD-10-CM, ICD-11, RxTerms, HPO, HCPCS, NPI, UCUM and genomics tables.
Answer List
LOINC answer list for one question code — clinicaltables.nlm.nih.gov, direct JSON. Sits outside the /api/<table>/v3/search grammar: its own path, one code in,
/v1/health:clinical-tables/answer-listParameters
| Name | Type | In | Description |
|---|---|---|---|
| loincNum | string | query | LOINC code of the question whose answer list to return. Required. |
Example response
{"project":"health:clinical-tables", "data": {"count":7, "items": [ {"code":"LA12637-7","text":"Independent - no help or staff oversight at any time","sequence":1 }, {"code":"LA12638-5","text":"Supervision - oversight, encouragement or cueing","sequence":2 }, {"code":"LA12639-3","text":"Limited assistance - resident highly involved in activity; staff provide guided maneuvering of limbs or other non-weight-bearing assistance","sequence":3 }, {"code":"LA12640-1","text":"Extensive assistance - resident involved in activity, staff provide weight-bearing support","sequence":4 }, {"code":"LA12641-9","text":"Total dependence - full staff performance every time during entire 7-day period","sequence":5 }, {"code":"LA12642-7","text":"Activity occurred only once or twice - activity did occur but only once or twice","sequence":6 }, {"code":"LA18614-0","text":"Activity did not occur - activity did not occur or family and/or non-facility staff provided care 100% of the time for that activity over the entire 7-day period","sequence":7 } ],"loincNum":"45592-3","provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Conditions
Problem-list conditions — clinicaltables.nlm.nih.gov `conditions`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/conditionsParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: primary_name, consumer_name, key_id, icd10cm_codes, icd10cm, term_icd9_code, term_icd9_text, word_synonyms, synonyms, info_link_data. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: primary_name, consumer_name, key_id, icd10cm_codes, icd10cm, term_icd9_code, term_icd9_text, word_synonyms, synonyms, info_link_data. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: primary_name, consumer_name, key_id, icd10cm_codes, icd10cm, term_icd9_code, term_icd9_text, word_synonyms, synonyms, info_link_data. |
| codeField | string | query | The single field to report as each item's code. Allowed: primary_name, consumer_name, key_id, icd10cm_codes, icd10cm, term_icd9_code, term_icd9_text, word_synonyms, synonyms, info_link_data. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":3, "items": [ {"code":"366","keyId":"366","primaryName":"Asthma","consumerName":"Asthma" }, {"code":"30572","keyId":"30572", "synonyms": [ "asthma mild persistent" ],"primaryName":"Asthma - mild persistent","consumerName":"Asthma - mild persistent" }, {"code":"30573","keyId":"30573", "synonyms": [ "asthma moderate persistent" ],"primaryName":"Asthma - moderate persistent","consumerName":"Asthma - moderate persistent" } ],"limit":3,"terms":"asthma","total":5,"hasMore":true,"nextPage":2,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Cosmic
COSMIC structural variants — clinicaltables.nlm.nih.gov `cosmic_struct`, direct JSON. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/cosmicParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: BreakPointOrder, ChromFrom, ChromTo, Description, ID_STUDY, LocationFromMax, LocationFromMin, LocationToMax, LocationToMin, MutationID, MutationType, NonTemplatedInsSeq, PrimaryHistology, PrimarySite, Site, StrandFrom, StrandTo, GRChVer, COSMIC_STRUCTURAL_ID, COSMIC_PHENOTYPE_ID, COSMIC_STUDY_ID. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: BreakPointOrder, ChromFrom, ChromTo, Description, ID_STUDY, LocationFromMax, LocationFromMin, LocationToMax, LocationToMin, MutationID, MutationType, NonTemplatedInsSeq, PrimaryHistology, PrimarySite, Site, StrandFrom, StrandTo, GRChVer, COSMIC_STRUCTURAL_ID, COSMIC_PHENOTYPE_ID, COSMIC_STUDY_ID. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: BreakPointOrder, ChromFrom, ChromTo, Description, ID_STUDY, LocationFromMax, LocationFromMin, LocationToMax, LocationToMin, MutationID, MutationType, NonTemplatedInsSeq, PrimaryHistology, PrimarySite, Site, StrandFrom, StrandTo, GRChVer, COSMIC_STRUCTURAL_ID, COSMIC_PHENOTYPE_ID, COSMIC_STUDY_ID. |
| codeField | string | query | The single field to report as each item's code. Allowed: BreakPointOrder, ChromFrom, ChromTo, Description, ID_STUDY, LocationFromMax, LocationFromMin, LocationToMax, LocationToMin, MutationID, MutationType, NonTemplatedInsSeq, PrimaryHistology, PrimarySite, Site, StrandFrom, StrandTo, GRChVer, COSMIC_STRUCTURAL_ID, COSMIC_PHENOTYPE_ID, COSMIC_STUDY_ID. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
| genomeBuild | enum | query | GRCh human genome build the coordinates refer to. Default 37. One of 37, 38. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":3, "items": [ {"code":"119626","chromTo":"7","chromFrom":"7","mutationID":"119626","description":"chr7:g.(145808590_145808610)_(145874585_145874605)del","mutationType":"intrachromosomal deletion" }, {"code":"119635","chromTo":"18","chromFrom":"18","mutationID":"119635","description":"chr18:g.(50962789_50962809)_(51078735_51078755)del","mutationType":"intrachromosomal deletion" }, {"code":"119648","chromTo":"13","chromFrom":"13","mutationID":"119648","description":"chr13:g.(23495219_23495239)_(23495527_23495547)del","mutationType":"intrachromosomal deletion" } ],"limit":3,"terms":"deletion","total":49355,"hasMore":true,"nextPage":2,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Cytogenetic Locations
Cytogenetic band locations — clinicaltables.nlm.nih.gov `cytogenetic_locs`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/cytogenetic-locationsParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: chromosome, arm, band, iscn_start, iscn_stop, stain, cytogenetic. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: chromosome, arm, band, iscn_start, iscn_stop, stain, cytogenetic. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: chromosome, arm, band, iscn_start, iscn_stop, stain, cytogenetic. |
| codeField | string | query | The single field to report as each item's code. Allowed: chromosome, arm, band, iscn_start, iscn_stop, stain, cytogenetic. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":3, "items": [ {"arm":"q","code":"7q31.1","chromosome":"7","cytogenetic":"7q31.1" }, {"arm":"q","code":"7q31.31","chromosome":"7","cytogenetic":"7q31.31" }, {"arm":"q","code":"7q31.33","chromosome":"7","cytogenetic":"7q31.33" } ],"limit":3,"terms":"7q31","total":5,"hasMore":true,"nextPage":2,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Dbvar
dbVar structural variants — clinicaltables.nlm.nih.gov `dbvar`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/dbvarParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: Alias, ciend, cipos, clinical_int, copy_number, Dbxref, End_range, FeatureEnd, FeatureStart, gender, ID, Name, parent, phenotype, sampleset_name, sampleset_type, SeqID, Start_range, Type, var_origin, Zygosity. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: Alias, ciend, cipos, clinical_int, copy_number, Dbxref, End_range, FeatureEnd, FeatureStart, gender, ID, Name, parent, phenotype, sampleset_name, sampleset_type, SeqID, Start_range, Type, var_origin, Zygosity. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: Alias, ciend, cipos, clinical_int, copy_number, Dbxref, End_range, FeatureEnd, FeatureStart, gender, ID, Name, parent, phenotype, sampleset_name, sampleset_type, SeqID, Start_range, Type, var_origin, Zygosity. |
| codeField | string | query | The single field to report as each item's code. Allowed: Alias, ciend, cipos, clinical_int, copy_number, Dbxref, End_range, FeatureEnd, FeatureStart, gender, ID, Name, parent, phenotype, sampleset_name, sampleset_type, SeqID, Start_range, Type, var_origin, Zygosity. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":3, "items": [ {"id":"7945772","code":"nsv7447629","name":"nsv7447629","type":"copy_number_variation","alias":"3___122567173_122571435___GRCh37_copy_number_variation_from_gain_or_loss","dbxref":"URL:www.ncbi.nlm.nih.gov/dbvar/variants/nsv7447629" }, {"id":"7945768","code":"nsv7447625","name":"nsv7447625","type":"copy_number_variation","alias":"2___241740907_241778621___GRCh37_copy_number_variation_from_gain_or_loss","dbxref":"URL:www.ncbi.nlm.nih.gov/dbvar/variants/nsv7447625" }, {"id":"7945758","code":"nsv7447615","name":"nsv7447615","type":"copy_number_variation","alias":"3___46130509_46180416___GRCh37_copy_number_variation_from_gain_or_loss","dbxref":"URL:www.ncbi.nlm.nih.gov/dbvar/variants/nsv7447615" } ],"limit":3,"terms":"nsv","total":10000,"hasMore":true,"nextPage":2,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Disease Names
Disease names from MedGen — clinicaltables.nlm.nih.gov `disease_names`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/disease-namesParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: DiseaseName, ConceptID. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: DiseaseName, ConceptID. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: DiseaseName, ConceptID. |
| codeField | string | query | The single field to report as each item's code. Allowed: DiseaseName, ConceptID. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":3, "items": [ {"code":"C5681015","conceptID":"C5681015","diseaseName":"Marfan and Marfan-related disorder" }, {"code":"C0024796","conceptID":"C0024796","diseaseName":"Marfan syndrome" }, {"code":"C4016055","conceptID":"C4016055","diseaseName":"Marfan syndrome, atypical" } ],"limit":3,"terms":"marfan","total":19,"hasMore":true,"nextPage":2,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Drug Ingredients
Drug ingredient names — clinicaltables.nlm.nih.gov `drug_ingredients`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/drug-ingredientsParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: code, name. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: code, name. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: code, name. |
| codeField | string | query | The single field to report as each item's code. Allowed: code, name. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":1, "items": [ {"code":"1191","name":"aspirin" } ],"limit":3,"terms":"aspirin","total":1,"hasMore":false,"nextPage":null,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Drugs
RxTerms drug names — clinicaltables.nlm.nih.gov `rxterms`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/drugsParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: DISPLAY_NAME, STRENGTHS_AND_FORMS, RXCUIS, SXDG_RXCUI, DISPLAY_NAME_SYNONYM. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: DISPLAY_NAME, STRENGTHS_AND_FORMS, RXCUIS, SXDG_RXCUI, DISPLAY_NAME_SYNONYM. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: DISPLAY_NAME, STRENGTHS_AND_FORMS, RXCUIS, SXDG_RXCUI, DISPLAY_NAME_SYNONYM. |
| codeField | string | query | The single field to report as each item's code. Allowed: DISPLAY_NAME, STRENGTHS_AND_FORMS, RXCUIS, SXDG_RXCUI, DISPLAY_NAME_SYNONYM. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":3, "items": [ {"code":"Aspirin (Oral Pill)", "rxcuis": [ "252857", "308416", "243670", "198466", "198467", "212033", "308409", "198471" ],"sxdgRxcui":"1154070","displayName":"Aspirin (Oral Pill)", "strengthsAndForms": [ " 81 mg Cap", " 81 mg DR Tab", " 81 mg Tab", "325 mg Cap", "325 mg DR Tab", "325 mg Tab", "500 mg DR Tab", "500 mg Tab" ] }, {"code":"Aspirin (Chewable)", "rxcuis": [ "318272" ],"sxdgRxcui":"1294937","displayName":"Aspirin (Chewable)", "strengthsAndForms": [ "81 mg Tab" ] }, {"code":"Aspirin/oxyCODONE (Oral Pill)", "rxcuis": [ "637540", "848768" ],"sxdgRxcui":"1153750","displayName":"Aspirin/oxyCODONE (Oral Pill)", "strengthsAndForms": [ "325-4.5-0.38 mg Tab", "325-4.84 mg Tab" ] } ],"limit":3,"terms":"aspirin","total":15,"hasMore":true,"nextPage":2,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Form Definition
Renderable LOINC panel definition — clinicaltables.nlm.nih.gov, direct JSON. The one rich payload in this source: a nested question tree with units, answer
/v1/health:clinical-tables/form-definitionParameters
| Name | Type | In | Description |
|---|---|---|---|
| loincNum | string | query | LOINC code of the panel or form whose definition to return. Required. |
Example response
{"project":"health:clinical-tables", "data": {"code":"34565-2","name":"Vital signs, weight and height panel", "items": [ { "items": [ { "units": [ {"code":"{beats}/min","name":"{beats}/min","system":"http://unitsofmeasure.org","isDefault":false } ],"linkId":"/34566-0/8867-4","dataType":"REAL","isHeader":false,"question":"Heart rate","questionCode":"8867-4","questionCodeSystem":"http://loinc.org" } ],"linkId":"/34566-0","dataType":"SECTION","isHeader":true,"question":"Vital Signs Pnl","questionCode":"34566-0","questionCodeSystem":"http://loinc.org" } ],"codeType":"LOINC","loincNum":"34565-2","provider":"clinical-tables","codeSystem":"http://loinc.org","lformsVersion":"29.0.0","copyrightNotice":null,"codingInstructions":null },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Genes
NCBI gene records — clinicaltables.nlm.nih.gov `ncbi_genes`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/genesParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: GeneID, HGNC_ID, Symbol, Synonyms, dbXrefs, chromosome, map_location, description, type_of_gene, na_symbol, na_name, Other_designations, Modification_date. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: GeneID, HGNC_ID, Symbol, Synonyms, dbXrefs, chromosome, map_location, description, type_of_gene, na_symbol, na_name, Other_designations, Modification_date. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: GeneID, HGNC_ID, Symbol, Synonyms, dbXrefs, chromosome, map_location, description, type_of_gene, na_symbol, na_name, Other_designations, Modification_date. |
| codeField | string | query | The single field to report as each item's code. Allowed: GeneID, HGNC_ID, Symbol, Synonyms, dbXrefs, chromosome, map_location, description, type_of_gene, na_symbol, na_name, Other_designations, Modification_date. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":3, "items": [ {"code":"394269","symbol":"BRCA1P1","dbXrefs":"HGNC:HGNC:28470|AllianceGenome:HGNC:28470","synonyms":"LBRCA1|PsiBRCA1|pseudo-BRCA1","chromosome":"17","codeSystem":"NCBI-gene code","description":"BRCA1 pseudogene 1" }, {"code":"111589215","symbol":"LOC111589215","dbXrefs":"-","synonyms":"-","chromosome":"17","codeSystem":"NCBI-gene code","description":"BRCA1 promoter region" }, {"code":"101929767","symbol":"BRCA1-OT1","dbXrefs":"HGNC:HGNC:58363","synonyms":"-","chromosome":"17","codeSystem":"NCBI-gene code","description":"BRCA1 overlapping transcript 1" } ],"limit":3,"terms":"BRCA1","total":9,"hasMore":true,"nextPage":2,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Hcpcs
HCPCS Level II codes — clinicaltables.nlm.nih.gov `hcpcs`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/hcpcsParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: code, short_desc, long_desc, display, add_dt, term_dt, act_eff_dt, obsolete, is_noc. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: code, short_desc, long_desc, display, add_dt, term_dt, act_eff_dt, obsolete, is_noc. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: code, short_desc, long_desc, display, add_dt, term_dt, act_eff_dt, obsolete, is_noc. |
| codeField | string | query | The single field to report as each item's code. Allowed: code, short_desc, long_desc, display, add_dt, term_dt, act_eff_dt, obsolete, is_noc. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":3, "items": [ {"code":"E2210","display":"Wheelchair bearings","shortDesc":"Wheelchair bearings" }, {"code":"K0001","display":"Standard wheelchair","shortDesc":"Standard wheelchair" }, {"code":"K0003","display":"Lightweight wheelchair","shortDesc":"Lightweight wheelchair" } ],"limit":3,"terms":"wheelchair","total":63,"hasMore":true,"nextPage":2,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Hpo
Human Phenotype Ontology terms — clinicaltables.nlm.nih.gov `hpo`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/hpoParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: id, name, definition, def_xref, created_by, creation_date, comment, is_obsolete, replaced_by, consider, alt_id, synonym, synonym.term, synonym.relation, synonym.type, synonym.xref, is_a, is_a.id, is_a.name, xref, xref.id, xref.name, property, property.name, property.value, property.data_type, property.xref. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: id, name, definition, def_xref, created_by, creation_date, comment, is_obsolete, replaced_by, consider, alt_id, synonym, synonym.term, synonym.relation, synonym.type, synonym.xref, is_a, is_a.id, is_a.name, xref, xref.id, xref.name, property, property.name, property.value, property.data_type, property.xref. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: id, name, definition, def_xref, created_by, creation_date, comment, is_obsolete, replaced_by, consider, alt_id, synonym, synonym.term, synonym.relation, synonym.type, synonym.xref, is_a, is_a.id, is_a.name, xref, xref.id, xref.name, property, property.name, property.value, property.data_type, property.xref. |
| codeField | string | query | The single field to report as each item's code. Allowed: id, name, definition, def_xref, created_by, creation_date, comment, is_obsolete, replaced_by, consider, alt_id, synonym, synonym.term, synonym.relation, synonym.type, synonym.xref, is_a, is_a.id, is_a.name, xref, xref.id, xref.name, property, property.name, property.value, property.data_type, property.xref. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":1, "items": [ {"id":"HP:0001250", "isA": [ {"id":"HP:0012638","name":"Abnormal nervous system physiology" } ],"code":"HP:0001250","name":"Seizure", "synonym": [ {"term":"Epilepsy","type":"layperson","relation":"RELATED" }, {"term":"Epileptic seizure","relation":"EXACT" }, {"term":"Seizures","type":"plural_form","relation":"EXACT" } ],"definition":"A seizure is an intermittent abnormality of nervous system physiology characterized by a transient occurrence of signs and/or symptoms due to abnormal excessive or synchronous neuronal activity in the brain" } ],"limit":3,"terms":"seizure","total":1,"hasMore":false,"nextPage":null,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Icd10
ICD-10-CM diagnosis codes — clinicaltables.nlm.nih.gov, direct JSON, no key. The service answers with a positional array and returns empty strings on a 200
/v1/health:clinical-tables/icd10Parameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: code, name. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: code, name. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: code, name. |
| codeField | string | query | The single field to report as each item's code. Allowed: code, name. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":3, "items": [ {"code":"E11.65","name":"Type 2 diabetes mellitus with hyperglycemia" }, {"code":"E11.9","name":"Type 2 diabetes mellitus without complications" }, {"code":"E11.21","name":"Type 2 diabetes mellitus with diabetic nephropathy" } ],"limit":3,"terms":"diabetes","total":87,"hasMore":true,"nextPage":2,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Icd11
ICD-11 codes — clinicaltables.nlm.nih.gov `icd11_codes`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/icd11Parameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: code, title, definition, type, chapter, entityId, source, indexTerm, browserUrl, parent. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: code, title, definition, type, chapter, entityId, source, indexTerm, browserUrl, parent. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: code, title, definition, type, chapter, entityId, source, indexTerm, browserUrl, parent. |
| codeField | string | query | The single field to report as each item's code. Allowed: code, title, definition, type, chapter, entityId, source, indexTerm, browserUrl, parent. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
| codeType | enum | query | Restrict to stem codes, extension codes, or both. Default category, which is both. One of stem, extension, category. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":3, "items": [ {"code":"5A10","title":"Type 1 diabetes mellitus","indexTerm":"Type 1 diabetes mellitus; IDDM - [insulin dependent diabetes mellitus]; T1DM - [type 1 diabetes mellitus]; idiopathic insulin-dependent diabetes mellitus without complications; juv…","definition":"Diabetes mellitus type 1 (type 1 diabetes, T1DM, formerly insulin dependent or juvenile diabetes) is a form of diabetes mellitus that results from destruction of insulin-producing …" }, {"code":"5A13","title":"Diabetes mellitus, other specified type","indexTerm":"Diabetes mellitus, other specified type; Other specified Diabetes mellitus, not Type 1 and not Type 2","definition":"Diabetes mellitus which cannot be classified as either Type 1 or Type 2 diabetes mellitus." }, {"code":"5A11","title":"Type 2 diabetes mellitus","indexTerm":"Type 2 diabetes mellitus; DM type II; DM2; Diabetic type 2; NIDDM - [non insulin dependent diabetes mellitus]; T2DM - [Type 2 diabetes mellitus]; Type II diabetes mellitus; adult o…","definition":"Diabetes mellitus type 2 (formerly noninsulin-dependent diabetes mellitus (NIDDM) or adult-onset diabetes) is a metabolic disorder that is characterised by high blood glucose in th…" } ],"limit":3,"terms":"diabetes","total":81,"hasMore":true,"nextPage":2,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Icd9 Dx
ICD-9-CM diagnosis codes — clinicaltables.nlm.nih.gov `icd9cm_dx`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/icd9-dxParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: code, code_dotted, short_name, long_name. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: code, code_dotted, short_name, long_name. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: code, code_dotted, short_name, long_name. |
| codeField | string | query | The single field to report as each item's code. Allowed: code, code_dotted, short_name, long_name. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":3, "items": [ {"code":"49390","shortName":"Asthma NOS","codeDotted":"493.90" }, {"code":"49300","shortName":"Extrinsic asthma NOS","codeDotted":"493.00" }, {"code":"49310","shortName":"Intrinsic asthma NOS","codeDotted":"493.10" } ],"limit":3,"terms":"asthma","total":12,"hasMore":true,"nextPage":2,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Icd9 Sg
ICD-9-CM procedure codes — clinicaltables.nlm.nih.gov `icd9cm_sg`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/icd9-sgParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: code, code_dotted, short_name, long_name. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: code, code_dotted, short_name, long_name. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: code, code_dotted, short_name, long_name. |
| codeField | string | query | The single field to report as each item's code. Allowed: code, code_dotted, short_name, long_name. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":3, "items": [ {"code":"4701","shortName":"Lap appendectomy","codeDotted":"47.01" }, {"code":"4709","shortName":"Other appendectomy","codeDotted":"47.09" }, {"code":"4711","shortName":"Lap incid appendectomy","codeDotted":"47.11" } ],"limit":3,"terms":"appendectomy","total":4,"hasMore":true,"nextPage":2,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Lab Codes
LOINC panels and forms — clinicaltables.nlm.nih.gov `loinc_items`, direct JSON. This is the panels-and-forms subset of LOINC, not the full six-axis lab table:
/v1/health:clinical-tables/lab-codesParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: text, LOINC_NUM, LONG_COMMON_NAME, COMPONENT, PROPERTY, RELATEDNAMES2, METHOD_TYP, SHORTNAME, CONSUMER_NAME, SURVEY_QUEST_TEXT, AnswerLists, units, datatype, isCopyrighted, containsCopyrighted, EXTERNAL_COPYRIGHT_NOTICE. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: text, LOINC_NUM, LONG_COMMON_NAME, COMPONENT, PROPERTY, RELATEDNAMES2, METHOD_TYP, SHORTNAME, CONSUMER_NAME, SURVEY_QUEST_TEXT, AnswerLists, units, datatype, isCopyrighted, containsCopyrighted, EXTERNAL_COPYRIGHT_NOTICE. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: text, LOINC_NUM, LONG_COMMON_NAME, COMPONENT, PROPERTY, RELATEDNAMES2, METHOD_TYP, SHORTNAME, CONSUMER_NAME, SURVEY_QUEST_TEXT, AnswerLists, units, datatype, isCopyrighted, containsCopyrighted, EXTERNAL_COPYRIGHT_NOTICE. |
| codeField | string | query | The single field to report as each item's code. Allowed: text, LOINC_NUM, LONG_COMMON_NAME, COMPONENT, PROPERTY, RELATEDNAMES2, METHOD_TYP, SHORTNAME, CONSUMER_NAME, SURVEY_QUEST_TEXT, AnswerLists, units, datatype, isCopyrighted, containsCopyrighted, EXTERNAL_COPYRIGHT_NOTICE. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
| type | enum | query | Restrict to questions, forms or panels. Default searches questions and panel names together. One of question, form, panel. |
| available | enum | query | With true, only forms whose definition the form-definition endpoint can return. One of true, false. |
| excludeCopyrighted | enum | query | With true, drop items that are copyrighted or carry a copyrighted item. Default false. One of true, false. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":3, "items": [ {"code":"101652-6","text":"Somatotropin & glucose post glucose stimulation panel","loincNum":"101652-6","relatednames2":"After; CHEMISTRY.CHALLENGE TESTING; GH; GH + Glc pst Glc stim pnl; Glu; Glu tol; Gluc; Glucose tolerance; Glucoseur; Growth hormone; GTT; HGH; Human growth hormone; Pan; PANEL.CHAL…","longCommonName":"Somatotropin and glucose post glucose stimulation panel - Serum or Plasma" }, {"code":"43151-0","text":"Glucose meter device panel","loincNum":"43151-0","relatednames2":"Glu; Gluc; Glucose Meter Device Pnl; Glucoseur; Pan; Panel.devices; Panl; Pnl; Point in time; Random","longCommonName":"Glucose meter device panel" }, {"code":"74790-7","text":"Glucose challenge panel","loincNum":"74790-7","relatednames2":"Breath; CHEMISTRY.CHALLENGE TESTING; ExG; Exhaled gas; Exhaled gas (=breath); Gases; Glu; Glu tol; Gluc; Glucose HBT; Glucose HBT Pnl; Glucose tolerance; Glucoseur; GTT; Pan; PANEL…","longCommonName":"Glucose challenge (hydrogen breath test) panel - Exhaled gas" } ],"limit":3,"terms":"glucose","total":33,"hasMore":true,"nextPage":2,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Procedures
Procedure names — clinicaltables.nlm.nih.gov `procedures`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/proceduresParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: primary_name, consumer_name, key_id, term_icd9_code, term_icd9_text, word_synonyms, synonyms, info_link_data. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: primary_name, consumer_name, key_id, term_icd9_code, term_icd9_text, word_synonyms, synonyms, info_link_data. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: primary_name, consumer_name, key_id, term_icd9_code, term_icd9_text, word_synonyms, synonyms, info_link_data. |
| codeField | string | query | The single field to report as each item's code. Allowed: primary_name, consumer_name, key_id, term_icd9_code, term_icd9_text, word_synonyms, synonyms, info_link_data. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":1, "items": [ {"code":"377","keyId":"377", "synonyms": [ "appy" ],"primaryName":"Appendectomy","consumerName":"Appendectomy" } ],"limit":3,"terms":"appendectomy","total":1,"hasMore":false,"nextPage":null,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Providers Individual
NPI registry — individual providers — clinicaltables.nlm.nih.gov `npi_idv`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/providers-individualParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: NPI, provider_type, gender, name, name.full, name.last, name.first, name.middle, name.credential, name.prefix, name.suffix, addr_practice, addr_practice.full, addr_practice.line1, addr_practice.line2, addr_practice.city, addr_practice.state, addr_practice.zip, addr_practice.phone, addr_practice.fax, addr_practice.country, addr_mailing, addr_mailing.full, addr_mailing.line1, addr_mailing.line2, addr_mailing.city, addr_mailing.state, addr_mailing.zip, addr_mailing.phone, addr_mailing.fax, addr_mailing.country, name_other, name_other.full, name_other.last, name_other.first, name_other.middle, name_other.credential, name_other.prefix, name_other.suffix, licenses, licenses.taxonomy, licenses.taxonomy.code, licenses.taxonomy.grouping, licenses.taxonomy.classification, licenses.taxonomy.specialization, licenses.medicare, licenses.medicare.spc_code, licenses.medicare.type, other_ids, other_ids.id, other_ids.type, other_ids.issuer, other_ids.state, misc, misc.auth_official, misc.replacement_NPI, misc.EIN, misc.enumeration_date, misc.last_update_date, misc.is_sole_proprietor, misc.is_org_subpart, misc.parent_LBN, misc.parent_TIN. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: NPI, provider_type, gender, name, name.full, name.last, name.first, name.middle, name.credential, name.prefix, name.suffix, addr_practice, addr_practice.full, addr_practice.line1, addr_practice.line2, addr_practice.city, addr_practice.state, addr_practice.zip, addr_practice.phone, addr_practice.fax, addr_practice.country, addr_mailing, addr_mailing.full, addr_mailing.line1, addr_mailing.line2, addr_mailing.city, addr_mailing.state, addr_mailing.zip, addr_mailing.phone, addr_mailing.fax, addr_mailing.country, name_other, name_other.full, name_other.last, name_other.first, name_other.middle, name_other.credential, name_other.prefix, name_other.suffix, licenses, licenses.taxonomy, licenses.taxonomy.code, licenses.taxonomy.grouping, licenses.taxonomy.classification, licenses.taxonomy.specialization, licenses.medicare, licenses.medicare.spc_code, licenses.medicare.type, other_ids, other_ids.id, other_ids.type, other_ids.issuer, other_ids.state, misc, misc.auth_official, misc.replacement_NPI, misc.EIN, misc.enumeration_date, misc.last_update_date, misc.is_sole_proprietor, misc.is_org_subpart, misc.parent_LBN, misc.parent_TIN. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: NPI, provider_type, gender, name, name.full, name.last, name.first, name.middle, name.credential, name.prefix, name.suffix, addr_practice, addr_practice.full, addr_practice.line1, addr_practice.line2, addr_practice.city, addr_practice.state, addr_practice.zip, addr_practice.phone, addr_practice.fax, addr_practice.country, addr_mailing, addr_mailing.full, addr_mailing.line1, addr_mailing.line2, addr_mailing.city, addr_mailing.state, addr_mailing.zip, addr_mailing.phone, addr_mailing.fax, addr_mailing.country, name_other, name_other.full, name_other.last, name_other.first, name_other.middle, name_other.credential, name_other.prefix, name_other.suffix, licenses, licenses.taxonomy, licenses.taxonomy.code, licenses.taxonomy.grouping, licenses.taxonomy.classification, licenses.taxonomy.specialization, licenses.medicare, licenses.medicare.spc_code, licenses.medicare.type, other_ids, other_ids.id, other_ids.type, other_ids.issuer, other_ids.state, misc, misc.auth_official, misc.replacement_NPI, misc.EIN, misc.enumeration_date, misc.last_update_date, misc.is_sole_proprietor, misc.is_org_subpart, misc.parent_LBN, misc.parent_TIN. |
| codeField | string | query | The single field to report as each item's code. Allowed: NPI, provider_type, gender, name, name.full, name.last, name.first, name.middle, name.credential, name.prefix, name.suffix, addr_practice, addr_practice.full, addr_practice.line1, addr_practice.line2, addr_practice.city, addr_practice.state, addr_practice.zip, addr_practice.phone, addr_practice.fax, addr_practice.country, addr_mailing, addr_mailing.full, addr_mailing.line1, addr_mailing.line2, addr_mailing.city, addr_mailing.state, addr_mailing.zip, addr_mailing.phone, addr_mailing.fax, addr_mailing.country, name_other, name_other.full, name_other.last, name_other.first, name_other.middle, name_other.credential, name_other.prefix, name_other.suffix, licenses, licenses.taxonomy, licenses.taxonomy.code, licenses.taxonomy.grouping, licenses.taxonomy.classification, licenses.taxonomy.specialization, licenses.medicare, licenses.medicare.spc_code, licenses.medicare.type, other_ids, other_ids.id, other_ids.type, other_ids.issuer, other_ids.state, misc, misc.auth_official, misc.replacement_NPI, misc.EIN, misc.enumeration_date, misc.last_update_date, misc.is_sole_proprietor, misc.is_org_subpart, misc.parent_LBN, misc.parent_TIN. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":0,"items":[],"limit":3,"terms":"john smith","total":0,"hasMore":false,"nextPage":null,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Providers Organisation
NPI registry — organisation providers — clinicaltables.nlm.nih.gov `npi_org`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/providers-organisationParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: NPI, provider_type, name, name.full, name.last, name.first, name.middle, name.credential, name.prefix, name.suffix, addr_practice, addr_practice.full, addr_practice.line1, addr_practice.line2, addr_practice.city, addr_practice.state, addr_practice.zip, addr_practice.phone, addr_practice.fax, addr_practice.country, addr_mailing, addr_mailing.full, addr_mailing.line1, addr_mailing.line2, addr_mailing.city, addr_mailing.state, addr_mailing.zip, addr_mailing.phone, addr_mailing.fax, addr_mailing.country, name_other, name_other.full, name_other.last, name_other.first, name_other.middle, name_other.credential, name_other.prefix, name_other.suffix, licenses, licenses.taxonomy, licenses.taxonomy.code, licenses.taxonomy.grouping, licenses.taxonomy.classification, licenses.taxonomy.specialization, licenses.medicare, licenses.medicare.spc_code, licenses.medicare.type, other_ids, other_ids.id, other_ids.type, other_ids.issuer, other_ids.state, misc, misc.auth_official, misc.replacement_NPI, misc.EIN, misc.enumeration_date, misc.last_update_date, misc.is_sole_proprietor, misc.is_org_subpart, misc.parent_LBN, misc.parent_TIN. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: NPI, provider_type, name, name.full, name.last, name.first, name.middle, name.credential, name.prefix, name.suffix, addr_practice, addr_practice.full, addr_practice.line1, addr_practice.line2, addr_practice.city, addr_practice.state, addr_practice.zip, addr_practice.phone, addr_practice.fax, addr_practice.country, addr_mailing, addr_mailing.full, addr_mailing.line1, addr_mailing.line2, addr_mailing.city, addr_mailing.state, addr_mailing.zip, addr_mailing.phone, addr_mailing.fax, addr_mailing.country, name_other, name_other.full, name_other.last, name_other.first, name_other.middle, name_other.credential, name_other.prefix, name_other.suffix, licenses, licenses.taxonomy, licenses.taxonomy.code, licenses.taxonomy.grouping, licenses.taxonomy.classification, licenses.taxonomy.specialization, licenses.medicare, licenses.medicare.spc_code, licenses.medicare.type, other_ids, other_ids.id, other_ids.type, other_ids.issuer, other_ids.state, misc, misc.auth_official, misc.replacement_NPI, misc.EIN, misc.enumeration_date, misc.last_update_date, misc.is_sole_proprietor, misc.is_org_subpart, misc.parent_LBN, misc.parent_TIN. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: NPI, provider_type, name, name.full, name.last, name.first, name.middle, name.credential, name.prefix, name.suffix, addr_practice, addr_practice.full, addr_practice.line1, addr_practice.line2, addr_practice.city, addr_practice.state, addr_practice.zip, addr_practice.phone, addr_practice.fax, addr_practice.country, addr_mailing, addr_mailing.full, addr_mailing.line1, addr_mailing.line2, addr_mailing.city, addr_mailing.state, addr_mailing.zip, addr_mailing.phone, addr_mailing.fax, addr_mailing.country, name_other, name_other.full, name_other.last, name_other.first, name_other.middle, name_other.credential, name_other.prefix, name_other.suffix, licenses, licenses.taxonomy, licenses.taxonomy.code, licenses.taxonomy.grouping, licenses.taxonomy.classification, licenses.taxonomy.specialization, licenses.medicare, licenses.medicare.spc_code, licenses.medicare.type, other_ids, other_ids.id, other_ids.type, other_ids.issuer, other_ids.state, misc, misc.auth_official, misc.replacement_NPI, misc.EIN, misc.enumeration_date, misc.last_update_date, misc.is_sole_proprietor, misc.is_org_subpart, misc.parent_LBN, misc.parent_TIN. |
| codeField | string | query | The single field to report as each item's code. Allowed: NPI, provider_type, name, name.full, name.last, name.first, name.middle, name.credential, name.prefix, name.suffix, addr_practice, addr_practice.full, addr_practice.line1, addr_practice.line2, addr_practice.city, addr_practice.state, addr_practice.zip, addr_practice.phone, addr_practice.fax, addr_practice.country, addr_mailing, addr_mailing.full, addr_mailing.line1, addr_mailing.line2, addr_mailing.city, addr_mailing.state, addr_mailing.zip, addr_mailing.phone, addr_mailing.fax, addr_mailing.country, name_other, name_other.full, name_other.last, name_other.first, name_other.middle, name_other.credential, name_other.prefix, name_other.suffix, licenses, licenses.taxonomy, licenses.taxonomy.code, licenses.taxonomy.grouping, licenses.taxonomy.classification, licenses.taxonomy.specialization, licenses.medicare, licenses.medicare.spc_code, licenses.medicare.type, other_ids, other_ids.id, other_ids.type, other_ids.issuer, other_ids.state, misc, misc.auth_official, misc.replacement_NPI, misc.EIN, misc.enumeration_date, misc.last_update_date, misc.is_sole_proprietor, misc.is_org_subpart, misc.parent_LBN, misc.parent_TIN. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":3, "items": [ {"npi":"1821205840","code":"1821205840", "name": {"full":"HOSPITAL" },"nameFull":"HOSPITAL", "addrPractice": {"zip":"75115","city":"DESOTO","full":"605 AUSTIN DR, DESOTO, TX 75115","zip4":"6605","line1":"605 AUSTIN DR","phone":"(972) 230-0854","state":"TX","country":"US" },"providerType":"Hospital-General" }, {"npi":"1922162403","code":"1922162403", "name": {"full":"INNOVA HOSPITAL HOUSTON LP DBA INNOVA HOSPITAL HOUSTON" },"nameFull":"INNOVA HOSPITAL HOUSTON LP DBA INNOVA HOSPITAL HOUSTON", "addrPractice": {"zip":"77004","city":"HOUSTON","full":"2001 HERMANN DR, HOUSTON, TX 77004","zip4":"7321","line1":"2001 HERMANN DR","phone":"(713) 358-5300","state":"TX","country":"US" },"providerType":"Hospital-General" } ],"limit":3,"terms":"hospital","total":5386,"hasMore":true,"nextPage":2,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Refseqs
RefSeq transcript accessions — clinicaltables.nlm.nih.gov `refseqs`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/refseqsParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: RefSeq, gene, NP_RefSeq, NC_RefSeq. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: RefSeq, gene, NP_RefSeq, NC_RefSeq. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: RefSeq, gene, NP_RefSeq, NC_RefSeq. |
| codeField | string | query | The single field to report as each item's code. Allowed: RefSeq, gene, NP_RefSeq, NC_RefSeq. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":3, "items": [ {"code":"NM_007300.3","gene":"BRCA1","refSeq":"NM_007300.3","npRefSeq":"NP_009231.2" }, {"code":"NR_027676.1","gene":"BRCA1","refSeq":"NR_027676.1" }, {"code":"NM_007294.3","gene":"BRCA1","refSeq":"NM_007294.3","npRefSeq":"NP_009225.1" } ],"limit":3,"terms":"BRCA1","total":11,"hasMore":true,"nextPage":2,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Search
Generic Clinical Table Search — one grammar over all 22 keyless NLM tables. The escape hatch for the per-table endpoints: a table added upstream is reachable here without a new handler.
/v1/health:clinical-tables/searchParameters
| Name | Type | In | Description |
|---|---|---|---|
| table | enum | query | The NLM clinical table to search. One of conditions, cosmic_struct, cytogenetic_locs, dbvar, disease_names, drug_ingredients, hcpcs, hpo, icd10cm, icd11_codes, icd9cm_dx, icd9cm_sg, loinc_items, ncbi_genes, npi_idv, npi_org, procedures, refseqs, rxterms, snps, star_alleles, ucum. Required. |
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Each table has its own field list, and a name outside it is rejected rather than passed on. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. |
| searchFields | string | query | Comma-separated fields the search text is matched against. |
| codeField | string | query | The single field to report as each item's code. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
| type | enum | query | loinc_items only. Restrict to questions, forms or panels. One of question, form, panel. |
| available | enum | query | loinc_items only. With true, only forms whose definition this service can return. One of true, false. |
| excludeCopyrighted | enum | query | loinc_items only. With true, drop copyrighted items. Default false. One of true, false. |
| codeType | enum | query | icd11_codes only. Restrict to stem codes, extension codes, or both. One of stem, extension, category. |
| genomeBuild | enum | query | cosmic_struct only. GRCh human genome build the coordinates refer to. One of 37, 38. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":10, "items": [ {"code":"E23.2","name":"Diabetes insipidus" }, {"code":"N25.1","name":"Nephrogenic diabetes insipidus" }, {"code":"P70.2","name":"Neonatal diabetes mellitus" }, {"code":"O24.92","name":"Unspecified diabetes mellitus in childbirth" }, {"code":"Z83.3","name":"Family history of diabetes mellitus" }, {"code":"Z86.32","name":"Personal history of gestational diabetes" }, {"code":"E10.65","name":"Type 1 diabetes mellitus with hyperglycemia" }, {"code":"E10.9","name":"Type 1 diabetes mellitus without complications" } ],"limit":10,"table":"icd10cm","terms":"diabetes","total":481,"hasMore":true,"nextPage":2,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Snps
dbSNP reference SNPs — clinicaltables.nlm.nih.gov `snps`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/snpsParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: rsNum, 38.alleles, 38.chr, 38.pos, 38.gene, 38.assembly, 38.seqID, 37.alleles, 37.chr, 37.pos, 37.gene, 37.assembly, 37.seqID. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: rsNum, 38.alleles, 38.chr, 38.pos, 38.gene, 38.assembly, 38.seqID, 37.alleles, 37.chr, 37.pos, 37.gene, 37.assembly, 37.seqID. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: rsNum, 38.alleles, 38.chr, 38.pos, 38.gene, 38.assembly, 38.seqID, 37.alleles, 37.chr, 37.pos, 37.gene, 37.assembly, 37.seqID. |
| codeField | string | query | The single field to report as each item's code. Allowed: rsNum, 38.alleles, 38.chr, 38.pos, 38.gene, 38.assembly, 38.seqID, 37.alleles, 37.chr, 37.pos, 37.gene, 37.assembly, 37.seqID. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":3, "items": [ {"code":"rs1000","chr38":"6","pos38":"32186117","rsNum":"rs1000" }, {"code":"rs1000000629","chr38":"6","pos38":"33235706","rsNum":"rs1000000629" }, {"code":"rs1000001594","chr38":"6","pos38":"33021616","rsNum":"rs1000001594" } ],"limit":3,"terms":"rs1000","total":10000,"hasMore":true,"nextPage":2,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Star Alleles
Pharmacogenomic star alleles — clinicaltables.nlm.nih.gov `star_alleles`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/star-allelesParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: StarAlleleName, GenBank, ProteinAffected, cDNANucleotideChanges, GeneNucleotideChange, XbaIHaplotype, RFLP, OtherNames, ProteinChange, InVivoEnzymeActivity, InVitroEnzymeActivity, References, ClinicalPhenotype, Notes. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: StarAlleleName, GenBank, ProteinAffected, cDNANucleotideChanges, GeneNucleotideChange, XbaIHaplotype, RFLP, OtherNames, ProteinChange, InVivoEnzymeActivity, InVitroEnzymeActivity, References, ClinicalPhenotype, Notes. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: StarAlleleName, GenBank, ProteinAffected, cDNANucleotideChanges, GeneNucleotideChange, XbaIHaplotype, RFLP, OtherNames, ProteinChange, InVivoEnzymeActivity, InVitroEnzymeActivity, References, ClinicalPhenotype, Notes. |
| codeField | string | query | The single field to report as each item's code. Allowed: StarAlleleName, GenBank, ProteinAffected, cDNANucleotideChanges, GeneNucleotideChange, XbaIHaplotype, RFLP, OtherNames, ProteinChange, InVivoEnzymeActivity, InVitroEnzymeActivity, References, ClinicalPhenotype, Notes. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":3, "items": [ {"code":"CYP2D6*18","otherNames":"CYP2D6(J9)","xbaIHaplotype":"29","starAlleleName":"CYP2D6*18" }, {"code":"CYP2D6*1A","genBank":"M33388.1","otherNames":"Wild-type","xbaIHaplotype":"29","starAlleleName":"CYP2D6*1A" }, {"code":"CYP2D6*1B","genBank":"M33388.1","xbaIHaplotype":"29","starAlleleName":"CYP2D6*1B" } ],"limit":3,"terms":"CYP2D6","total":168,"hasMore":true,"nextPage":2,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Units
UCUM units of measure — clinicaltables.nlm.nih.gov `ucum`, direct JSON, no key. The service answers with a positional array [total, codes, extra, displayRows]
/v1/health:clinical-tables/unitsParameters
| Name | Type | In | Description |
|---|---|---|---|
| terms | string | query | Search text. Several partial words are combined with an implicit AND. Required. |
| page | number | query | Page number. Default 1. |
| limit | number | query | Items per page. Default 10, max 500. Page times limit may not exceed 7500. |
| fields | string | query | Comma-separated fields returned as display strings. Allowed: cs_code, name, category, synonyms, loinc_property, guidance, source, is_simple, cs_code_tokens. |
| extraFields | string | query | Comma-separated fields returned with their native types, so objects and arrays stay structured. Accepts field:alias. Allowed: cs_code, name, category, synonyms, loinc_property, guidance, source, is_simple, cs_code_tokens. |
| searchFields | string | query | Comma-separated fields the search text is matched against. Allowed: cs_code, name, category, synonyms, loinc_property, guidance, source, is_simple, cs_code_tokens. |
| codeField | string | query | The single field to report as each item's code. Allowed: cs_code, name, category, synonyms, loinc_property, guidance, source, is_simple, cs_code_tokens. |
| filter | string | query | Elasticsearch query-string filter applied on top of the search text. It is not wildcarded automatically. |
Example response
{"project":"health:clinical-tables", "data": {"page":1,"count":1, "items": [ {"code":"mg","name":"milligram","csCode":"mg","category":"Clinical","synonyms":"milligrams","csCodeTokens":"mg" } ],"limit":3,"terms":"mg","total":1,"hasMore":false,"nextPage":null,"provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Try it
Live request with your key
const data = await client.run( "health:clinical-tables", "answer-list", { loincNum: "45592-3" });
Clinical Tables
NLM Clinical Table Search Service — 22 keyless code systems including LOINC, ICD-10-CM, ICD-11, RxTerms, HPO, HCPCS, NPI, UCUM and genomics tables.
LOINC answer list for one question code — clinicaltables.nlm.nih.gov, direct JSON. Sits outside the /api/<table>/v3/search grammar: its own path, one code in,
/v1/…clinical-tables/answer-listTry it
Parameters
loincNum
string · query · required
LOINC code of the question whose answer list to return.
Example response
{"project":"health:clinical-tables", "data": {"count":7, "items": [ {"code":"LA12637-7","text":"Independent - no help or staff oversight at any time","sequence":1 }, {"code":"LA12638-5","text":"Supervision - oversight, encouragement or cueing","sequence":2 }, {"code":"LA12639-3","text":"Limited assistance - resident highly involved in activity; staff provide guided maneuvering of limbs or other non-weight-bearing assistance","sequence":3 }, {"code":"LA12640-1","text":"Extensive assistance - resident involved in activity, staff provide weight-bearing support","sequence":4 }, {"code":"LA12641-9","text":"Total dependence - full staff performance every time during entire 7-day period","sequence":5 }, {"code":"LA12642-7","text":"Activity occurred only once or twice - activity did occur but only once or twice","sequence":6 }, {"code":"LA18614-0","text":"Activity did not occur - activity did not occur or family and/or non-facility staff provided care 100% of the time for that activity over the entire 7-day period","sequence":7 } ],"loincNum":"45592-3","provider":"clinical-tables" },"timestamp":"2026-08-30T00:49:28Z"}
Errors
- 401Missing or invalid x-api-key
- 404Not found or private
- 429Rate limit or monthly quota reached
Code
const data = await client.run( "health:clinical-tables", "answer-list", { loincNum: "45592-3" });