CVX API
Look up CVX vaccine codes from the CDC.
Overview
CVX (Vaccine Administered) codes are maintained by the CDC and identify vaccines administered to patients. FHIRfly provides fast lookups against the CDC's CVX code set.
Endpoints
| Method | Path | Description |
|---|---|---|
| GET | /v1/cvx/:code |
Single CVX lookup |
| POST | /v1/cvx/_batch |
Batch lookup (up to 100) |
| GET | /v1/cvx/shapes |
List available response shapes |
Single Lookup
Look up COVID-19 Moderna vaccine
Request
Node.js
import { Fhirfly } from "@fhirfly-io/terminology";
const client = new Fhirfly({ apiKey: "YOUR_API_KEY" });
const result = await client.cvx.lookup("207");
console.log(result.data);Response
JSON
{
"data": {
"code": "207",
"code_system": "http://hl7.org/fhir/sid/cvx",
"display": "COVID-19, mRNA, LNP-S, PF, 100 mcg/0.5mL dose or 50 mcg/0.25mL dose",
"fhir_coding": {
"code": "207",
"display": "COVID-19, mRNA, LNP-S, PF, 100 mcg/0.5mL dose or 50 mcg/0.25mL dose",
"system": "http://hl7.org/fhir/sid/cvx"
},
"full_vaccine_name": "SARS-COV-2 (COVID-19) vaccine, mRNA, spike protein, LNP, preservative free, 100 mcg/0.5mL dose or 50 mcg/0.25mL dose",
"is_covid_vaccine": true,
"last_updated_by_cdc": "2023-10-24",
"notes": "Original monovalent Moderna adult vaccine. FDA rescinded all doses for US use 4/18/2023. Continue to used to record historic US Moderna vaccines and those administered in non-US locations (includes tradename Spikevax)",
"status": "inactive",
"vaccine_type": "mRNA"
},
"meta": {
"legal": {
"attribution_required": false,
"citation": "CDC National Center for Immunization and Respiratory Diseases. Accessed 2026-01-14 via FHIRfly.",
"license": "public_domain",
"source_name": "CDC Immunization"
}
}
}Common CVX Codes
| Code | Vaccine |
|---|---|
| 208 | Pfizer-BioNTech COVID-19 |
| 207 | Moderna COVID-19 |
| 140 | Influenza, seasonal |
| 03 | MMR |
| 21 | Varicella |
Batch Lookup
Look up multiple CVX codes in a single request (up to 100):
Look up multiple vaccines
Request
Node.js
import { Fhirfly } from "@fhirfly-io/terminology";
const client = new Fhirfly({ apiKey: "YOUR_API_KEY" });
const result = await client.cvx.lookupMany(["207","208","140"]);
console.log(result.data.results);Response
JSON
{
"count": 3,
"results": [
{
"input": "207",
"code": "207",
"status": "ok",
"data": {
"display": "COVID-19, mRNA, Moderna",
"status": "inactive"
}
},
{
"input": "208",
"code": "208",
"status": "ok",
"data": {
"display": "COVID-19, mRNA, Pfizer",
"status": "inactive"
}
},
{
"input": "140",
"code": "140",
"status": "ok",
"data": {
"display": "Influenza, seasonal, injectable",
"status": "active"
}
}
],
"meta": {
"legal": {
"license": "public_domain"
}
}
}Batch with shape=full
When using shape=full on batch requests, the response includes meta.source with provenance information:
POST /v1/cvx/_batch?shape=full
{
"count": 3,
"results": [
{
"input": "207",
"code": "207",
"status": "ok",
"data": { "display": "COVID-19, mRNA, Moderna", "status": "inactive" }
}
],
"meta": {
"source": {
"name": "CDC Immunization",
"url": "https://www2a.cdc.gov/vaccines/iis/iisstandards/vaccines.asp?rpt=cvx",
"version": "monthly",
"fhirfly_updated_at": "2026-03-01T03:00:00Z"
},
"legal": {
"license": "public_domain",
"attribution_required": false
}
}
}
Response Shapes
Control the level of detail in responses with the shape query parameter:
| Shape | Description |
|---|---|
compact |
Code, display, status |
standard |
+ full_vaccine_name, notes, vaccine_type, fhir_coding |
full |
+ ingest metadata |
# Minimal data
GET /v1/cvx/207?shape=compact
# Standard data (default)
GET /v1/cvx/207?shape=standard
# Full data with provenance
GET /v1/cvx/207?shape=full
See Response Shapes for field details.
Required Scopes
cvx.read- Single and batch lookups