Skip to content

Menus

Manage navigation menus and menu items for your storefront. Create header menus, footer links, and custom navigation structures.

Basic CRUD Actions

Get Menus listing

View on Postman

Get a list of all menus.

JS
let menus = await Client.API.Core.Menus.all();
TS
import { Response, Menus } from "@tscommerce/sdk-typescript"

Client.API.Core.Menus.all().then((response:Response<Menus>) => {
    response.resource.forEach((menu) => {
        console.log(menu.id, menu.name);
    });
});
PHP
$menus = $client->API->Core->Menus->all();

Create new Menu

View on Postman

Create a new navigation menu.

JS
const payload = {
    name: 'Main Menu',
    slug: 'main-menu',
    location: 'header'
};
let menu = await Client.API.Core.Menus.create(payload);
TS
import { Response, Menu, CreateMenuPayload } from "@tscommerce/sdk-typescript"

const payload:CreateMenuPayload = {
    name: 'Main Menu',
    slug: 'main-menu',
    location: 'header'
};

Client.API.Core.Menus.create(payload).then((response:Response<Menu>) => {
    console.log('Created menu:', response.resource);
});
PHP
$payload = [
    'name' => 'Main Menu',
    'slug' => 'main-menu',
    'location' => 'header'
];
$menu = $client->API->Core->Menus->create($payload);

Get Menu

View on Postman

Get an existing menu by ID.

JS
const menuId = 123;
let menu = await Client.API.Core.Menus.read(menuId);
TS
import { Response, Menu } from "@tscommerce/sdk-typescript"

const menuId:Menu['id'] = 123;
Client.API.Core.Menus.read(menuId).then((response:Response<Menu>) => {
    console.log('Menu:', response.resource);
});
PHP
$menuId = 123;
$menu = $client->API->Core->Menus->read($menuId);

Update Menu

View on Postman

Update an existing menu.

JS
const menuId = 123;
const payload = {
    name: 'Updated Main Menu'
};
let menu = await Client.API.Core.Menus.update(menuId, payload);
TS
import { Response, Menu, UpdateMenuPayload } from "@tscommerce/sdk-typescript"

const menuId:Menu['id'] = 123;
const payload:UpdateMenuPayload = {
    name: 'Updated Main Menu'
};

Client.API.Core.Menus.update(menuId, payload).then((response:Response<Menu>) => {
    console.log('Updated menu:', response.resource);
});
PHP
$menuId = 123;
$payload = ['name' => 'Updated Main Menu'];
$menu = $client->API->Core->Menus->update($menuId, $payload);

Delete Menu

View on Postman

Delete a menu.

JS
const menuId = 123;
Client.API.Core.Menus.delete(menuId);
TS
import { Response, Menu } from "@tscommerce/sdk-typescript"

const menuId:Menu['id'] = 123;
Client.API.Core.Menus.delete(menuId).then((response:Response) => {
    console.log('Menu deleted successfully');
});
PHP
$menuId = 123;
$client->API->Core->Menus->delete($menuId);

Copyright © 2025-2025 TeamSystem S.p.A. - Built with ❤️ by TeamSystem Commerce