List products
Lists the store's products with their variants, options and images.
Cursor-paginated: pass limit (1-100, default 20) and the cursor
from a previous response's nextCursor, which is null on the last page.
Filter with status and/or query (the platform's product search
syntax, passed through verbatim). A status the platform has no
equivalent of returns an empty page.
Authorization
bearerAuth API key authentication: send your Zernio API key in the Authorization header, prefixed with Bearer.
In: header
Query Parameters
Connected store SocialAccount id.
1 <= value <= 10020Opaque cursor from a previous response. Omit for the first page.
Zernio product status. The platform value is returned as platformStatus. Shopify: ACTIVE, DRAFT and ARCHIVED map to the same names; UNLISTED maps to inactive.
Value in
- "active"
- "draft"
- "pending_review"
- "rejected"
- "inactive"
- "archived"
- "deleted"
Platform product search syntax (Shopify: title, vendor, product_type, tag, sku, handle, ...).
length <= 500Only products in this collection.
Response Body
application/json
application/json
application/json
import Zernio from '@zernio/node';const zernio = new Zernio({ apiKey: process.env.ZERNIO_API_KEY });const { data } = await zernio.commerce.listCommerceProducts({ query: { accountId: 'account_abc123', },});console.log(data);{ "products": [ { "id": "string", "accountId": "string", "platform": "shopify", "title": "string", "descriptionHtml": "string", "handle": "string", "vendor": "string", "productType": "string", "tags": [ "string" ], "status": "active", "platformStatus": "string", "featuredImage": { "id": "string", "url": "string", "altText": "string" }, "images": [ { "id": "string", "url": "string", "altText": "string" } ], "options": [ { "name": "string", "values": [ "string" ] } ], "variants": [ { "id": "string", "title": "string", "sku": "string", "barcode": "string", "price": { "amount": "string", "currency": "string" }, "compareAtPrice": { "amount": "string", "currency": "string" }, "inventoryQuantity": 0, "availableForSale": true, "options": [ { "name": "string", "value": "string" } ] } ], "totalInventory": 0, "url": "string", "seo": { "title": "string", "description": "string" }, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "publishedAt": "2019-08-24T14:15:22Z", "platformData": {} } ], "nextCursor": "string"}Get a store
Returns the connected store with its currency, country and the `capabilities` it supports, so an integration can tell up front which Commerce operations the store serves. On Shopify, stock, sales channels, discounts, navigation, metaobjects, markets, marketing and image removal need permissions the store owner approves separately: `missingCapabilities` lists what is not granted yet and `grantPermissionsUrl` is the page where the owner approves it.
Get a product
One product with all its variants, options and images. Needs products.read. 404 product_not_found when the id does not exist in the store.