API Reference
EZY Integrations exposes a REST API for tenants who need to interact with the platform programmatically — for example, to trigger job runs from an external scheduler, push data in via webhook, or build custom dashboards that consume run history. All requests require a valid API key issued for your tenant.
Authentication
Section titled “Authentication”Every API request must include the API key in the Authorization header using the ApiKey scheme:
Authorization: ApiKey <your-api-key>API keys are tenant-scoped. A key issued to one tenant cannot access another tenant’s data. To create, rotate, or revoke API keys, see API Keys.
Interactive API explorer
Section titled “Interactive API explorer”A built-in interactive API reference is available in every running instance of EZY Integrations. Open it from your browser while the application is running — the exact path is shown in the application’s help or settings area. The explorer lets you try requests directly against the live API without writing code.
Endpoint groups
Section titled “Endpoint groups”The API is organized into the following groups. Each group supports standard CRUD operations and is scoped to your tenant.
| Group | What it manages |
|---|---|
| Connection Profiles | Create, read, update, delete, and test connection profiles for source and target systems. |
| Mapping Configurations | Manage the JSON mapping documents that control extraction, normalization, and transformation rules. |
| Instances | Create, read, update, activate, deactivate, and delete job instances. |
| Schedules | Create and manage cron-based schedules that trigger job runs automatically. |
| Sync Logs | Read run history, status, and per-entity error details. |
| Dead Letter Queue (DLQ) | List, inspect, replay, and discard failed messages. |
| Webhooks | Receive inbound data pushes from external systems (Shopify webhooks and generic payloads). |
| Sync Events | Trigger a job run programmatically and poll for its completion status. |
Inbound data push (webhook)
Section titled “Inbound data push (webhook)”External systems can push data directly into the integration pipeline without going through a scheduled poll. The platform validates the request, routes it to the correct pipeline, and processes the payload through the same five stages as a scheduled run.
The Shopify connector supports native webhook delivery (product updates, order creation, and similar events). For other systems, a generic inbound endpoint accepts arbitrary payloads and routes them to a job instance of your choosing.
See Tenant Onboarding for how to configure inbound webhook access.
Programmatic sync trigger
Section titled “Programmatic sync trigger”You can trigger a job run from an external system call rather than waiting for a schedule. After triggering, the response includes a correlation ID that you use to poll the Sync Events endpoint for the run’s completion status and counts (total records, success, failed, skipped).
This is useful for event-driven pipelines where an upstream system signals that new data is ready.
Pagination
Section titled “Pagination”List endpoints that can return many records support pagination. Requests accept page and pageSize query parameters. Responses include a total count so you can calculate the number of pages.
Optimistic concurrency (ETag)
Section titled “Optimistic concurrency (ETag)”Update and delete operations on configuration resources (connection profiles, instances, mapping configurations, schedules) use ETag-based optimistic concurrency. When you fetch a resource, the response includes an ETag header. You must include that value in the If-Match header of your update or delete request. If the resource was modified by another request between your read and your write, the server returns a 412 Precondition Failed response. Fetch the resource again to get the latest version and retry your update.
Related pages
Section titled “Related pages”- API Keys — How to create and manage API keys.
- Tenant Onboarding — First-time setup, including inbound webhook configuration.
- DLQ and Replay — How to use the DLQ endpoints or the UI.