Skip to main content
GET
/
menu
/
categories
List categories
curl --request GET \
  --url https://app.xmenu.it/api/menu/categories \
  --header 'X-Api-Key: <api-key>'
{
"success": true,
"page": 123,
"pagesize": 123,
"total_count": 123,
"more": true,
"error": "<string>",
"message": "<string>",
"categories": [
{
"uid": "<string>",
"name": "<string>",
"description": "<string>",
"image": "<string>",
"products_count": 123,
"url": "<string>",
"hidden": true,
"position": 123,
"subrestaurant_uids": [
"<string>"
],
"ext_id": "<string>",
"options": [
{
"uid": "<string>",
"name": "<string>",
"short_name": "<string>",
"type": "single",
"min_selectable": 123,
"max_selectable": 123,
"max_quantity": 123,
"note": "<string>",
"hidden": true,
"position": 123,
"primary": true,
"first_default": true,
"show_caption": true,
"print_caption": true,
"subrestaurant_uids": [
"<string>"
],
"ext_id": "<string>",
"option_values": [
{
"uid": "<string>",
"name": "<string>",
"short_name": "<string>",
"price_operator": "+",
"price_operand": 123,
"hidden": true,
"position": 123,
"checked_default": true,
"subrestaurant_uids": [
"<string>"
],
"ext_id": "<string>"
}
]
}
]
}
]
}

Authorizations

X-Api-Key
string
header
required

Restaurant API Key. Can be obtained from Tools > API Access in the xMenu dashboard.

Query Parameters

restuid
string

Unique restaurant identifier (not required with X-Client-Id authentication)

page
integer
required

Page number to retrieve

Required range: x >= 1
pagesize
integer
default:100

Number of results per page (max: 100)

Required range: 1 <= x <= 100
visible
enum<integer>
default:1

Filter for visible categories only (0 = all, 1 = only non-hidden categories)

Available options:
0,
1
q
string

Search query to filter categories by name

Response

Categories list response

success
boolean
required

Operation result: true if successful, false if failed

page
integer
required

Current page number

pagesize
integer
required

Maximum number of items per page

total_count
integer
required

Total number of results available

more
boolean
required

Indicates if there are more pages available

error
string

Error code if the operation failed.

See Error codes for general error codes that may occur.

message
string

Human-readable error description if the operation failed

categories
object[]

List of categories