Marketplaces / BOL Technical Scope [In Progress] / Bol Product Management / Bol Get Products

Bol Get Products

Summary of Changes: (The purpose of this table is to keep traceability and Product team to highlight the things that were changed into the scope, based on comments or discussions)

Date Version Created / Updated Notes
10/05/2023 v1.0 Bogomil Pavlov First publish

The purpose of this document is to describe how we check if a product already exist on Bol. Since it is a catalog based marketplace we can check if the catalog exist and just push the offer. We treat Get Products as starting point of the product creation process, thus we want the triggers to be: Product Account > Product status = Awaiting creationProduct Account > List / Update the Whole Item = Pending The get product is product per product request and after each request we receive the response.

API Call: GET https://api.bol.com/retailer/products/{ean}/product-idsAPI Docs:https://api.bol.com/retailer/public/redoc/v9/retailer.html#tag/Products/operation/get-product-placementSample Request:https://api.bol.com/retailer/products/0000025698712/product-ids

Hemi Field Comment
Product Account > Marketplace EAN

OR Product > EAN | Product Account > Marketplace EAN is with priority |

Sample Response when the product exist:

{
  "bolProductId": "9200000045327288",
  "eans": [
    {
      "ean": "0000007740404"
    }
  ]
}

There is nothing we would like to keep from the response but just to mark the product that it already exist on Bol and we can proceed with the next step which is offer creation. If product exist we mark the product as Product Account > Product Status = “Product created”Product Account > List / Update the Whole Item = Pending

Sample Response when the product does NOT exist:

{
    "type": "https://api.bol.com/problems",
    "title": "Not Found",
    "status": 404,
    "detail": "Product can't be found for EAN: 8050602632729.",
    "host": "Instance-7999954",
    "instance": "https://api.bol.com/retailer/products/8050602632729/product-ids"
}

If product does NOT exist we mark the product as Product Account > Product Status = “Product not created”Product Account > List / Update the Whole Item = Pending so we can proceed with the next step product content creation.

Sample Error Response:

{
    "type": "https://api.bol.com/problems",
    "title": "Error validating request. Consult the bol.com API documentation for more information.",
    "status": 400,
    "detail": "Bad request",
    "host": "Instance-799995",
    "instance": "https://api.bol.com/retailer/products/5059370020385/product-ids",
    "violations": [
        {
            "name": "ean",
            "reason": "Request contains invalid value(s): '5059370020385'."
        }
    ]
}

If we receive an Error but no that the product does not exist we want to store the error in Product Account > Update Item Error from the violations > reason field.

Is this article helpful?
0 0 0