Store & Menus
Visibility
GET /store— PublicGET /store/menus— PublicGET /store/menus/{handle}— Public
Authentication
All endpoints in this page require:
x-api-key: sk_eco_...GET /store
Returns public store identity and storefront configuration.
Response Fields (core)
| Field | Type | Description |
|---|---|---|
id | string | Store UUID |
name | string | Store display name |
slug | string | Store slug |
description | string? | Public description |
logo_url | string? | Public logo URL |
custom_domain | string? | Connected custom domain |
contact_info | object? | Email/phone/contact metadata |
social_links | object? | Social profile links |
theme_settings | object? | Theme configuration |
settings | object? | Additional storefront settings |
cURL
curl -X GET "https://api.ecommaps.com/api/v1/storefront/store" \
-H "x-api-key: sk_eco_YOUR_KEY"GET /store/menus
Returns all menu definitions available for the store.
Response Fields (menu)
| Field | Type | Description |
|---|---|---|
id | string | Menu UUID |
title | string | Menu display title |
handle | string | Stable menu key |
items | MenuItem[] | Hierarchical menu items |
MenuItem fields include: title, url, type, position, children.
GET /store/menus/{handle}
Returns one menu by handle. Use this for deterministic menu placement (for example main-menu, footer).
Error Matrix
| Status | Scenario |
|---|---|
401 | Missing or invalid API key |
404 | Menu handle not found |
500 | Upstream datastore failure |
SDK Example
import { ecommapsClient } from "@ecommaps/client";
const store = await ecommapsClient.store.retrieve();
const menus = await ecommapsClient.store.menus.list();
const mainMenu = await ecommapsClient.store.menus.retrieve("main-menu");