Skip to content

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.

  • 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.

Each adapter publishes a per-entity read/write capability lane:

LaneMeaning
greenLive-verified against the real system — safe to push.
amberFixture-shaped / unpinned — needs the connection’s writes_enabled to push.
redNot 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.

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.

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.