Overview

The product data from different channels is matched to a unified data model based on the Shopify product data model. For more information, refer to the Shopify Product API Documentation.

Authenticating users

To get the data, you first need to authenticate your users. This is possible using our authenticator or in each API request using token authentication.

Datamodel

Shopify Product Data Model as baseline

Kariz uses the Shopify product data model because it supports seamless integration with other e-commerce platforms. This consistency enables easier internal model adaptation, especially if you have already built a Shopify integration.

Inventory Data Integration

The unified product data model includes inventory details for all product variants. With one API call, you receive:

  • All products

  • All product variants

  • Their inventory

  • Inventory levels are split across multiple locations (if applicable)

For more details on inventory models, refer to the Shopify Inventory API Documentation:

Modifications to the Shopify Product Data Model

  • ID Fields as Strings: All ID fields are converted to strings to maintain cross-platform consistency.

  • Added channel_name Variable: Indicates the source platform of product data. For example, if data comes from Shopify, channel_name = 'shopify'.

Supported Channels and Parameters

  • Shopify

  • WooCommerce

  • Bol.com

Retrieving the data

We support 2 methods for retrieving the data, synchronous and asynchronous. To get started we recommend using the Synchronous method as it’s quicker to setup and works for most platforms.

However, some E-commerce platforms like Amazon, bol.com and others don’t support synch responses for their product endpoints. To deal with this we also offer an Asynch option. It allows you to connect to these other marketplaces and is more suitable for high troughput applicaitons (like getting > 2000 products at a time).

Synchronous - JSON response

Asynchronous - Webhooks

Note: For testing webhooks follow this link: Testing Webhooks

Here is an example for the bol.com products, where the webhook is required.

NameRequiredData typeDescriptionExample
delivery_webhookYesobjectThe result will be delivered on the given URL

Product API Parameters

Below are the supported parameters for the get products function. These parameters allow filtering, sorting, and retrieving specific product data.

  • collection_id (string, optional): Retrieves products within the specified collection.

  • created_at_min (string, optional): Returns products created on or after the specified date.

  • created_at_max (string, optional): Returns products created on or before the specified date.

  • fields (string, optional): A comma-separated list of fields to include in the response.

  • handle (string, optional): Retrieves products with a matching handle.

  • ids (string, optional): A comma-separated list of specific product IDs to retrieve.

  • limit (number, optional): The maximum number of products to return per page.

  • product_type (string, optional): Retrieves products matching the specified product type.

  • published_at_min (string, optional): Returns products published on or after the specified date.

  • published_at_max (string, optional): Returns products published on or before the specified date.

  • published_status (string, optional): Retrieves products with the specified published status.

  • since_id (string, optional): Returns products created after the specified product ID.

  • status (string, optional): Retrieves products with the specified status.

  • title (string, optional): Retrieves products matching the specified title.

  • updated_at_min (string, optional): Returns products updated on or after the specified date.

  • updated_at_max (string, optional): Returns products updated on or before the specified date.

  • vendor (string, optional): Retrieves products from the specified vendor.

By using these parameters, you can efficiently query and retrieve relevant product data while minimizing data transfer and processing time.