Connectors
Connectors
Section titled “Connectors”Atlas connects to the systems print shops already run and normalizes them onto the canonical model. A connector (adapter) declares, per canonical entity, what it can read and write — so the integration surface is explicit, never guessed.
Supported systems
Section titled “Supported systems”- MIS / ERP: NetSuite, Microsoft Dynamics, Amtech, Cerm, LabelTraxx, PrintEps, plus a generic MIS adapter for everything else.
- 3PL / fulfilment: outbound shipment systems.
- Print-floor interchange: JDF job tickets and JMF messages, received and emitted — the dialect quirks of Esko Automation Engine, HYBRID Cloudflow, and the MIS normalized onto one model.
Atlas augments your existing automation (Esko AE / HYBRID Cloudflow); it does not replace it.
Capability lanes
Section titled “Capability lanes”Each adapter publishes a per-entity read/write capability lane:
| Lane | Meaning |
|---|---|
green | Live-verified against the real system — safe to push. |
amber | Fixture-shaped / unpinned — needs the connection’s writes_enabled to push. |
red | Not implemented — a write attempt is refused (409). |
The lane vocabulary is the source of truth for what a connector can do. The write-back path reads it to decide whether a source’s lane is green before pushing.
The adapter manifest
Section titled “The adapter manifest”GET /v1/adapters returns the connector capability surface:
{ "adapters": [ { "system": "tharstern", "vendor": "Tharstern", "transports": ["rest", "jmf"], "authKinds": ["api_key"], "entities": { "order": { "read": "green", "write": "amber" }, "customer": { "read": "green", "write": "red" } }, "notes": ["…"] } ]}transports— how the adapter talks to the system (REST, JDF/JMF, …).authKinds— the auth mechanisms the adapter supports.entities— the read/write lane per canonical entity.
Adding a connector
Section titled “Adding a connector”A new system is added by writing an adapter that maps its dialect onto the canonical event envelope (inbound) and the write-back contract (outbound) — not by reshaping the canonical model. Field-level differences between shops are handled by tenant-defined mappings, so the same adapter serves many tenants.