GET
https://api.posnova.store/v1/productsList Products
Retrieve a paginated list of all active products within your organization's warehouse and storefront. This endpoint supports filtering by category and custom pagination limits.
Query Parameters
| Parameter | Description |
|---|---|
limit integer • optional | Number of products to return. Default is 50, maximum is 100. |
page integer • optional | The page number for pagination. Default is 1. |
category_id integer • optional | Filter results by a specific PosNova category ID. |
search string • optional | Case-insensitive search on the product name. |
featured boolean • optional | Set to true to only return products flagged as Featured. |
in_stock boolean • optional | Set to true to only return products with available stock. |
Request Example
cURL
curl "https://api.posnova.store/v1/products?limit=50&page=1&in_stock=true" \ -H "Authorization: Bearer pn_live_YourSecretKey"
JavaScript
const res = await fetch("https://api.posnova.store/v1/products?limit=50&page=1&in_stock=true", {
headers: { Authorization: `Bearer ${process.env.POSNOVA_API_KEY}` },
});
const { data, pagination } = await res.json();JSON Response
Returns a unified JSON object containing the data array and organization-specific pagination metadata.
{
"success": true,
"data": [
{
"id": "prod_12345",
"name": "Wireless Noise-Canceling Headphones",
"slug": "wireless-headphones",
"price": 199.99,
"quantity": 105,
"status": "ACTIVE"
}
],
"pagination": {
"total": 1,
"page": 1,
"limit": 50
}
}GET
https://api.posnova.store/v1/products/{idOrSlug}Retrieve a Product
Fetch a single active product by numeric ID or slug. The response includes images, variants with their attribute names, specifications, categories, and the brand. Returns 404 when the product does not exist in your store.
Stock Aggregation
The quantity returned represents the aggregate available stock across all warehouse bins. For bin-specific tracking, consult the Inventory API Bin modules.
Status: Operational