Open ticket from your ERP
POST /tickets with device_id + summary + priority. Returns ticket URL + ETA. Wire into SAP B1, NetSuite, or your custom system in an afternoon.
POST /ticketsPOST /tickets with device_id + summary + priority. Returns ticket URL + ETA. Wire into SAP B1, NetSuite, or your custom system in an afternoon.
POST /ticketsGET /sla?from=&to=&device= for ticket history with response/resolve times. Snowflake/PowerBI/Tableau-ready JSON.
GET /slaTicket opened, tech dispatched, SLA at risk, ticket closed. Push to your Slack, Teams, or PagerDuty. No polling, no missed events.
EVENTS · SIGNEDLive page counts, supply levels, error states via streaming endpoint or hourly bulk export. Build your own dashboards if ours isn't enough.
STREAM · BULKPer-user tokens with read/write scopes. Revoke from dashboard without breaking other integrations. Audit log of every API call.
OAUTH 2 · AUDITEDIdentical API surface in /sandbox with synthetic data. Build your integration safely, promote to prod when ready. Same docs, same SDK.
SANDBOX FIRSTEHR detects 'printer offline' → webhook to XPro → ticket opened → tech dispatched. Zero human steps between alert and rolling truck.
Daily extract of pages/cost per device → BI tool → leadership dashboard. They see print costs alongside fuel and labor — finally apples-to-apples.
When a guest-facing printer goes offline, webhook posts to #ops-front-desk with the ETA. Manager knows before the desk clerk calls.