Integration Instances
List Integrations (Picker)
List all available integrations and their connected instances. Powers the integration picker in the UI.
Create Integration Instance
Create a new integration instance.
Get Integration Instance
Get a single integration instance with its integration, store mappings, and warehouse location map.
Update Integration Instance
Update an integration instance. Settings are merged (not replaced) with existing settings.
Delete Integration Instance
Queue deletion of an integration instance. The actual deletion is handled asynchronously via the salesOrderProcessing queue.
Get Single Listing
Lookup a listing document in the sales channel. For Amazon: searches by seller_sku. For Shopify: by variant_id, sku, or id. For others: by sku or _id.
Delete Single Listing
Delete a single listing from the integration instance.
Download Listings from Channel
Queue a download of listings (products) from the sales channel.
Import Listing Mappings
Import listing mappings from a previously uploaded file. Dispatches an ImportListingMapping job.
Get Single Sales Channel Order
Get a single sales channel order with its linked SKU sales order.
Refresh Order from Sales Channel
Refresh a sales channel order with fresh data from the channel API, then reconcile the linked SKU sales order.
Download Orders from Channel
Queue a download of orders from the sales channel.
Archive Single Channel Order
Archive a single sales channel order.
Unarchive Single Channel Order
Unarchive a single sales channel order.
Preview Sync Inventory
Preview what inventory values would be synced to the sales channel before actually syncing.
Store Mapped Warehouse Locations
Save Shopify location to warehouse mappings for an integration instance.
Update Sync Controls
Apply a granular, direction- and entity-aware sync-controls update for a channel integration instance. Replaces the overloaded `is_automatic_sync_enabled` boolean with per-capability toggles.
Pause Sync Schedule
Pause the integration instance's automatic sync schedule. Sets `schedule_state` to `paused`, which short-circuits all scheduled inbound pulls, inbound webhook processing, and outbound submissions, and flips the derived `is_automatic_sync_enabled` flag to false. Per-capability toggles are preserved so resuming restores the prior configuration.
Resume Sync Schedule
Resume the integration instance's automatic sync schedule. Sets `schedule_state` to `active`, re-enabling scheduled sync and flipping the derived `is_automatic_sync_enabled` flag back to true. Per-capability toggles set before pausing are restored unchanged.
List Instances
List every Magento 2 IntegrationInstance in your tenant. Returns the same shape as `Show` but as a collection. Sorted by instance name ascending. No pagination at Phase 1 — most tenants have a handful of instances.
Get Instance
Retrieve a single Magento 2 IntegrationInstance by ID. The route is scoped to this tenant's Magento 2 instances; IDs that belong to other integration types or other tenants return `404`.
Update Instance
Partial update — every field is `sometimes`. `connection_settings` and `integration_settings` are deep-merged with the existing values, so rotating just the access_token does NOT wipe the base_url. Top-level scalars like `name`, `country`, and `is_automatic_sync_enabled` overwrite directly.
Delete Instance
Permanently delete the IntegrationInstance and its linked SalesChannel, data-import mapping, and API logs. Subsequent phases will extend this to also clean up Magento2Order / Magento2Product rows.