Zernio
Zernio
API Reference

Products

List productsGETGet a productGETUpdate a productPATCH
Dashboard
llms.txtOpenAPI
OverviewPlatformsAPI ReferenceResources
Products

Get a product

Fetches a single product with its variants, options and images. productId is the platform's numeric product id from GET /v1/accounts/{accountId}/products, not a Zernio id.

Supported on Shopify (platform shopify); accounts on other platforms return 400.


PlatformsShopify
GET
/v1/accounts/{accountId}/products/{productId}

Authorization

bearerAuth
AuthorizationBearer <token>

API key authentication: send your Zernio API key in the Authorization header, prefixed with Bearer.

In: header

Path Parameters

accountId*string

Connected Shopify SocialAccount id.

productId*string

Platform-native numeric product id. Non-numeric values return 400.

Match^\d+$

Response Body

application/json

application/json

application/json

{  "platform": "shopify",  "product": {    "id": "string",    "platform": "shopify",    "title": "string",    "handle": "string",    "descriptionHtml": "string",    "vendor": "string",    "productType": "string",    "tags": [      "string"    ],    "status": "active",    "featuredImage": {      "url": "string",      "altText": "string"    },    "images": [      {        "url": "string",        "altText": "string"      }    ],    "options": [      {        "name": "string",        "values": [          "string"        ]      }    ],    "variants": [      {        "id": "string",        "title": "string",        "sku": "string",        "barcode": "string",        "price": "string",        "compareAtPrice": "string",        "inventoryQuantity": 0,        "availableForSale": true,        "selectedOptions": [          {            "name": "string",            "value": "string"          }        ]      }    ],    "seo": {      "title": "string",      "description": "string"    },    "totalInventory": 0,    "onlineStoreUrl": "string",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z",    "publishedAt": "2019-08-24T14:15:22Z"  }}
Was this page helpful?

List products

Lists the products on the connected store in the platform's default order, each with its variants, options and images. Cursor-paginated: pass `limit` (1-50, default 20) and the `cursor` from a previous response's `nextCursor`; `nextCursor` is null when there are no more pages. Filter with `status` and/or `query` (the platform's product search syntax, e.g. `title:*shirt* vendor:Acme tag:summer`). Supported on Shopify (platform `shopify`); accounts on other platforms return 400. A store connected before product access was added answers 403 insufficient_permissions until the merchant reconnects it through `GET /v1/connect/shopify`.

Update a product

Partial-updates a product. Send any subset of `title`, `descriptionHtml`, `handle`, `vendor`, `productType`, `tags`, `status`, `seo` and `variants`; at least one field is required (an empty body returns 400). `tags` replaces the full tag list. `variants` updates the price and compare-at price of the listed variant ids only; other variants are untouched, and a variant id that does not belong to the product is a 400. Responds with the product as it is after the update. Supported on Shopify (platform `shopify`); accounts on other platforms return 400. A store connected before product access was added answers 403 insufficient_permissions until the merchant reconnects it through `GET /v1/connect/shopify`.