Zernio
Zernio
API Reference

Commerce

Store & Products

Get a storeGETList productsGETGet a productGETCreate a productPOSTUpdate a productPATCHDuplicate a productPOSTActivate, deactivate, archive or delete productsPOSTAdd or remove tags in bulkPOSTUpdate variant pricesPOST

Variants, Options & Images

Add variantsPOSTDelete variantsDELETEAdd optionsPOSTDelete optionsDELETEAdd imagesPOSTRemove imagesDELETEReorder imagesPOST

Inventory

List locationsGETGet a product's stockGETSet or adjust stockPOST

Collections

List collectionsGETGet a collectionGETCreate a collectionPOSTUpdate a collectionPATCHDelete a collectionDELETEAdd or remove products in a collectionPOSTReorder products in a collectionPOST

Discounts

List discountsGETGet a discountGETCreate a discountPOSTUpdate a discountPATCHActivate or deactivate a discountPOSTAdd codes to a discountPOSTDelete a discountDELETE

Sales Channels

List sales channelsGET

Markets & Price Lists

List marketsGETList price listsGETSet fixed pricesPUTRemove fixed pricesDELETE

Metafields & Metaobjects

List metaobject definitionsGETList metaobjects of a typeGETGet a metaobjectGETCreate a metaobjectPOSTUpdate a metaobjectPATCHDelete a metaobjectDELETE

Pages, Menus & Redirects

List pagesGETGet a pageGETCreate a pagePOSTUpdate a pagePATCHDelete a pageDELETEList navigation menusGETGet a navigation menuGETCreate a navigation menuPOSTReplace a navigation menuPUTDelete a navigation menuDELETEList URL redirectsGETCreate a URL redirectPOSTUpdate a URL redirectPATCHDelete a URL redirectDELETE

Marketing Activities

Record a marketing activityPUTDelete a marketing activityDELETEReport daily engagementPOST

Meta Catalog Sync

List catalog syncsGETSync a store into a Meta catalogPOSTGet a catalog syncGETRun a catalog sync nowPOSTStop a catalog syncDELETE

Other

Publish or unpublish a collectionPOSTPublish or unpublish a productPOSTDelete collection metafieldsDELETEDelete product metafieldsDELETEList collection metafieldsGETList product metafieldsGETSet collection metafieldsPUTSet product metafieldsPUT
Dashboard
llms.txtOpenAPI
OverviewPlatformsAPI ReferenceResources
Commerce

Add options

Adds option axes (e.g. Size, Color) and their values. With createVariants true the platform creates a variant for every new combination; otherwise existing variants take the first value.


PlatformsShopify
POST
/v1/commerce/products/{productId}/options

Authorization

bearerAuth
AuthorizationBearer <token>

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

In: header

Path Parameters

productId*string

Platform-native id.

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

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.createCommerceProductOptions({  path: {    productId: 'product_abc123',  },  body: {    accountId: 'account_abc123',    options: [      {        name: 'Example',        values: [          'string',        ],      },    ],  },});console.log(data);
{  "product": {    "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": {}  }}
Was this page helpful?

Delete variants

Deletes the variants in `variantIds` (comma-separated, up to 100) and returns the updated product. A product keeps at least one variant, so deleting every variant is refused by the platform. Needs products.variants.

Delete options

Deletes options by name, with the variants that depended on them.

accountId*string
options*array<>
Items1 <= items <= 3
createVariants?boolean
Defaultfalse