# Clinical Tables API

> Clinical Tables API on Apizie: 23 endpoints (Conditions, Cytogenetic Locations, dbVar, Disease Names, …) returned as clean JSON through one API key. 23 endpoints are live now. Call it over REST at https://zieapi.vercel.app/v1/health:clinical-tables/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `health:clinical-tables`
- Category: Health
- Status: live
- Source: https://nlm.nih.gov
- Page: https://zieapi.vercel.app/api/health/clinical-tables
- OpenAPI: https://zieapi.vercel.app/api/health/clinical-tables/openapi.json

NLM Clinical Table Search Service: autocomplete-style lookups over ICD, LOINC, RxTerms, NPI, genes, variants and more.

## Endpoints

### Conditions
`GET https://zieapi.vercel.app/v1/health:clinical-tables/conditions`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### Cytogenetic Locations
`GET https://zieapi.vercel.app/v1/health:clinical-tables/cytogenetic-locations`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### dbVar
`GET https://zieapi.vercel.app/v1/health:clinical-tables/dbvar`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### Disease Names
`GET https://zieapi.vercel.app/v1/health:clinical-tables/disease-names`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### Drug Ingredients
`GET https://zieapi.vercel.app/v1/health:clinical-tables/drug-ingredients`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### Drugs (RxTerms)
`GET https://zieapi.vercel.app/v1/health:clinical-tables/drugs`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### LOINC Form Definition
`GET https://zieapi.vercel.app/v1/health:clinical-tables/form-definition`

| Parameter | Type | Required | Description |
|---|---|---|---|
| loincNum | string | yes |  |

### Genes
`GET https://zieapi.vercel.app/v1/health:clinical-tables/genes`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### HCPCS
`GET https://zieapi.vercel.app/v1/health:clinical-tables/hcpcs`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### HPO
`GET https://zieapi.vercel.app/v1/health:clinical-tables/hpo`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### ICD-10-CM
`GET https://zieapi.vercel.app/v1/health:clinical-tables/icd10`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### ICD-11
`GET https://zieapi.vercel.app/v1/health:clinical-tables/icd11`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### ICD-9-CM Diagnoses
`GET https://zieapi.vercel.app/v1/health:clinical-tables/icd9-dx`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### ICD-9-CM Procedures
`GET https://zieapi.vercel.app/v1/health:clinical-tables/icd9-sg`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### LOINC
`GET https://zieapi.vercel.app/v1/health:clinical-tables/lab-codes`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |
| type | string | no |  |
| available | string | no |  |
| excludeCopyrighted | string | no |  |

### Procedures
`GET https://zieapi.vercel.app/v1/health:clinical-tables/procedures`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### NPI Individuals
`GET https://zieapi.vercel.app/v1/health:clinical-tables/providers-individual`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### NPI Organizations
`GET https://zieapi.vercel.app/v1/health:clinical-tables/providers-organisation`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### RefSeqs
`GET https://zieapi.vercel.app/v1/health:clinical-tables/refseqs`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### Search Any Table
`GET https://zieapi.vercel.app/v1/health:clinical-tables/search`

| Parameter | Type | Required | Description |
|---|---|---|---|
| table | string | yes |  |
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |
| type | string | no |  |
| available | string | no |  |
| excludeCopyrighted | string | no |  |

### SNPs
`GET https://zieapi.vercel.app/v1/health:clinical-tables/snps`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### Star Alleles
`GET https://zieapi.vercel.app/v1/health:clinical-tables/star-alleles`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

### UCUM Units
`GET https://zieapi.vercel.app/v1/health:clinical-tables/units`

| Parameter | Type | Required | Description |
|---|---|---|---|
| terms | string | yes | Search text (prefix match) |
| page | integer | no | 1-based page number |
| limit | integer | no | Items per page |
| fields | string | no | Display fields (df), comma separated |
| extraFields | string | no | Extra fields returned per row (ef), comma separated |
| searchFields | string | no | Fields searched (sf), comma separated |
| codeField | string | no | Field used as the code (cf) |
| filter | string | no | Extra Elasticsearch-style query (q), e.g. field:value |

## Example
```
curl "https://zieapi.vercel.app/v1/health:clinical-tables/conditions" \
  -H "x-api-key: $APIZIE_KEY"
```

## FAQ

### How do I call the Clinical Tables API?
Create a free Apizie key, then send GET https://zieapi.vercel.app/v1/health:clinical-tables/conditions with the header x-api-key. Every endpoint returns { project, data, timestamp }.

### Is the Clinical Tables API free on Apizie?
Yes. The Free plan includes 1,000 requests a month at 100 requests a minute, no credit card.

### Can AI agents use the Clinical Tables API?
Yes. Add the Apizie MCP server (https://zieapi.vercel.app/mcp) to Claude, ChatGPT, Cursor or VS Code, then ask in plain language. The agent calls run_scraper with project key health:clinical-tables.

### What is the status of the Clinical Tables API?
Live: works with just an Apizie key
