# Menu Synchronization Task Completion Notification

The **Menu Synchronization** API operates asynchronously. When Keeta's platform receives a synchronization request, it creates an internal task for processing. Upon task completion (success or failure), Keeta will notify developers via this webhook.
**Event ID:** 1202

Endpoint: POST menuSynchronizationTaskCompletionWebhook
Version: v.1.0.0

## Request fields (application/json):

  - `shopId` (integer, required)
    Unique identifier of the Keeta store.
    Example: 25381

  - `taskId` (integer, required)
    Due to this being an asynchronous task, when Keeta platform receives the request, it cannot complete the task immediately. Keeta platform will submit a task to run in the internal system, and this field represents the unique ID of that task.
    Example: 897354

  - `pictureTaskId` (integer)
    The task ID of the image sync task within the current menu sync task. This field is null when there is no image sync task.
    Example: 266675845

  - `errorSpuDTOList` (array)
    This field represents detailed information about the product list that failed menu synchronization.

  - `errorSpuDTOList.id` (integer)
    Example: 123

  - `errorSpuDTOList.name` (string)
    Example: banana tea

  - `errorSpuDTOList.code` (integer)
    Example: 199999

  - `errorSpuDTOList.message` (string)
    Example: error message info

  - `errorSpuDTOList.openItemCode` (string)
    Example: y123456

## Response 200:

  - `200` (unknown)
    Request executed successfully

## Response 200 fields (application/json):

  - `code` (integer, required)
    A numeric status identifier indicating the result of the interface call, used to determine whether the operation executed successfully.
    Example: 0

  - `message` (string, required)
    Text description corresponding to the status code, explaining the operation result or error cause to users.
    Example: Success

