Nana Express API reference
Read a Nana Express store's grocery range: its category tree, then every product in a category with price, brand, pack size, stock and how many you can buy. Send a store and a category, get JSON back.
The Nana Express API has 4 endpoints, called the same way: POST /execute with the endpoint ID as capability and its fields as input, or pin Nana Express in the MCP server and call each one as a tool. The data comes back as JSON in results[0].data, with what the call cost in billing.credits_charged.
The input most of them take is store_id. Prices run from 1 credit to 1.5 credits per call, and a failed call costs nothing.
Endpoints
Open an endpoint for its input, the fields it returns and the request in cURL, Python and Node.js.
| Endpoint | What it returns | Price |
|---|---|---|
nana.products.list |
Every product in a Nana store category: name, brand, price, selling unit, stock and the most you can order. | 1.5 credits |
nana.categories.list |
A Nana store's category tree, each category with its subcategories and how many products they hold. | 1.5 credits |
nana.product.get |
Read one product from a store by its stable pid, with price, stock, status and pack details. | 1 credit |
nana.products.search |
Search one Nana store's catalogue by keyword, with the source's own match count and next-page flag. | 1 credit |
What to know
- One store at a time Every call is for one Nana store, by its ID. Prices, range and stock are that store's.
- Sold by the piece or the kilo Each product says how it is sold, such as by the kilo, and the most you can put in one order.
- Categories with their subcategories The category tree comes with each subcategory's product count, so you can plan which ones to read.
- Stock is the store's own A product's stock and the most you can order are what that Nana store shows at the moment of the call.
Something missing or unclear? Ask the team that builds the Nana Express endpoints.