Logotipo Hedhog

Get Hedhog updates in your inbox

New releases, fresh recipes, and breaking changes — no spam.

Back to Core modulesWired in CoreModule

Core Submodule

menu

Builds menu trees and role bindings for navigation.

Source path: libraries/core/src/menu

Module file: menu.module.ts

Introduction

This page documents the menu submodule as part of the Core package. Use it as a quick technical reference for implementation scope, exposed APIs and MCP integration points.

HTTP Endpoints

13 endpoints

Return the navigation menu tree for the current user.

Return aggregated statistics about the menu catalog.

Return a flat list of all menus in the given locale.

Query
locale? (string)

List menus with pagination.

Query
page, pageSize, search

Get a menu entry by ID.

Params
menuId (int)

List roles associated with a menu entry.

Params
menuId (int)
Query
page, pageSize

List screens associated with a menu entry.

Params
menuId (int)
Query
page, pageSize

Create a new menu entry.

Body

FieldTypeRequiredNotes
slugstringyes
urlstringyes
ordernumbernoMin 1
iconstringno
menu_idnumbernoParent menu ID, min 1
localeRecord<string, string>noLabel translations

Update the display order of multiple menu entries.

Body

FieldTypeRequiredNotes
idsnumber[]yesMenu IDs in desired order; ArrayMinSize(1)

Update a menu entry.

Params
menuId (int)

Body

FieldTypeRequiredNotes
namestringno
urlstringno
ordernumberno
iconstringno
menu_idnumbernoParent menu ID
localeRecord<string, string>no

Replace the role assignments for a menu entry.

Params
menuId (int)

Body

FieldTypeRequiredNotes
idsnumber[]yesReplacement set of IDs

Replace the screen assignments for a menu entry.

Params
menuId (int)

Body

FieldTypeRequiredNotes
idsnumber[]yesReplacement set of IDs

Delete one or more menu entries.

Body

FieldTypeRequiredNotes
idsnumber[]yesIDs to delete

MCP Tools

Named tools callable by AI models via the Model Context Protocol (MCP).

  • core.menus.system

    Return the navigation menu tree for the current user

  • core.menus.stats

    Return aggregated statistics about the menu catalog

  • core.menus.all

    Return a flat list of all menus in a given locale

  • core.menus.list

    List menus with pagination

  • core.menus.get

    Get a menu entry by ID

  • core.menus.create

    Create a new menu entry with slug, URL, order, icon, and translations

  • core.menus.update

    Update a menu entry's properties

  • core.menus.delete

    Delete one or more menu entries

  • core.menus.order

    Update the display order of multiple menu entries

  • core.menus.roles.list

    List roles associated with a menu entry

  • core.menus.roles.update

    Replace the role assignments for a menu entry