Catalog
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.