Documentation Index
Fetch the complete documentation index at: https://docs.shopi.lk/llms.txt
Use this file to discover all available pages before exploring further.
shop.categories.list()
Returns all categories for the shop. Use these to build navigation menus and product filter UIs.
const categories = await shop.categories.list();
Response
Array<{
id: string;
name: string;
image_url: string | null;
}>
Example — Category navigation
const categories = await shop.categories.list();
categories.forEach(cat => {
const link = document.createElement('a');
link.href = `/category/${encodeURIComponent(cat.name)}`;
link.textContent = cat.name;
if (cat.image_url) {
const img = document.createElement('img');
img.src = cat.image_url;
link.prepend(img);
}
navMenu.appendChild(link);
});
Example — Category filter tabs
const categories = await shop.categories.list();
// Render filter tabs
const tabs = [{ id: '', name: 'All' }, ...categories];
tabs.forEach(cat => {
const btn = document.createElement('button');
btn.textContent = cat.name;
btn.addEventListener('click', () => {
filterProducts(cat.name || undefined);
});
filterBar.appendChild(btn);
});
async function filterProducts(category?: string) {
const { products } = await shop.products.list({ category });
renderGrid(products);
}
```---
title: "fetch-categories"
---