openapi: 3.2.0
info:
description: '{% partial file="/partial-content/connector/operator/shopify/app-operator-shopify/rest/public/openapi-description.md" /%}'
title: Shopify Operator Connector Synchronization API
version: ''
servers:
- description: Shopify production endpoint.
url: https://operator-shpy.mirakl.net
tags:
- name: Synchronization
paths:
/api/sync/taxonomy:
post:
description: '> ⚠️ **Content-length header**
>
> The Content-Length header must be present with value 0, even when there is no request body.
Description
Synchronize categories and attributes from Shopify to Mirakl. This operation is asynchronous.
Call Frequency
Recommended usage:
- When you are required to synchronize your taxonomy
Maximum usage:
- You can run only one taxonomy synchronization at a time
'
operationId: SyncCatalogStructure
parameters: []
responses:
'202':
description: A taxonomy synchronization task has been created.
'425':
description: A taxonomy synchronization task is already running. Please wait for the task to complete before starting a new one.
summary: SyncCatalogStructure - Synchronize your Shopify catalog structure to Mirakl
tags:
- Synchronization
/api/sync/deleted-mirakl-products:
post:
description: 'Description
Deletes third-party (3P) products from Shopify that have been deleted in Mirakl. This operation also cleans up the middleware by deleting the corresponding product bindings for both third-party (3P) and first-party (1P) products. The operation is asynchronous and scheduled to run periodically, so manual triggering is typically not required.
Call Frequency
Recommended usage:
- Only when you need to trigger the synchronization manually.
Maximum usage:
- You can run only one Mirakl deleted products synchronization at a time
'
operationId: SyncDeletedMiraklProducts
parameters: []
requestBody:
content:
application/json:
examples:
application/json-0:
summary: Example with business values for synchronization using since date from configuration (application/json)
value: {}
application/json-1:
summary: Example with business values for full synchronization (application/json)
value:
sinceDate: null
application/json-2:
summary: Example with business values for synchronization using defined since date (application/json)
value:
sinceDate: '2025-08-01T00:00:00Z'
application/json-auto:
summary: Complete example with value types (application/json)
value:
deletedSince: '2023-03-28T09:34:42Z'
schema:
$ref: '#/components/schemas/SyncDeletedMiraklProducts_Request'
responses:
'202':
description: A deleted Mirakl products synchronization to Shopify has successfully been scheduled.
'425':
description: A deleted Mirakl products synchronization to Shopify task is already running. Please wait for the task to complete before starting a new one.
summary: SyncDeletedMiraklProducts - Synchronize deleted products from Mirakl to Shopify
tags:
- Synchronization
/api/sync/product-shopify-to-mirakl:
post:
description: 'Description
Synchronize products from Shopify to Mirakl. This operation is asynchronous.
Call Frequency
Recommended usage:
- When you are required to manually run the synchronization
Maximum usage:
- You can run only one synchronization at a time
'
operationId: SyncFirstPartyProducts
parameters: []
requestBody:
content:
application/json:
examples:
application/json-0:
summary: Example with business values for synchronization using since date from configuration (application/json)
value: {}
application/json-1:
summary: Example with business values for full synchronization (application/json)
value:
sinceDate: null
application/json-2:
summary: Example with business values for synchronization using defined since date (application/json)
value:
sinceDate: '2024-01-01T00:00:00Z'
application/json-auto:
summary: Complete example with value types (application/json)
value:
sinceDate: '2023-03-28T09:34:42Z'
schema:
$ref: '#/components/schemas/SyncFirstPartyProducts_Request'
responses:
'202':
description: A product synchronization from Shopify to Mirak has successfully been scheduled.
'425':
description: A product synchronization from Shopify to Mirakl task is already running. Please wait for the task to complete before starting a new one.
summary: SyncFirstPartyProducts - Synchronize first-party products from Shopify to Mirakl
tags:
- Synchronization
/api/sync/offer-conditions:
post:
description: '> ⚠️ **Content-length header**
>
> The Content-Length header must be present with value 0, even when there is no request body.
Description
Synchronizes offer conditions from Mirakl to Shopify.
Call Frequency
Recommended usage:
- When you need to synchronize offer conditions
'
operationId: SyncOfferConditions
parameters: []
responses:
'200':
description: Synchronization completed successfully
'400':
description: One or more offer conditions could not be synchronized
summary: SyncOfferConditions - Synchronize offer conditions from Mirakl to Shopify
tags:
- Synchronization
/api/sync/offers:
post:
description: 'Description
Import offers from Mirakl into Shopify. This operation is asynchronous and is scheduled to run periodically, so in most cases, you don''t need to trigger it manually.
Call Frequency
Recommended usage:
- Only when you need to trigger the import manually.
Maximum usage:
- You can run only one offer synchronization at a time
'
operationId: SyncOffers
parameters: []
requestBody:
content:
application/json:
examples:
application/json-1:
summary: Example with business values for full synchronization (application/json)
value:
sinceDate: null
application/json-2:
summary: Example with business values for synchronization using defined since date (application/json)
value:
sinceDate: '2024-01-01T00:00:00Z'
application/json-auto:
summary: Complete example with value types (application/json)
value:
sinceDate: '2023-03-28T09:34:42Z'
schema:
$ref: '#/components/schemas/SyncOffers_Request'
responses:
'202':
description: An offer synchronization task has been created.
'425':
description: An offer synchronization task is already running. Please wait for the task to complete before starting a new one.
summary: SyncOffers - Sync Offers
tags:
- Synchronization
/api/sync/orders:
post:
description: 'Description
Synchronize orders between Mirakl and Shopify. This operation is asynchronous.
Call Frequency
Recommended usage:
- When you are required to synchronize your orders
Maximum usage:
- You can run only one order synchronization at a time
'
operationId: SyncOrders
parameters: []
requestBody:
content:
application/json:
examples:
application/json-0:
summary: Example with business values for synchronization using since date from configuration (application/json)
value: {}
application/json-1:
summary: Example with business values for full synchronization (application/json)
value:
sinceDate: null
application/json-2:
summary: Example with business values for synchronization using defined since date (application/json)
value:
sinceDate: '2024-01-01T00:00:00Z'
application/json-auto:
summary: Complete example with value types (application/json)
value:
sinceDate: '2023-03-28T09:34:42Z'
schema:
$ref: '#/components/schemas/SyncOrders_Request'
responses:
'202':
description: An order synchronization task has been created.
'425':
description: An order synchronization task is already running. Please wait for the task to complete before starting a new one.
summary: SyncOrders - Synchronize orders between Mirakl and Shopify
tags:
- Synchronization
/api/sync/promotions:
post:
description: 'Description
Sync Mirakl promotions (PR01) into Shopify metaobjects and code discounts. This operation is asynchronous.
Call Frequency
Recommended usage:
- Only when you need to trigger the import manually.
Maximum usage:
- You can run only one promotion synchronization at a time
'
operationId: SyncPromotions
parameters: []
requestBody:
content:
application/json:
examples:
application/json-0:
summary: Example with business values (application/json)
value:
sinceDate: '2024-01-01T00:00:00Z'
application/json-auto:
summary: Complete example with value types (application/json)
value:
sinceDate: '2023-03-28T09:34:42Z'
schema:
$ref: '#/components/schemas/SyncPromotions_Request'
responses:
'202':
description: A promotion synchronization task has been created.
'425':
description: A promotion synchronization task is already running. Please wait for the task to complete before starting a new one.
summary: SyncPromotions - Synchronize promotions from Mirakl to Shopify
tags:
- Synchronization
/api/sync/returns:
post:
description: 'Description
Synchronizes returns from Mirakl to Shopify. This operation is asynchronous.
Call Frequency
Recommended usage:
- When you want to synchronizes returns on demand
Maximum usage:
- You can run only one return synchronization at a time
'
operationId: SyncReturns
parameters: []
requestBody:
content:
application/json:
examples:
application/json-0:
summary: Example with business values for synchronization using since date from configuration (application/json)
value: {}
application/json-1:
summary: Example with business values for full synchronization (application/json)
value:
sinceDate: null
application/json-2:
summary: Example with business values for synchronization using defined since date (application/json)
value:
sinceDate: '2024-01-01T00:00:00Z'
application/json-auto:
summary: Complete example with value types (application/json)
value:
sinceDate: '2023-03-28T09:34:42Z'
schema:
$ref: '#/components/schemas/SyncReturns_Request'
responses:
'202':
description: A return synchronization has successfully been scheduled.
'425':
description: A return synchronization task is already running.
summary: SyncReturns - Synchronize returns from Mirakl to Shopify
tags:
- Synchronization
/api/sync/shipment-mirakl-to-shopify:
post:
description: 'Description
Synchronize shipments from Mirakl to Shopify. This operation is asynchronous.
Call Frequency
Recommended usage:
- When you are required to synchronize your shipments
Maximum usage:
- You can run only one shipment synchronization at a time
'
operationId: SyncShipments
parameters: []
requestBody:
content:
application/json:
examples:
application/json-0:
summary: Example with business values for synchronization using since date from configuration (application/json)
value: {}
application/json-1:
summary: Example with business values for full synchronization (application/json)
value:
sinceDate: null
application/json-2:
summary: Example with business values for synchronization using defined since date (application/json)
value:
sinceDate: '2024-01-01T00:00:00Z'
application/json-auto:
summary: Complete example with value types (application/json)
value:
sinceDate: '2023-03-28T09:34:42Z'
schema:
$ref: '#/components/schemas/SyncShipments_Request'
responses:
'202':
description: An order synchronization task has been created.
'425':
description: An order synchronization task is already running. Please wait for the task to complete before starting a new one.
summary: SyncShipments - Synchronize shipments from Mirakl to Shopify
tags:
- Synchronization
/api/sync/shops:
post:
description: 'Description
Synchronizes shops from Mirakl to Shopify. This operation is asynchronous.
Call Frequency
Recommended usage:
- When you want to synchronizes shops on demand
Maximum usage:
- You can run only one shop synchronization at a time
'
operationId: SyncShops
parameters: []
requestBody:
content:
application/json:
examples:
application/json-0:
summary: Example with business values for synchronization using since date from configuration (application/json)
value: {}
application/json-1:
summary: Example with business values for full synchronization (application/json)
value:
sinceDate: null
application/json-2:
summary: Example with business values for synchronization using defined since date (application/json)
value:
sinceDate: '2024-01-01T00:00:00Z'
application/json-auto:
summary: Complete example with value types (application/json)
value:
sinceDate: '2023-03-28T09:34:42Z'
schema:
$ref: '#/components/schemas/SyncShops_Request'
responses:
'202':
description: A shop synchronization has successfully been scheduled.
'425':
description: A shop synchronization task is already running.
summary: SyncShops - Synchronize shops from Mirakl to Shopify
tags:
- Synchronization
/api/sync/product-mirakl-to-shopify:
post:
description: 'Description
Import products from Mirakl into Shopify. This operation is asynchronous and is scheduled to run periodically, so in most cases, you don''t need to trigger it manually.
Call Frequency
Recommended usage:
- Only when you need to trigger the import manually.
Maximum usage:
- You can run only one product synchronization at a time
'
operationId: SyncThirdPartyProducts
parameters: []
requestBody:
content:
application/json:
examples:
application/json-0:
summary: Example with business values for synchronization using since date from configuration (application/json)
value: {}
application/json-1:
summary: Example with business values for full synchronization (application/json)
value:
sinceDate: null
application/json-2:
summary: Example with business values for synchronization using defined since date (application/json)
value:
sinceDate: '2024-01-01T00:00:00Z'
application/json-auto:
summary: Complete example with value types (application/json)
value:
sinceDate: '2023-03-28T09:34:42Z'
schema:
$ref: '#/components/schemas/SyncThirdPartyProducts_Request'
responses:
'202':
description: A product synchronization from Mirakl to Shopify has successfully been scheduled.
'425':
description: A product synchronization from Mirakl to Shopify task is already running. Please wait for the task to complete before starting a new one.
summary: SyncThirdPartyProducts - Synchronize third-party products from Mirakl to Shopify
tags:
- Synchronization
components:
schemas:
SyncFirstPartyProducts_Request:
type: object
description: Request object to update Shopify to Mirakl product synchronization since date
properties:
sinceDate:
type: string
format: date-time
description: Timestamp of the last product synchronization
SyncShops_Request:
type: object
description: Request object for shop synchronization from Shopify to Mirakl
properties:
sinceDate:
type: string
format: date-time
description: 'Date threshold: only syncs shops modified after this date'
SyncThirdPartyProducts_Request:
type: object
description: Request object holding the parameters for the product import
properties:
sinceDate:
type: string
format: date-time
description: Timestamp of the last product import into Shopify
SyncOrders_Request:
type: object
description: Request object to update order synchronization since date
properties:
sinceDate:
type: string
format: date-time
description: Timestamp of the last order synchronization
SyncDeletedMiraklProducts_Request:
type: object
description: Request object holding the parameters for the deleted Mirakl product synchronization request
properties:
deletedSince:
type: string
format: date-time
description: Sync Mirakl deleted products to Shopify since this date
SyncPromotions_Request:
type: object
description: Request object to update promotion synchronization since date
properties:
sinceDate:
type: string
format: date-time
description: Timestamp of the last promotion synchronization
SyncShipments_Request:
type: object
description: Request object to update Mirakl to Shopify shipment synchronization since date
properties:
sinceDate:
type: string
format: date-time
description: Timestamp of the last shipment synchronization
SyncReturns_Request:
type: object
description: Request object for return synchronization from Shopify to Mirakl
properties:
sinceDate:
type: string
format: date-time
description: 'Date threshold: only syncs returns modified after this date'
SyncOffers_Request:
type: object
description: Request object holding the parameters for the offer import
properties:
sinceDate:
type: string
format: date-time
description: Timestamp of the last offer import into Shopify
securitySchemes:
Bearer:
bearerFormat: JWT
scheme: bearer
type: http
x-group-parameters: true