Examples of use cases

  • Monitor the update or addition of new products

  • Consult the information available for a product

  • Update the offers of the published products

Why use it

This API allows the sales channels to retrieve the different products and offers selected from those proposed by sellers who have subscribed

How it works

Some definitions

Product: All the data related to a product that can be purchased by a consumer. This data can be voluminous (product name, category, short description, long description, numerous attributes, customer reviews, associated media such as photos, notices, videos, etc.). Several sellers can propose offers for the same product

Offer: All data related to a product offered by a seller: stock, price, condition, possible delivery method(s). The amount of data is limited to improve the performance when updating offers on a sales channel in real time.

Catalog : Set of products and associated offers

Potential catalog : Set of products and associated offers proposed by sellers who have subscribed to the sales channel.

Exposed catalog : Set of products and associated offers selected by the sales channel in the potential catalog. 

This scheme represents the catalog of a seller who decides to reject the product C and and want to publish only offers with state "new".

Products and Offers API only return items from the exposed catalog.
Nowadays there is no possibility to select or reject products and offers by API but you can contact Octopia support to set filters and configure your exposed catalog.


Initialisation of your catalog

Currently, 2 APIs allow sales channels to build and maintain their catalog: Products API and Offers API

Generally, the initialization of the catalog consists of retrieving all products and all active offers associated. For this the sales channel shouldn't apply date filters.(updateAtMin & updateAtMax deactivated).

Then, the catalog maintenance and update consists of retrieving only products and offers that have been updated since the last call (updateAtMin=last call time / updateAtMax=time of call ).
Shorter is the periode between two calls, better the integration of updates is.
However, API calls are subject to quotas, so you must have to find the best frequency for update taking care to do not exceed them.