Skip to main content

Digital Empire › API docs

Digital Empire portfolio API

v0 OpenAPI 3.1 contract for PixelProof, EntryProof, and TariffWatch endpoints. Machine-readable spec at /api/openapi.json. Agency-tier customers (M2, see PixelProof pricing) will get authenticated + higher-quota access; the v0 surface is public + rate-limited. PixelProof MCP scan_storefront is on this same spec (POST /api/mcp/pixelproof/scan_storefront) — it wraps POST /api/pixelproof/free-scan for cold callers. Do not send MCP traffic to the v1 bearer scan or the paid meta-monitor scanner. EntryProof MCP readiness_check is also here (POST /api/mcp/entryproof/readiness_check) — it wraps POST /api/cpsc/scan (computeReadinessScore). Do not send MCP traffic to the v1 GCC generate route. TariffWatch MCP duty_impact is also on this spec (POST /api/mcp/tariffwatch/duty_impact) — it wraps calculateDutyImpact in lib/tariffwatch/duty-impact (same engine as the duty-impact calculator). Do not send MCP traffic to the v1 bearer HTS lookup.

Contract stability (v0): Response shapes may change without a major-version bump until v1.0. Breaking changes are announced ahead of time on State of DTC Compliance 2026 and by email to every store owner with an active scan history.

Docs viewer not loading? The raw OpenAPI 3.1 spec is at /api/openapi.json -- paste it into editor.swagger.io or Postman.

v1 API (beta) — enterprise Bearer-token surface

The v0 spec above is public + rate-limited. The /api/v1/* surface below is Bearer-authenticated, stable-contract, and enterprise-ready. Contact support@enforceintel.com to request a beta API key. OpenAPI spec: /openapi.yaml (import into Postman). Cold / MCP storefront scans use the public scan_storefront operation on this yaml and on /api/openapi.json (wraps POST /api/pixelproof/free-scan) — not the Bearer scan below. Cold / MCP CPSC readiness checks use the public readiness_check operation (wraps POST /api/cpsc/scan) — not the Bearer GCC generate below. Cold / MCP duty-impact estimates use the public duty_impact operation (wraps calculateDutyImpact in lib/tariffwatch/duty-impact) — not the Bearer HTS lookup below.

Base URL: https://enforceintel.com
Auth: Authorization: Bearer de_<your key>
Rate limits: 100 requests/minute, 10,000 requests/day per key.
Content type: application/json requests + responses.
Errors: 401 missing/invalid key, 403 beta gate, 429 rate-limited, 5xx upstream failure.
How to get a key: the v1 surface is in closed beta. Email support@enforceintel.com with your company, use case, and expected volume. We currently issue keys to enterprise procurement + integration partners on a rolling waitlist.
POST/api/v1/tariffwatch/hts/lookupTariffWatch

TariffWatch HTS Lookup

Look up one or more 10-digit HTS codes against the BIS-14 Section 232 derivative list. Returns hit / in-scope / adjacent status per code.

Request body

{
  "codes": ["7601.10.6000", "7603.10.0000"]
}

Response (200)

{
  "results": [
    {
      "code": "7601.10.6000",
      "hit": true,
      "in_scope": true,
      "status": "hit",
      "adjacent_hits": []
    }
  ]
}

curl

curl -X POST 'https://enforceintel.com/api/v1/tariffwatch/hts/lookup' \
  -H 'Authorization: Bearer de_YOUR_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{ "codes": ["7601.10.6000", "7603.10.0000"] }'

Node.js (fetch)

const res = await fetch('https://enforceintel.com/api/v1/tariffwatch/hts/lookup', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer ' + process.env.DE_API_KEY,
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
  "codes": ["7601.10.6000", "7603.10.0000"]
})
});
const data = await res.json();
console.log(data);

Python (requests)

import os, requests

resp = requests.post(
    'https://enforceintel.com/api/v1/tariffwatch/hts/lookup',
    headers={
        'Authorization': f"Bearer {os.environ['DE_API_KEY']}",
        'Content-Type': 'application/json',
    },
    json={
  "codes": ["7601.10.6000", "7603.10.0000"]
},
    timeout=30,
)
resp.raise_for_status()
print(resp.json())
POST/api/v1/pixelproof/scanPixelProof

PixelProof Scan

Scan a Shopify storefront for legacy Meta Pixel / GA4 / GTM code drift. Returns severity-tagged findings.

Request body

{
  "url": "https://your-store.myshopify.com"
}

Response (200)

{
  "score": 87,
  "findings": [
    { "rule_id": "meta_pixel_legacy_call", "severity": "warn", "message": "..." }
  ],
  "severity_counts": { "info": 2, "warn": 1, "error": 0 }
}

curl

curl -X POST 'https://enforceintel.com/api/v1/pixelproof/scan' \
  -H 'Authorization: Bearer de_YOUR_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{ "url": "https://your-store.myshopify.com" }'

Node.js (fetch)

const res = await fetch('https://enforceintel.com/api/v1/pixelproof/scan', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer ' + process.env.DE_API_KEY,
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
  "url": "https://your-store.myshopify.com"
})
});
const data = await res.json();
console.log(data);

Python (requests)

import os, requests

resp = requests.post(
    'https://enforceintel.com/api/v1/pixelproof/scan',
    headers={
        'Authorization': f"Bearer {os.environ['DE_API_KEY']}",
        'Content-Type': 'application/json',
    },
    json={
  "url": "https://your-store.myshopify.com"
},
    timeout=30,
)
resp.raise_for_status()
print(resp.json())
POST/api/v1/entryproof/gcc/generateEntryProof

EntryProof GCC Generation

LOCKED CONTRACT STUB — always returns 403. EntryProof does not issue, sign, certify or file a GCC or CPC: under 16 CFR 1110 the certifier must be the manufacturer or the importer of record, which is you, not us. No EntryProof feature turns a lab report into a certificate. This path exists so the request shape stays frozen.

Request body

{
  "product_info": {
    "name": "Widget",
    "model": "W-100",
    "sku": "SKU-001",
    "date_of_manufacture": "2026-08-01",
    "place_of_manufacture": "Shenzhen, CN"
  },
  "manufacturer": {
    "name": "Acme Manufacturing Ltd",
    "address": "123 Factory Rd",
    "contact_email": "qa@acme.example"
  },
  "testing_lab": {
    "name": "CPSC-Accredited Lab, Inc.",
    "accreditation_id": "CPSC-LAB-4211",
    "test_date": "2026-07-15"
  },
  "cpsc_rules_cited": ["16 CFR 1303", "ASTM F963"]
}

Response (200)

{
  "error": "beta",
  "message": "This endpoint is a locked contract stub, not a live capability. EntryProof does not issue, sign, certify or file a GCC or CPC: under 16 CFR 1110 the certifier must be the manufacturer or importer of record, which is you, not us. There is no EntryProof feature, web or API, that turns a lab report into a certificate. What EntryProof does is score public product-listing readiness (see /cpsc-efile/checker).",
  "contact": "support@enforceintel.com"
}

curl

curl -X POST 'https://enforceintel.com/api/v1/entryproof/gcc/generate' \
  -H 'Authorization: Bearer de_YOUR_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{ "product_info": { "name": "Widget", "model": "W-100", "sku": "SKU-001", "date_of_manufacture": "2026-08-01", "place_of_manufacture": "Shenzhen, CN" }, "manufacturer": { "name": "Acme Manufacturing Ltd", "address": "123 Factory Rd", "contact_email": "qa@acme.example" }, "testing_lab": { "name": "CPSC-Accredited Lab, Inc.", "accreditation_id": "CPSC-LAB-4211", "test_date": "2026-07-15" }, "cpsc_rules_cited": ["16 CFR 1303", "ASTM F963"] }'

Node.js (fetch)

const res = await fetch('https://enforceintel.com/api/v1/entryproof/gcc/generate', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer ' + process.env.DE_API_KEY,
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
  "product_info": {
    "name": "Widget",
    "model": "W-100",
    "sku": "SKU-001",
    "date_of_manufacture": "2026-08-01",
    "place_of_manufacture": "Shenzhen, CN"
  },
  "manufacturer": {
    "name": "Acme Manufacturing Ltd",
    "address": "123 Factory Rd",
    "contact_email": "qa@acme.example"
  },
  "testing_lab": {
    "name": "CPSC-Accredited Lab, Inc.",
    "accreditation_id": "CPSC-LAB-4211",
    "test_date": "2026-07-15"
  },
  "cpsc_rules_cited": ["16 CFR 1303", "ASTM F963"]
})
});
const data = await res.json();
console.log(data);

Python (requests)

import os, requests

resp = requests.post(
    'https://enforceintel.com/api/v1/entryproof/gcc/generate',
    headers={
        'Authorization': f"Bearer {os.environ['DE_API_KEY']}",
        'Content-Type': 'application/json',
    },
    json={
  "product_info": {
    "name": "Widget",
    "model": "W-100",
    "sku": "SKU-001",
    "date_of_manufacture": "2026-08-01",
    "place_of_manufacture": "Shenzhen, CN"
  },
  "manufacturer": {
    "name": "Acme Manufacturing Ltd",
    "address": "123 Factory Rd",
    "contact_email": "qa@acme.example"
  },
  "testing_lab": {
    "name": "CPSC-Accredited Lab, Inc.",
    "accreditation_id": "CPSC-LAB-4211",
    "test_date": "2026-07-15"
  },
  "cpsc_rules_cited": ["16 CFR 1303", "ASTM F963"]
},
    timeout=30,
)
resp.raise_for_status()
print(resp.json())
Cookie settings