/v1/codes/resolveResolve 1 to 100 codes in one request, which counts as one against your allowance. Results keep your order and duplicates, and each one is compact: call CODE-LOOKUP for a result’s full profile.
AuthorizationstringRequiredBearer token with your API key. Keep the key server-side.
Idempotency-KeystringOptionalMakes a retry count once. 8 to 128 letters, digits and . _ : / + -, starting with a letter or digit. For 24 hours the key is bound to your workspace and the exact request; reusing it for different work is refused with 409.
Send the fields as a JSON body.
codesarray of stringRequiredat least 1 item · at most 100 items1 to 100 codes, each any code CODE-LOOKUP accepts. Results keep their order and duplicates. An empty list, an empty string or an item over 512 characters is 400; more than 100 is 413. Any other code gets its own row.
A list of CodeResolution objects, one per result; page metadata is in meta. Optional fields are left out when empty; a few return null for unknown, as their sentences say. Dates are YYYY-MM-DD and times ISO 8601 UTC.
codestringRequiredThe code exactly as you sent it, untrimmed.
code_typestringOptionalWhat the code is: ndc, barcode, rxcui, unii, set_id or application.
outcomestringRequiredWhat the code names, as CODE-LOOKUP reports it, plus ambiguous, not_found, unrecognized, unavailable, historical (a retired RxCUI with no single successor), unresolved (an RxCUI or UNII with no drug) and unsupported (an RxCUI that is not a drug) in place of an error. A package NDC that several products carry is products.
reasonstringOptionalWhy a row is unavailable: package_matches_exceed_limit (a package NDC in more than 1000 catalog rows), product_labels_exceed_limit (a product NDC on more than 64 labels) or product_list_exceeds_limit (the batch’s product lists passed 5,000 catalog rows; send that code alone). Only that row is affected.
productProductSummaryOptionalThe product summary when the code names one product.
package_ndcstringOptionalThe package NDC when the code names a package.
drugCodeDrugOptionalThe drug’s RxCUI and preferred name when the code names a drug. A redirected row always has it: the successor.
rxcuistringOptionalFor an NDC DailyMed no longer lists but RxNorm does: the RxCUI it names.
ingredient_ndcIngredientNdcOptionalFor an NDC neither DailyMed nor RxNorm lists: the ingredient it belongs to, not a product.
product_ndcsarray of stringOptionalThe product NDCs when the code names several products, or the products an ambiguous code could be, in ascending order, at most 25.
more_productsbooleanOptionalTrue when more products than those listed may carry the code.
candidate_rxcuisarray of stringOptionalThe RxCUIs to choose from when the code is ambiguous or retired with no single successor, including a code whose layouts reach different RxNorm concepts or clinical profiles. A redirected row lists its one successor. An ambiguous row always has this or product_ndcs, never both.
Errors and limits lists every code and the limits behind them.