Mirakl Product Synchronization
Manually trigger a Mirakl CM21 product synchronization for a targeted list of products, without running a full import.
Introduction
The Mirakl Product Synchronization endpoint allows you to manually trigger a CM21 synchronization for a targeted list of products, without running a full import cycle.
This is useful when:
- A product is stuck in a desynchronized state and needs to be re-pushed to Mirakl.
- You need to verify that a specific product update has been correctly propagated.
- An incident requires a targeted resynchronization without impacting the entire catalog.
How it works
- Send a
POSTrequest with a list of products identified by theirmiraklProductIdandproductSku. - The system resolves which Mirakl client configuration to use:
- If
clientSpecificationIdis provided, that configuration is used directly. - If not provided and only one active Mirakl client exists, it is used automatically.
- If multiple active clients exist, a
400error is returned with the list of available IDs. - If no active Mirakl client is configured, a
400error is returned.
- If
- The CM21 synchronization is triggered for the specified products.
- The response confirms the number of synchronized products and the client configuration used.
API Reference
Endpoint: POST /v1/mapper/mirakl/product-synchronizations
operationId: ADM-MIRAKL-100
Access: Operator only (dj-client: OPERATOR)
| Header | Required | Description |
|---|---|---|
dj-client | Yes | Must be OPERATOR |
dj-api-key | Yes | API key |
Request body
| Field | Type | Required | Description |
|---|---|---|---|
clientSpecificationId | string (uuid) | No | ID of the Mirakl client configuration to use. If omitted, the system resolves it automatically. |
products | array | Yes | List of products to synchronize (min 1 element). |
products[].miraklProductId | string | Yes | Mirakl product identifier. |
products[].productSku | string | Yes | DJUST product SKU. |
Example request
{
"clientSpecificationId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"products": [
{
"miraklProductId": "MKL-001",
"productSku": "SKU-WIDGET-42"
},
{
"miraklProductId": "MKL-002",
"productSku": "SKU-GADGET-99"
}
]
}Response
| Field | Type | Description |
|---|---|---|
synchronizedProducts | integer | Number of products sent for synchronization. |
clientSpecificationId | string (uuid) | Mirakl client configuration that was used. |
Example response
{
"synchronizedProducts": 2,
"clientSpecificationId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}Error handling
| HTTP Code | Description |
|---|---|
400 | Validation error: empty product list, multiple active Mirakl clients without explicit clientSpecificationId, or no active Mirakl client configured. |
401 | Unauthorized — missing or invalid API key. |
403 | Forbidden — insufficient permissions. |
404 | Not found — the provided clientSpecificationId does not exist. |
Best practices
- Always provide
clientSpecificationIdexplicitly if your tenant has multiple active Mirakl client configurations. - Use this endpoint for targeted resynchronization only. For bulk catalog updates, use the standard import workflow.
- Monitor the response to confirm the number of products actually synchronized.
Updated 28 days ago
