Compliance
Base URL: https://app.trymaglev.com/api/v1. All endpoint families.
POST /compliance/path
Section titled “POST /compliance/path”Return a product-specific planning table of possible certification requirements and an optional draft explanation.
Required scope: compliance:read.
Authentication: bearer key.
| Field | Type | Required | Details |
|---|---|---|---|
product |
string | Yes | Min length 2. Max length 400 |
markets |
string[] | No | Max items 10. Default: [“US”] |
radios |
string[] | No | Max items 10 |
moduleIsPreCertified |
boolean,null | No | |
battery |
string | No | One of: none, liion_contained, liion_pack, other. Default: “none” |
mainsPowered |
boolean | No | |
laser |
boolean | No | |
childrensProduct |
boolean | No | |
medical |
boolean | No | |
explain |
boolean | No | Request an optional generated explanation of the deterministic table. |
200 response schema
{ "type": "object", "properties": { "requirements": { "type": "array", "items": { "type": "object", "properties": { "mark": { "type": "string" }, "market": { "type": "string" }, "applies": { "type": "string", "enum": [ "yes", "likely", "confirm" ] }, "path": { "type": "string" }, "costUsdLow": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "costUsdHigh": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "weeksLow": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "weeksHigh": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "basis": { "type": "string" }, "responsibleParty": { "type": "string" } }, "required": [ "mark", "market", "applies", "path", "costUsdLow", "costUsdHigh", "weeksLow", "weeksHigh", "basis", "responsibleParty" ] } }, "notes": { "type": "array", "items": { "type": "string" } }, "explanation": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "explanationNote": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "draft": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "note": { "type": "string" }, "requestId": { "type": "string" } }, "required": [ "requirements", "notes", "explanation", "explanationNote", "draft", "note", "requestId" ]}Errors: 400 Validation error; 401 Missing or invalid key; 403 Scope or mode does not allow this; 404 Not found; 429 Rate limit reached. See recovery guidance.
POST /compliance/hts-candidates
Section titled “POST /compliance/hts-candidates”Return candidate tariff headings with reasoning and sources. No final classification is selected.
Required scope: compliance:read.
Authentication: bearer key.
| Field | Type | Required | Details |
|---|---|---|---|
product |
string | Yes | Min length 2. Max length 200 |
description |
string | Yes | Min length 2. Max length 2000 |
materials |
string | No | Max length 400 |
function |
string | No | Max length 400 |
200 response schema
{ "type": "object", "properties": { "categoriesMatched": { "type": "array", "items": { "type": "string" } }, "candidates": { "type": "array", "items": { "type": "object", "properties": { "code": { "type": "string" }, "description": { "type": "string" }, "reasoning": { "type": "string" }, "mfnRatePct": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "section301": { "anyOf": [ {}, { "type": "null" } ] }, "sources": { "type": "array", "items": { "type": "string" } }, "confidence": { "type": "string", "const": "candidate" } }, "required": [ "code", "description", "reasoning", "mfnRatePct", "section301", "sources", "confidence" ] } }, "notes": { "type": "array", "items": { "type": "string" } }, "chosen": { "type": "null" }, "note": { "type": "string" }, "requestId": { "type": "string" } }, "required": [ "categoriesMatched", "candidates", "notes", "chosen", "note", "requestId" ]}Errors: 400 Validation error; 401 Missing or invalid key; 403 Scope or mode does not allow this; 404 Not found; 429 Rate limit reached. See recovery guidance.