API & webhooks

API-first, because configuration belongs wherever your customers are.

Everything in the Cadxor app is available through a versioned REST API: evaluate a configuration, create and submit it, follow the job, download outputs and react to events with signed webhooks.

Example

Validate and price in one call.

# cURL
curl https://api.cadxor.com/api/v1/configurations/evaluate \
  -H "Authorization: Bearer $CADXOR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"family_id":"fam_…","customer_id":"cus_…",
       "values":{"components":{"left":"cmp_…","center":"cmp_…","right":"cmp_…"},
                 "length":40,"length_units":"in","material":"304SS",
                 "finish":"mill","quantity":4}}'
# Python (standard library)
import json, os, urllib.request
req = urllib.request.Request(
    "https://api.cadxor.com/api/v1/configurations",
    data=json.dumps(payload).encode(), method="POST",
    headers={"Authorization": f"Bearer {os.environ['CADXOR_API_KEY']}",
             "Content-Type": "application/json"})
cfg = json.load(urllib.request.urlopen(req))
// JavaScript
const r = await fetch(`${base}/api/v1/configurations/${id}/submit`, {
  method: "POST", headers: { Authorization: `Bearer ${key}` } });
const cfg = await r.json(); // cfg.status → "approval_pending" | "generation_running"

Authentication

Scoped API keys (cx_live_…) sent as bearer tokens. Keys are hashed at rest, shown once, can expire, and can never carry more permissions than the person who created them. OAuth for partner apps is on the roadmap.

Webhooks

Subscribe HTTPS endpoints to configuration.submitted, approval.completed, job.completed, job.failed, quote.created, erp.sync.failed and more. Each delivery is signed (Cadxor-Signature: t=…,v1=HMAC-SHA256), carries an idempotency key, and retries with exponential backoff.

Versioned and documented

The OpenAPI 3.1 document is generated from the backend's own route table, so the reference cannot drift from the implementation.

Browse the reference

Embedded configurator SDK

A drop-in web component for your own website is on the roadmap. Today, the API and the same 3D viewer can be embedded directly.

See Cadxor with your own product family.

Bring one configurable product line. We will map its components and rules and show you the generated package.