---
title: "Validate Code"
method: GET
path: "/api/reference/validate-code/{code}"
tags: ["reference"]
---

# Validate Code

`GET /api/reference/validate-code/{code}`

## Request

- Base URL: `https://tradedashboard.eu` (the document declares no server; this is the origin it was published from)
- URL: `https://tradedashboard.eu/api/reference/validate-code/{code}`
- Auth: none declared

Validate and describe one or more Combined Nomenclature customs codes.

Single code: normalises loose input, resolves the hierarchy of description
levels in *lang*, and returns ``{code, levels, product_name,
has_subcodes}`` plus ``interpreted_from`` when the input was reformatted.
The synthetic 'TOTAL' aggregate short-circuits the nomenclature lookup.
Comma-separated input is treated as a batch (strict digits-only regex, at
most 50 codes) and returns ``{"results": [...]}``, each item a success
dict or ``{"code", "error": {"status", "detail"}}``.

Errors: 400 (malformed/too short), 404 (unknown code, with the nearest
valid parent), 503 (nomenclature service unavailable). A mostly-numeric
string over 12 digits with no commas is rejected as a likely pasted list.
Successful responses are day-cacheable.

## Path parameters

- `code` string, required

## Query parameters

- `lang` string

## Response `200`

Successful Response

- union
  - ValidateCodeResponse: GET /api/reference/validate-code/{code} — a validated CN code with its description hierarchy. Also one batch item's success shape.
    - `code` string, required
    - `levels` object[]
    - `product_name` string
    - `has_subcodes` boolean
    - `interpreted_from` string, nullable
  - ValidateCodeBatchResponse: The comma-separated batch path of validate-code: each item a success or an error.
    - `results` union[], required
      - union
        - ValidateCodeResponse: GET /api/reference/validate-code/{code} — a validated CN code with its description hierarchy. Also one batch item's success shape.
          - `code` string, required
          - `levels` object[]
          - `product_name` string
          - `has_subcodes` boolean
          - `interpreted_from` string, nullable
        - ValidateCodeError: One batch item's failure shape.
          - `code` string, required
          - `error` ValidateCodeErrorDetail, required
            - `status` integer, required
            - `detail` string, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/tradedashboard/apis/eu-trade-explorer.md) · [All operations](https://skmtc.dev/tradedashboard/apis/eu-trade-explorer/llms.txt) · [OpenAPI document](https://skmtc.dev/tradedashboard/apis/eu-trade-explorer/revisions/b9abc715a5c2?raw)
