Product Categories

List all categories

GET /api/v1/product_categories

Query parameters

Name Type Description
fields string Comma-separated list of fields. Example id,parent_id,name
enabled boolean Only enabled categories

Retrieve a category

GET /api/v1/product_categories/{category_id}

Create a category

POST /api/v1/product_categories

Request body

Name Type Description
name string -
description string -
meta_description string -
meta_title string -
enabled boolean -
sort string -
parent_id string -
position integer -
slug string -

Update a category

PUT /api/v1/product_categories/{category_id}

Request body

Name Type Description
name string -
description string -
meta_description string -
meta_title string -
enabled boolean -
sort string -
parent_id string -
position integer -
slug string -

Delete a category

DELETE /api/v1/product_categories/{category_id}

Upload a category image

POST /api/v1/product_categories/{category_id}/image

Delete a category image

DELETE /api/v1/product_categories/{category_id}/image

Products

Products

Images of the product

Product options

Option values

Product variants

List all products

GET /api/v1/products

Query parameters

Name Type Description
limit integer Default: 1000
offset integer Default: 0
category_id string -
ids string Comma-separated list of product ids
sku string Comma-separated list of product SKU
on_sale boolean -
stock_status string available, out_of_stock, preorder, backorder, discontinued
price_from float -
price_to float -
tags string Comma-separated list of product tags
attributes.<name> string Example: attributes.color=white
enabled boolean -
discontinued boolean -
fields string Comma-separated list of fields. Example id,parent_id,name

Create a product

POST /api/v1/products

Request body

Name Type Description
name string -
description string -
meta_description string -
meta_title string -
tags array of string -
attributes array of object -
enabled boolean -
discontinued boolean -
slug string -
sku string -
code string -
tax_class string -
related_product_ids array of string -
prices array -
cost_price float -
regular_price float -
sale_price float -
quantity_inc integer -
quantity_min integer -
weight float -
stock_quantity integer -
position integer -
date_stock_expected date -
date_sale_from date -
date_sale_to date -
stock_tracking boolean -
stock_preorder boolean -
stock_backorder boolean -
category_id string -
dimensions object Properties: 'length', 'width', 'height'

Retrieve a product

GET /api/v1/products/{product_id}

Update a product

PUT /api/v1/products/{product_id}

Delete a product

DELETE /api/v1/products/{product_id}

List all images of the product

GET /api/v1/products/{product_id}/images

Upload images to the product

POST /api/v1/products/{product_id}/images

Update an image

PUT /api/v1/products/{product_id}/images/{image_id}

Delete an image

DELETE /api/v1/products/{product_id}/images/{image_id}

List all product options

GET /api/v1/products/{product_id}/options

Retrieve an option

GET /api/v1/products/{product_id}/options/{option_id}

Create an option

POST /api/v1/products/{product_id}/options

Update an option

PUT /api/v1/products/{product_id}/options/{option_id}

Delete an option

DELETE /api/v1/products/{product_id}/options/{option_id}

List all values of the product option

GET /api/v1/products/{product_id}/options/{option_id}/values

Retrieve a value

GET /api/v1/products/{product_id}/options/{option_id}/values/{value_id}

Create a value

POST /api/v1/products/{product_id}/options/{option_id}/values

Update a value

PUT /api/v1/products/{product_id}/options/{option_id}/values/{value_id}

Delete a value

DELETE /api/v1/products/{product_id}/options/{option_id}/values/{value_id}

List all product variants

GET /api/v1/products/{product_id}/variants

Create a variant

POST /api/v1/products/{product_id}/variants

Update a variant

PUT /api/v1/products/{product_id}/variants/{variant_id}

Delete a variant

DELETE /api/v1/products/{product_id}/variants/{variant_id}

Set an option value to the product variant

PUT /api/v1/products/{product_id}/variants/{variant_id}/options

Cezerin API client library

Allows asynchronous requests to Cezerin REST API and get results with native Promise or async/await. Work on browser and server.

Client include:

  • Cezerin API
  • Cezerin AJAX API
  • Cezerin Web Store API

Install with:

npm i cezerin-client

Initialize

import CezerinClient from 'cezerin-client';

const api = new CezerinClient({
  apiBaseUrl: 'https://website.com/api/v1',
  apiToken: '<token>'
});

Usage

// fetch all categories with await
const categoriesResponse = await api.productCategories.list();
const categories = categoriesResponse.json;
for(const category of categories){
  console.log(category.name)
}

// fetch all categories with Promise
api.productCategories.list().then(({status, json}) => {
    const categories = json;
    for(const category of categories){
      console.log(category.name)
    }
});

// create a category
api.productCategories.create({name: 'Shoes', active: true}).then(({status, json}) => {
    const categoryId = json.id;
});

Error Handling

// with await
try {
  const createResult = await api.productCategories.create({ name: 'Shoes' });
  const newCategory = createResult.json;
} catch(e) {
  console.log(e);
}

// with Promise
api.productCategories.create({ name: 'Shoes' })
.then(({status, json}) => {
  if(status === 200) {
    // success
    const newCategory = json;
  } else {
    // 404 or bad request
  }
})
.catch(err => {
  console.log(err)
});

Methods

  • api.authorize(baseUrl, user, pass)
  • api.sitemap.list()
  • api.sitemap.retrieve(path)
  • api.productCategories.list()
  • api.productCategories.retrieve(id)
  • api.productCategories.create(data)
  • api.productCategories.update(id, data)
  • api.productCategories.delete(id)
  • api.productCategories.uploadImage(categoryId, formData)
  • api.productCategories.deleteImage(id)
  • api.products.list({
    • offset: 0,
    • limit: 10,
    • fields: 'id, name, price',
    • category_id: '<id>',
    • active: true,
    • discontinued: false,
    • search: '',
    • on_sale: true,
    • stock_status: 'available',
    • price_from: 0,
    • price_to: 100,
    • sku: '',
    • ids: '<id>,<id>,<id>',
    • sort: 'regular_price,-stock_quantity'})
  • api.products.retrieve(id)
  • api.products.create(data)
  • api.products.update(id, data)
  • api.products.delete(id)
  • api.products.skuExists(productId, sku)
  • api.products.slugExists(productId, slug)
  • api.products.options.list(productId)
  • api.products.options.retrieve(productId, optionId)
  • api.products.options.create(productId, data)
  • api.products.options.update(productId, optionId, data)
  • api.products.options.delete(productId, optionId)
  • api.products.options.values.list(productId, optionId)
  • api.products.options.values.retrieve(productId, optionId, valueId)
  • api.products.options.values.create(productId, optionId, data)
  • api.products.options.values.update(productId, optionId, valueId, data)
  • api.products.options.values.delete(productId, optionId, valueId)
  • api.products.variants.list(productId)
  • api.products.variants.create(productId, data)
  • api.products.variants.update(productId, variantId, data)
  • api.products.variants.delete(productId, variantId)
  • api.products.variants.setOption(productId, variantId, data)
  • api.products.images.list(productId)
  • api.products.images.update(productId, imageId, data)
  • api.products.images.upload(productId, formData)
  • api.products.images.delete(productId, imageId)
  • api.theme.export()
  • api.theme.install(formData)
  • api.theme.settings.retrieve()
  • api.theme.settings.update(settings)
  • api.theme.settings.retrieveSchema()
  • api.theme.assets.uploadFile(formData)
  • api.theme.assets.deleteFile(fileName)
  • api.customers.list
  • api.customers.retrieve
  • api.customers.create
  • api.customers.update
  • api.customers.delete
  • api.customers.createAddress
  • api.customers.updateAddress
  • api.customers.deleteAddress
  • api.customers.setDefaultBillingAddress
  • api.customers.setDefaultShippingAddress
  • api.customerGroups.list
  • api.customerGroups.retrieve
  • api.customerGroups.create
  • api.customerGroups.update
  • api.customerGroups.delete
  • api.orders.list
  • api.orders.retrieve
  • api.orders.create
  • api.orders.update
  • api.orders.delete
  • api.orders.checkout
  • api.orders.recalculate
  • api.orders.cancel
  • api.orders.close
  • api.orders.updateBillingAddress
  • api.orders.updateShippingAddress
  • api.orders.discounts.create(order_id, data)
  • api.orders.discounts.update(order_id, discount_id, data)
  • api.orders.discounts.delete(order_id, discount_id)
  • api.orders.transactions.create(order_id, data)
  • api.orders.transactions.update(customer_id, transaction_id, data)
  • api.orders.transactions.delete(order_id, transaction_id)
  • api.orders.items.create(order_id, data)
  • api.orders.items.update(order_id, item_id, data)
  • api.orders.items.delete(order_id, item_id)
  • api.orderStatuses.list
  • api.orderStatuses.retrieve
  • api.orderStatuses.create
  • api.orderStatuses.update
  • api.orderStatuses.delete
  • api.shippingMethods.list
  • api.shippingMethods.retrieve
  • api.shippingMethods.create
  • api.shippingMethods.update
  • api.shippingMethods.delete
  • api.paymentMethods.list
  • api.paymentMethods.retrieve
  • api.paymentMethods.create
  • api.paymentMethods.update
  • api.paymentMethods.delete
  • api.paymentGateways.retrieve
  • api.paymentGateways.update
  • api.settings.retrieve
  • api.settings.update
  • api.settings.retrieveEmailSettings
  • api.settings.updateEmailSettings
  • api.settings.retrieveEmailTemplate
  • api.settings.updateEmailTemplate
  • api.checkoutFields.list
  • api.checkoutFields.retrieve
  • api.checkoutFields.update
  • api.pages.list
  • api.pages.retrieve
  • api.pages.create
  • api.pages.update
  • api.pages.delete
  • api.tokens.list
  • api.tokens.retrieve
  • api.tokens.create
  • api.tokens.update
  • api.tokens.delete
  • api.redirects.list
  • api.redirects.retrieve
  • api.redirects.create
  • api.redirects.update
  • api.redirects.delete
  • api.files.list(filter)
  • api.files.upload(formData)
  • api.files.delete(fileName)
  • api.webhooks.list
  • api.webhooks.retrieve
  • api.webhooks.create
  • api.webhooks.update
  • api.webhooks.delete
  • api.apps.settings.retrieve(appKey)
  • api.apps.settings.update(appKey, data)
  • api.theme.placeholders.list()
  • api.theme.placeholders.retrieve(placeholderKey)
  • api.theme.placeholders.create(data)
  • api.theme.placeholders.update(placeholderKey, data)
  • api.theme.placeholders.delete(placeholderKey)

Web Store Methods

  • api.webstore.init(token)
  • api.webstore.authorize(email, admin_url)
  • api.webstore.account.retrieve()
  • api.webstore.account.update(data)
  • api.webstore.account.updateDeveloper(data)
  • api.webstore.services.list()
  • api.webstore.services.retrieve(serviceId)
  • api.webstore.services.settings.retrieve(serviceId)
  • api.webstore.services.settings.update(serviceId, settings)
  • api.webstore.services.actions.call(serviceId, actionId)
  • api.webstore.services.logs.list(serviceId)