POST
/
stores
/
{store_id}
/
menu
/
{
  "id": "<string>",
  "menu_name": "<string>",
  "store_id": "<string>",
  "is_default": true,
  "status": "<string>",
  "created_by_id": "<string>",
  "external_menu_id": "<string>",
  "createdAt": "<string>",
  "updatedAt": "<string>",
  "menu_hours": [
    {
      "id": "<string>",
      "day_of_week": 123,
      "open_time": "<string>",
      "close_time": "<string>",
      "is_closed": true,
      "menu_id": "<string>",
      "created_by_id": "<string>",
      "createdAt": "<string>",
      "updatedAt": "<string>"
    }
  ]
}
This endpoint creates a new menu for a store, allowing businesses to define multiple menus with different operating hours, status settings, and configurations.
Store menus define when and how products are available to customers. Each menu can have unique operating hours for different days of the week and can be set as default or specialized menus.

Path Parameters

store_id
string
required
The unique identifier of the store for which to create the menu

Request Body

menu_name
string
required
Display name for the menu (e.g., “Weekend Menu”, “Holiday Hours”)
is_default
boolean
required
Whether this menu should be the default menu for the store
status
string
required
Menu status: “active” or “inactive”
menu_hours
array
required
Array of operating hours for each day of the week

Request Example

{
    "menu_name": "menu-23",
    "is_default": false,
    "status": "active",
    "menu_hours": [
        {
            "day_of_week": 0,
            "open_time": "09:00",
            "close_time": "17:00",
            "is_closed": false
        },
        {
            "day_of_week": 1,
            "open_time": "09:00",
            "close_time": "17:00",
            "is_closed": false
        },
        {
            "day_of_week": 2,
            "open_time": "09:00",
            "close_time": "17:00",
            "is_closed": false
        },
        {
            "day_of_week": 3,
            "open_time": "09:00",
            "close_time": "17:00",
            "is_closed": false
        },
        {
            "day_of_week": 4,
            "open_time": "09:00",
            "close_time": "17:00",
            "is_closed": false
        },
        {
            "day_of_week": 5,
            "open_time": "09:00",
            "close_time": "17:00",
            "is_closed": false
        },
        {
            "day_of_week": 6,
            "open_time": "09:00",
            "close_time": "17:00",
            "is_closed": false
        }
    ]
}

Response

id
string
Unique identifier for the created menu
menu_name
string
Display name of the menu
store_id
string
Store identifier this menu belongs to
is_default
boolean
Whether this is the default menu for the store
status
string
Current menu status (ACTIVE/INACTIVE)
created_by_id
string
ID of the user who created the menu
external_menu_id
string
External system menu identifier (if applicable)
createdAt
string
Timestamp when the menu was created
updatedAt
string
Timestamp when the menu was last updated
menu_hours
array
Array of operating hours with complete configuration

Response Example

{
    "id": "d4710f37-0490-4c53-a553-a907f3d202c7",
    "menu_name": "menu-23",
    "store_id": "449235c1-3d04-4519-998b-40d2a621e5e0",
    "is_default": false,
    "status": "ACTIVE",
    "created_by_id": "1000418",
    "updatedAt": "2024-09-13T10:47:26.104Z",
    "createdAt": "2024-09-13T10:47:26.104Z",
    "external_menu_id": null,
    "created_by": null,
    "updated_by": null,
    "updated_by_id": null,
    "last_live_at": null,
    "archived_at": null,
    "deletedAt": null,
    "menu_hours": [
        {
            "id": "48a18cca-f744-427b-b1bd-9e8eff7b98b1",
            "day_of_week": 0,
            "open_time": "09:00",
            "close_time": "17:00",
            "is_closed": false,
            "menu_id": "d4710f37-0490-4c53-a553-a907f3d202c7",
            "created_by_id": "1000418",
            "updatedAt": "2024-09-13T10:47:26.114Z",
            "createdAt": "2024-09-13T10:47:26.114Z",
            "created_by": null,
            "updated_by": null,
            "updated_by_id": null,
            "deletedAt": null
        },
        {
            "id": "a26d4683-025d-4803-8e00-1efd4bdcc5d2",
            "day_of_week": 1,
            "open_time": "09:00",
            "close_time": "17:00",
            "is_closed": false,
            "menu_id": "d4710f37-0490-4c53-a553-a907f3d202c7",
            "created_by_id": "1000418",
            "updatedAt": "2024-09-13T10:47:26.114Z",
            "createdAt": "2024-09-13T10:47:26.114Z",
            "created_by": null,
            "updated_by": null,
            "updated_by_id": null,
            "deletedAt": null
        },
        {
            "id": "69655f6e-3485-47a3-bfad-cd105d5b2f03",
            "day_of_week": 2,
            "open_time": "09:00",
            "close_time": "17:00",
            "is_closed": false,
            "menu_id": "d4710f37-0490-4c53-a553-a907f3d202c7",
            "created_by_id": "1000418",
            "updatedAt": "2024-09-13T10:47:26.114Z",
            "createdAt": "2024-09-13T10:47:26.114Z",
            "created_by": null,
            "updated_by": null,
            "updated_by_id": null,
            "deletedAt": null
        },
        {
            "id": "66d2e767-fef4-4853-a7f8-4cb9ff1cf203",
            "day_of_week": 3,
            "open_time": "09:00",
            "close_time": "17:00",
            "is_closed": false,
            "menu_id": "d4710f37-0490-4c53-a553-a907f3d202c7",
            "created_by_id": "1000418",
            "updatedAt": "2024-09-13T10:47:26.187Z",
            "createdAt": "2024-09-13T10:47:26.187Z",
            "created_by": null,
            "updated_by": null,
            "updated_by_id": null,
            "deletedAt": null
        },
        {
            "id": "f0f02560-5de3-4bfe-9cc6-3c64d4fc065c",
            "day_of_week": 4,
            "open_time": "09:00",
            "close_time": "17:00",
            "is_closed": false,
            "menu_id": "d4710f37-0490-4c53-a553-a907f3d202c7",
            "created_by_id": "1000418",
            "updatedAt": "2024-09-13T10:47:26.187Z",
            "createdAt": "2024-09-13T10:47:26.187Z",
            "created_by": null,
            "updated_by": null,
            "updated_by_id": null,
            "deletedAt": null
        },
        {
            "id": "135b483c-88f5-46e4-8454-bec28f73957d",
            "day_of_week": 5,
            "open_time": "09:00",
            "close_time": "17:00",
            "is_closed": false,
            "menu_id": "d4710f37-0490-4c53-a553-a907f3d202c7",
            "created_by_id": "1000418",
            "updatedAt": "2024-09-13T10:47:26.187Z",
            "createdAt": "2024-09-13T10:47:26.187Z",
            "created_by": null,
            "updated_by": null,
            "updated_by_id": null,
            "deletedAt": null
        },
        {
            "id": "4dae188e-82b6-43ac-84f8-cbf9debcde93",
            "day_of_week": 6,
            "open_time": "09:00",
            "close_time": "17:00",
            "is_closed": false,
            "menu_id": "d4710f37-0490-4c53-a553-a907f3d202c7",
            "created_by_id": "1000418",
            "updatedAt": "2024-09-13T10:47:26.187Z",
            "createdAt": "2024-09-13T10:47:26.187Z",
            "created_by": null,
            "updated_by": null,
            "updated_by_id": null,
            "deletedAt": null
        }
    ]
}
Day of Week Values: Days are numbered 0-6 where 0 = Sunday, 1 = Monday, 2 = Tuesday, 3 = Wednesday, 4 = Thursday, 5 = Friday, 6 = Saturday.
Time Format: All times should be provided in 24-hour format (HH:MM) for consistency and to avoid AM/PM confusion.

Use Cases

Error Handling

Multiple Default Menus: Setting multiple menus as default for the same store may cause conflicts. Ensure only one menu per store is marked as default.