› compliance_grid.aiCOMPLIANCEGRIDGOV · COMPLIANCE · INTELLIGENCE
Available20 endpoints$0.05 per successful call

Export Compliance API

Navigate government regulations for cross-border shipping.

Base URL · https://api.compliancegrid.ai/v1/compliance
Screen a party · no signuplive data
This is a
Try or .

What it checks

The Export Compliance API helps businesses manage shipping compliance with prohibited goods screening, restricted party screening against the Consolidated Screening List, ownership screening (OFAC 50% rule and BIS Affiliates Rule), NDAA Section 889/5949 manufacturer screening, HS code classification, AI-assisted HS code lookup, commodity description guidance, export license and ITAR determination, and continuous watchlist monitoring.

  • Prohibited goods screening for 220+ countries
  • Restricted party screening against the Consolidated Screening List (OFAC SDN, BIS Entity List and other U.S. government lists); the list version and retrieval time are returned on every result
  • HS code classification that returns candidate codes with reasoning; always confirm the result with a licensed customs broker
  • AI-powered HS code lookup with keyword, fuzzy, and GPT-based classification
  • Commodity description guidance and scoring
  • Export license determination (EAR) with ITAR jurisdiction, USML and DDTC fields
  • Ownership screening: OFAC 50% rule and BIS Affiliates Rule over the ownership structure you supply
  • NDAA Section 889 / 5949 manufacturer screening, and part screening by manufacturer
  • Dual-use goods detection (EAR Part 744)
  • Free Trade Agreement (FTA) duty optimization
  • ECCN classification and Commerce Country Chart lookup
  • Continuous monitoring: re-screens watchlists when the screening list changes and sends signed webhooks
  • Stored screening history (GET /v1/screenings) with list version, score and reviewer decision

Endpoints

MethodPathWhat it does
POST/v1/compliance/prohibited-goodsScreen commodities for import/export prohibitions and restrictions by country.Docs
POST/v1/compliance/restricted-party-screeningScreen parties against the trade.gov Consolidated Screening List — 25,000+ entries from OFAC SDN, BIS Entity List, and 12+ other federal watchlists.Docs
POST/v1/compliance/hs-classificationClassify commodities into HS/tariff codes with duty rates, FTA eligibility, and ECCN determination.Docs
POST/v1/compliance/description-guidanceEvaluate commodity descriptions for customs compliance quality.Docs
POST/v1/compliance/export-licenseDetermine if an export license is required under EAR, ITAR, or OFAC regulations.Docs
POST/v1/compliance/hs-lookupLook up HS/HTS tariff codes by commodity description or HS code prefix using USITC database with AI-powered classification.Docs
POST/v1/compliance/ownership-screeningAggregates effective ownership through the structure you supply and screens every owner against the Consolidated Screening List. Reports the OFAC 50 Percent Rule (SDN owners) and the BIS Affiliates Rule (Entity List / MEU owners, with its current effective date). Ownership data is supplied by the caller.Docs
POST/v1/compliance/ndaa-screeningScreens manufacturers against the covered entities named in Section 889 (Huawei, ZTE, Hytera, Hikvision, Dahua) and Section 5949 (SMIC, YMTC, CXMT), with statutory citations and effective dates. Subsidiaries and affiliates are also covered by the statutes; the list is not exhaustive and NO_MATCH is not a compliance determination.Docs

Request and response

const API = "https://api.compliancegrid.ai";
const headers = { "x-api-key": process.env.CG_API_KEY!, "Content-Type": "application/json" };
const get = (path: string) => fetch(API + path, { headers }).then((r) => r.json());
const post = (path: string, body: unknown) => fetch(API + path, { method: "POST", headers, body: JSON.stringify(body) }).then((r) => r.json());

// Check a shipment for prohibitions and restrictions
const check = await post("/v1/compliance/prohibited-goods", {
  originCountry: "US",
  destinationCountry: "DE",
  commodityDescription: "Lithium batteries for consumer electronics",
  hsCode: "8507.60",
});
const ev = check.data.evaluation;
console.log(ev.riskLevel, ev.isProhibited, ev.isRestricted);
console.log(ev.restrictions);

// Screen parties against the U.S. restricted-party lists
const partyCheck = await post("/v1/compliance/restricted-party-screening", {
  parties: [
    { name: "Acme Global Trading", country: "DE", type: "CONSIGNEE" },
    { name: "Berlin Electronics GmbH", country: "DE", type: "END_USER" },
  ],
});
console.log(partyCheck.data.overallResult); // CLEAR or POTENTIAL_MATCH
Example response
{
  "id": "pg_abc123def456",
  "originCountry": "US",
  "destinationCountry": "DE",
  "commodityDescription": "Lithium batteries for consumer electronics",
  "hsCode": "8507.60",
  "evaluation": {
    "isProhibited": false,
    "isRestricted": true,
    "riskLevel": "HIGH",
    "prohibitions": [],
    "restrictions": [
      {
        "type": "IMPORT_RESTRICTION",
        "regulation": "CUSTOMS_RESTRICTED_IMPORT",
        "description": "lithium batteries require special permits/licenses for import into DE",
        "requiresLicense": true
      }
    ],
    "warnings": []
  },
  "regulatoryReferences": [],
  "evaluatedAt": "2026-02-17T19:00:00Z"
}

Good to know

  • A no-match result is a screening outcome. Record reviewer decisions on a stored screening so your audit trail shows who decided and why.
  • HS classification returns candidate codes with reasoning. Confirm with a licensed customs broker before filing.
  • Every response carries its source and the list version, so the result can go in your audit file.
  • The sandbox returns mock data and production returns live data. Build in the sandbox and switch your key to go live.

Pricing

$0.05per successful call
Only successful calls are billed. Volume discounts start at 10,001 calls a month, and the sandbox is free.See pricing and estimate your bill →