Tariff Code Classification

Version v2
Classifications
CreateHSClassificationRequest
GetHSClassification
HSCodeValidationRequest
HSCodeVerificationRequest
NomenclatureChangeWebhook
WebhookCallback

ClassificationResult

Parameters
idOptional
string
activityOptional
string
Enum: hsFull, hs6, export, eccn, coo
countryOfDestinationOptional
string

Present for hsFull / hs6.

countryOfExportOptional
string

Present for export and for eccn. An ECCN result is keyed by the exporting country — countryOfExport selects the control list, so it identifies the result the way countryOfDestination does for hsFull, and the composite id carries it as the trailing country segment (e.g. 2-1000-1651708-WRENCH-10MM-ECCN-DE). Null when the request carried no item.

countryOfOriginOptional
string

Present for coo — the resolved ISO-2 country of origin. Null on a POST response (the classifier has not run; item.countryOfOrigin is only an input hint); populated on GET once classified.

enrichmentsOptional
array
classificationModifiersOptional
ClassificationModifiers
statusOptional
string
Enum: pending, classified, rejected, cannotBeClassified
hsCodeOptional
string

Never present for eccn. An export-control result must not carry an HS code — the underlying record can hold one (mixed request, reclassify, pre-existing value) and surfacing it here would present tariff data as the ECCN answer.

eccnCodeOptional
string

Export-control code (e.g. 5A001.a) for eccn results, in place of hsCode.

Null on a POST response. ECCN is managed-only with no auto-classifier, so no code exists at submission time — an ECCN POST result carries no code in either field, the same as coo. Fetch the classification by id once it has been worked; GET .../classifications/{id} fills this in from the item's eccn_code parameter.

gradeOptional
string

Raw auto prediction grade returned for autoPro and autoEssentials HS results.

Enum: LOW, MID, HIGH
confidenceOptional
string

Present when the HS code came from the request's hsCodeTest override.

Enum: test
verifyResultOptional
string
Enum: accepted, rejected
providedHsCodeOptional
string
messageOptional
string
justificationOptional
string

Natural-language justification for this per-COD classification, containing HS4 Reasoning, HS6 Reasoning and Full HS Reasoning sections.

Present on the create (POST) response when the classification was produced synchronously by a classifier that returns a justification — in practice the ICP-backed auto tiers. autoPro is routed to the HS-hints API, which cannot produce one, so its justification is generated later by the workflow engine instead.

Once produced the value is persisted, so it is also returned by GET /classifications/{classificationId}.

complianceOptional
array

Per-COD compliance payload returned by the Quoting service. Populated only when compliance is in classifications and an HS code is available for the COD (auto path: Indix prediction; managed path: caller-supplied providedHsCodes). Mutually exclusive with complianceError. Item shape mirrors com.avalara.xb.classification.views.Compliance (Quoting response).

complianceErrorOptional

Set when the unify compliance gate skipped the Quoting call because the item is missing a field Quoting requires (today: countryOfExport). Wire shape is identical to Quoting's own ValueRequiredError payload ({ details: [{ code, number, message, description, helpLink, severity }] }). Mutually exclusive with compliance; the classification itself is unaffected.

errorOptional
Error