Neavents SmartMenu API (v1.0.0)

Download OpenAPI specification:Download

A comprehensive API for the Neavents SmartMenu feature.

SmartMenu

Core operations for managing SmartMenus.

Create a new SmartMenu

Request Body schema: application/json
ownerId
string <ulid>
rootAggregateType
string (RootAggregateType)
Enum: "Venue" "Event" "User"
name
string
description
string

Responses

Request samples

Content type
application/json
{
  • "ownerId": "string",
  • "rootAggregateType": "Venue",
  • "name": "string",
  • "description": "string"
}

Response samples

Content type
application/json
"string"

Get public SmartMenu details

path Parameters
smartMenuId
required
string <ulid>

Responses

Response samples

Content type
application/json
{
  • "smartMenuId": "string",
  • "ownerId": "string",
  • "rootAggregateType": "Venue",
  • "name": "string",
  • "description": "string",
  • "mediaGalleryId": "string",
  • "sections": [
    ]
}

Update SmartMenu details

path Parameters
smartMenuId
required
string <ulid>
Request Body schema: application/json
name
string
description
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string"
}

Remove a SmartMenu

path Parameters
smartMenuId
required
string <ulid>

Responses

Get editor SmartMenu details

Retrieves detailed information about a SmartMenu, intended for an editing interface.

path Parameters
smartMenuId
required
string <ulid>

Responses

Response samples

Content type
application/json
{
  • "smartMenuDto": {
    },
  • "detailsDto": {
    }
}

Sections

Endpoints for managing sections within a SmartMenu.

Add a section to a SmartMenu

path Parameters
smartMenuId
required
string <ulid>
Request Body schema: application/json
name
string
description
string
sectionIconUrl
string or null <uri>

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
"string"

Get all public sections for a SmartMenu

path Parameters
smartMenuId
required
string <ulid>

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get public section details by ID

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>

Responses

Response samples

Content type
application/json
{
  • "menuSectionId": "string",
  • "smartMenuId": "string",
  • "name": "string",
  • "description": "string",
  • "sectionIconUrl": "http://example.com",
  • "mediaGalleryId": "string",
  • "items": [
    ]
}

Update section details

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>
Request Body schema: application/json
name
string
description
string
iconUrl
string or null <uri>

Responses

Request samples

Content type
application/json
{}

Remove a section from a SmartMenu

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>

Responses

Get public section details by name

path Parameters
smartMenuId
required
string <ulid>
sectionName
required
string

Responses

Response samples

Content type
application/json
{
  • "menuSectionId": "string",
  • "smartMenuId": "string",
  • "name": "string",
  • "description": "string",
  • "sectionIconUrl": "http://example.com",
  • "mediaGalleryId": "string",
  • "items": [
    ]
}

Get editor section details by ID

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>

Responses

Response samples

Content type
application/json
{
  • "menuSectionDto": {
    },
  • "detailsDto": {
    }
}

Get editor section details by name

path Parameters
smartMenuId
required
string <ulid>
sectionName
required
string

Responses

Response samples

Content type
application/json
{
  • "menuSectionDto": {
    },
  • "detailsDto": {
    }
}

Items

Endpoints for managing items within a menu section.

Add a new item to a section

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>
Request Body schema: application/json
name
string
description
string
object (NutritionalInfo)
object (Price)
object (PortionInfo)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "baseNutrition": {
    },
  • "price": {
    },
  • "portion": {
    }
}

Response samples

Content type
application/json
"string"

Add an item to a section by reference

Links an existing reference item to a section.

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>
Request Body schema: application/json
referenceItemId
string <ulid>

Responses

Request samples

Content type
application/json
{
  • "referenceItemId": "string"
}

Get public item details

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>
itemId
required
string <ulid>

Responses

Response samples

Content type
application/json
{
  • "sectionItemId": "string",
  • "menuSectionId": "string",
  • "name": "string",
  • "description": "string",
  • "baseNutrition": {
    },
  • "totalNutrition": {
    },
  • "portion": {
    },
  • "subItems": [
    ],
  • "cautions": [
    ],
  • "allergens": [
    ],
  • "price": {
    },
  • "mediaGalleryId": "string"
}

Update item details

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>
itemId
required
string <ulid>
Request Body schema: application/json
name
string
description
string
object (NutritionalInfo)
object (Price)
object (PortionInfo)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "nutrition": {
    },
  • "price": {
    },
  • "portion": {
    }
}

Remove an item from a section

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>
itemId
required
string <ulid>

Responses

Get editor item details

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>
itemId
required
string <ulid>

Responses

Response samples

Content type
application/json
{
  • "sectionItemDto": {
    },
  • "detailsDto": {
    }
}

Sub-Items

Endpoints for managing sub-items, which are components of a main item.

Add a sub-item to an item

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>
itemId
required
string <ulid>
Request Body schema: application/json
name
string
description
string
object (NutritionalInfo)
object (PortionInfo)
referenceSectionItemId
string or null <ulid>

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "nutrition": {
    },
  • "portion": {
    },
  • "referenceSectionItemId": "string"
}

Add a referenced sub-item to an item, the reference points to actual item in the menu.

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>
itemId
required
string <ulid>
Request Body schema: application/json
name
string
description
string
object (NutritionalInfo)
object (PortionInfo)
referenceSectionItemId
string or null <ulid>

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "nutrition": {
    },
  • "portion": {
    },
  • "referenceSectionItemId": "string"
}

Update sub-item details

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>
itemId
required
string <ulid>
subItemId
required
string <ulid>
Request Body schema: application/json
name
string
description
string
object (NutritionalInfo)
object (PortionInfo)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "nutrition": {
    },
  • "portion": {
    }
}

Remove a sub-item from an item

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>
itemId
required
string <ulid>
subItemId
required
string <ulid>

Responses

Reference Items

Manages a global library of reusable menu items.

Create a new reference item

Request Body schema: application/json
name
string
description
string
object (NutritionalInfo)
object (Price)
object (PortionInfo)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "baseNutrition": {
    },
  • "price": {
    },
  • "portion": {
    }
}

Response samples

Content type
application/json
"string"

Get all reference items

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all reference items by category

path Parameters
category
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get a reference item by ID

path Parameters
itemId
required
string <ulid>

Responses

Response samples

Content type
application/json
{
  • "sectionItemId": "string",
  • "menuSectionId": "string",
  • "name": "string",
  • "description": "string",
  • "baseNutrition": {
    },
  • "totalNutrition": {
    },
  • "portion": {
    },
  • "subItems": [
    ],
  • "cautions": [
    ],
  • "allergens": [
    ],
  • "price": {
    },
  • "mediaGalleryId": "string"
}

Update a reference item

path Parameters
itemId
required
string <ulid>
Request Body schema: application/json
name
string
description
string
object (NutritionalInfo)
object (Price)
object (PortionInfo)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "nutrition": {
    },
  • "price": {
    },
  • "portion": {
    }
}

Remove a reference item

path Parameters
itemId
required
string <ulid>

Responses

Allergen Definitions

Manages the global definitions of allergens (e.g., Gluten, Dairy).

Create a new allergen definition

Request Body schema: application/json
name
string
description
string
externalInformationLink
string <uri>
iconUrl
string <uri>
hexColorPrimary
string
hexColorSecondary
string

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
"string"

Get all allergen definitions

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get an allergen definition by ID

path Parameters
allergenId
required
string <ulid>

Responses

Response samples

Content type
application/json
{
  • "allergenId": "string",
  • "name": "string",
  • "description": "string",
  • "externalInformationLink": "http://example.com",
  • "iconUrl": "http://example.com",
  • "hexColorPrimary": "string",
  • "hexColorSecondary": "string"
}

Update an allergen definition

path Parameters
allergenId
required
string <ulid>
Request Body schema: application/json
name
string
description
string
externalInformationLink
string <uri>
iconUrl
string <uri>
hexColorPrimary
string
hexColorSecondary
string

Responses

Request samples

Content type
application/json
{}

Remove an allergen definition

path Parameters
allergenId
required
string <ulid>

Responses

Allergen Linking

Endpoints for linking/unlinking allergens to/from specific menu items.

Link an allergen to an item

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>
itemId
required
string <ulid>
Request Body schema: application/json
allergenId
string <ulid>

Responses

Request samples

Content type
application/json
{
  • "allergenId": "string"
}

Response samples

Content type
application/json
"string"

Get linked allergens for an item

NOTE: The backend implementation for this endpoint is explicitly marked as 'NotImplemented'.

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>
itemId
required
string <ulid>

Responses

Unlink an allergen from an item

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>
itemId
required
string <ulid>
allergenId
required
string <ulid>

Responses

Caution Definitions

Manages the global definitions of cautions (e.g., Spicy, Contains Alcohol).

Create a new caution definition

Request Body schema: application/json
name
string
description
string
alert
string
iconUrl
string <uri>
hexColorPrimary
string
hexColorSecondary
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "alert": "string",
  • "iconUrl": "http://example.com",
  • "hexColorPrimary": "string",
  • "hexColorSecondary": "string"
}

Response samples

Content type
application/json
"string"

Get all caution definitions

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get a caution definition by ID

path Parameters
cautionId
required
string <ulid>

Responses

Response samples

Content type
application/json
{
  • "cautionId": "string",
  • "name": "string",
  • "description": "string",
  • "alert": "string",
  • "iconUrl": "http://example.com",
  • "hexColorPrimary": "string",
  • "hexColorSecondary": "string"
}

Update a caution definition

path Parameters
cautionId
required
string <ulid>
Request Body schema: application/json
name
string
description
string
alert
string
iconUrl
string <uri>
hexColorPrimary
string
hexColorSecondary
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "alert": "string",
  • "iconUrl": "http://example.com",
  • "hexColorPrimary": "string",
  • "hexColorSecondary": "string"
}

Remove a caution definition

path Parameters
cautionId
required
string <ulid>

Responses

Caution Linking

Endpoints for linking/unlinking cautions to/from specific menu items.

Link a caution to an item

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>
itemId
required
string <ulid>
Request Body schema: application/json
cautionId
string <ulid>

Responses

Request samples

Content type
application/json
{
  • "cautionId": "string"
}

Response samples

Content type
application/json
"string"

Get linked cautions for an item

NOTE: The backend implementation for this endpoint is explicitly marked as 'NotImplemented'.

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>
itemId
required
string <ulid>

Responses

Unlink a caution from an item

path Parameters
smartMenuId
required
string <ulid>
sectionId
required
string <ulid>
itemId
required
string <ulid>
cautionId
required
string <ulid>

Responses