### Get Product Recommendations API Source: https://api.bol.com/marketing/docs/api-reference/catalog-api-v1 Retrieves recommended products based on a given product EAN. Includes details on path parameters, responses, and a sample JSON. ```APIDOC APIDOC: Endpoint: GET /marketing/catalog/v1/products/{ean}/recommendations URL: https://api.bol.com/marketing/catalog/v1/products/{ean}/recommendations Description: Get the recommended products based on the given product. Path Parameters: ean (string, required): The European Article Number (EAN), a 13 digit unique number identifying the product. Example: 0842776106209. Regex: ^\d{13}$ Responses: 200 OK: Successful retrieval of recommended products. 400 Bad Request: The sent request does not meet the API specification. Please check the error message(s) for more information. 404 Not Found: No content could be found matching the criteria, or the given EAN is not known. 500 Internal Server Error: The server encountered an unexpected condition that prevented it from fulfilling the request. The request should not be automatically retried. 503 Service Unavailable: The server is currently unable to handle the request due to a temporary overload or scheduled maintenance, which will likely be alleviated after some delay. Response Sample (200 OK): Content-Type: application/json { "recommendedProducts": [ "0842776106209" ] } ``` -------------------------------- ### Get Product Variants API Source: https://api.bol.com/marketing/docs/api-reference/catalog-api-v1 Retrieves variants of a given product, grouped by a key such as color or size. Details include path, query, and header parameters, responses, and a sample JSON. ```APIDOC APIDOC: Endpoint: GET /marketing/catalog/v1/products/{ean}/variants URL: https://api.bol.com/marketing/catalog/v1/products/{ean}/variants Description: Get the variants of the given product. These variants are grouped under a key, e.g. the color or size of a shoe. Path Parameters: ean (string, required): The European Article Number (EAN), a 13 digit unique number identifying the product. Example: 0842776106209. Regex: ^\d{13}$ Query Parameters: country-code (string, required): The country in which variants are available. Enum: "NL", "BE". Example: country-code=NL Header Parameters: Accept-Language (string, required): The desired language of the result. Enum: "nl", "fr", "nl-NL", "nl-BE", "fr-BE". Example: nl Responses: 200 OK: Successful retrieval of product variants. 400 Bad Request: The sent request does not meet the API specification. Please check the error message(s) for more information. 404 Not Found: No content could be found matching the criteria, or the given EAN is not known. 406 Not Acceptable: No content is available in the desired language specified in Accept-Language request header. 500 Internal Server Error: The server encountered an unexpected condition that prevented it from fulfilling the request. The request should not be automatically retried. 503 Service Unavailable: The server is currently unable to handle the request due to a temporary overload or scheduled maintenance, which will likely be alleviated after some delay. Response Sample (200 OK): Content-Type: application/json { "variantGroups": [ { "key": "Colour", "name": "Kleur", "variants": [ { "ean": "0842776106209", "label": "Blauw" } ] } ] } ``` -------------------------------- ### Get Product Categories API Source: https://api.bol.com/marketing/docs/api-reference/catalog-api-v1 Retrieves the categories associated with a given product EAN. Includes details on path, query, and header parameters, as well as possible response codes and a sample JSON response. ```APIDOC APIDOC: Endpoint: GET /marketing/catalog/v1/products/{ean}/categories URL: https://api.bol.com/marketing/catalog/v1/products/{ean}/categories Description: Get the categories of the given product. Path Parameters: ean (string, required): The European Article Number (EAN), a 13 digit unique number identifying the product. Example: 0842776106209. Regex: ^\d{13}$ Header Parameters: Accept-Language (string, required): The desired language of the result. Enum: "nl", "fr", "nl-NL", "nl-BE", "fr-BE". Example: nl Responses: 200 OK: Successful retrieval of product categories. 400 Bad Request: The sent request does not meet the API specification. Please check the error message(s) for more information. 404 Not Found: No content could be found matching the criteria, or the given EAN is not known. 406 Not Acceptable: No content is available in the desired language specified in Accept-Language request header. 500 Internal Server Error: The server encountered an unexpected condition that prevented it from fulfilling the request. The request should not be automatically retried. 503 Service Unavailable: The server is currently unable to handle the request due to a temporary overload or scheduled maintenance, which will likely be alleviated after some delay. Response Sample (200 OK): Content-Type: application/json { "ean": "0842776106209", "categories": [ { "categoryId": 4770, "categoryName": "Laptops", "productCount": 0, "subcategories": [ {} ] } ] } ``` -------------------------------- ### bol.com Marketing API - Product Offers Source: https://api.bol.com/marketing/docs/api-reference/catalog-api-v1 Retrieves the best offers for a given product identified by its EAN. Includes details like price, availability, and delivery information. Supports JSON content type. ```APIDOC GET /marketing/catalog/v1/products/{ean}/offers/best https://api.bol.com/marketing/catalog/v1/products/{ean}/offers/best Parameters: ean (required, string): The 13-digit European Article Number of the product. Responses: 200 OK: Successful retrieval of product offers. 400 Bad request: The request does not meet the API specification. 404 Not found: The product is unavailable or the EAN is not known. 406 Not acceptable: No content available in the desired language. 500 Internal server error: An unexpected server error occurred. 503 Service unavailable: The server is temporarily unable to handle the request. Response Body (application/json): { "ean": "string", "countryCode": "string", "condition": "string", "isPreOrder": true, "price": 0.0, "strikethroughPrice": 0.0, "ultimateOrderTime": "string", "minDeliveryDate": "string", "maxDeliveryDate": "string", "deliveryDescription": "string", "url": "string", "releaseDate": "string", "seller": { "name": "string" } } ``` -------------------------------- ### bol.com Marketing API - Product Media Source: https://api.bol.com/marketing/docs/api-reference/catalog-api-v1 Retrieves media information, including images and their renditions, for a product specified by its EAN. Supports JSON content type. ```APIDOC GET /marketing/catalog/v1/products/{ean}/media https://api.bol.com/marketing/catalog/v1/products/{ean}/media Parameters: ean (required, string): The 13-digit European Article Number of the product. Responses: 200 OK: Successful retrieval of product media. 400 Bad request: The request does not meet the API specification. 404 Not found: No content could be found matching the criteria, or the EAN is not known. 500 Internal server error: An unexpected server error occurred. 503 Service unavailable: The server is temporarily unable to handle the request. Response Body (application/json): { "ean": "string", "images": [ { "order": 0, "mimeType": "string", "renditions": [ { "width": 0, "height": 0, "url": "string" } ] } ] } ``` -------------------------------- ### Bol.com Marketing API - Popular Products Endpoint Source: https://api.bol.com/marketing/docs/api-reference/catalog-api-v1 Retrieves a list of popular products from the Bol.com catalog. Supports pagination and filtering by language. The response includes product details such as EAN, title, description, image, rating, and offer information. ```APIDOC GET /marketing/catalog/v1/products/lists/popular URL: https://api.bol.com/marketing/catalog/v1/products/lists/popular Responses: 200 OK 400 Bad request 406 Not acceptable 500 Internal server error 503 Service unavailable Response Body (application/json): { "page": 0, "resultsPerPage": 0, "totalPages": 0, "totalResults": 0, "results": [ { "ean": "0842776106209", "bolProductId": 9200000099487092, "title": "string", "description": "string", "url": "string", "image": { "mimeType": "string", "width": 0, "height": 0, "url": "string" }, "rating": 4.55, "offer": { "price": 6.99, "strikethroughPrice": 9.45, "deliveryDescription": "Op voorraad. Voor 23:59 besteld, morgen in huis" }, "gpc": [ { "level": 10005167, "name": "Led-strip" } ], "specificationGroups": [ { "title": "Geheugen", "specifications": [ { "key": "Internal Memory", "name": "Intern geheugen", "values": "16 GB" } ] } ] } ], "allRelevantCategories": [ { "categoryId": 4770, "categoryName": "Laptops", "productCount": 0, "subcategories": [ {} ] } ], "allRelevantRefinements": { "refinements": [ { "name": "string", "values": [ { "id": "string", "name": "string" } ] } ], "rangeRefinements": [ { "id": "string", "name": "string", "min": 0, "max": 0, "unit": "sterren" } ] } } ``` -------------------------------- ### Bol.com Marketing Catalog API - Product Information Source: https://api.bol.com/marketing/docs/api-reference/catalog-api-v1 Retrieves detailed information about a specific product using its EAN. Supports filtering by country code and including related data like specifications, images, offers, and ratings. Requires specifying the desired language for the response. ```APIDOC GET /marketing/catalog/v1/products/{ean} Parameters: Path: ean (string, required): The 13-digit European Article Number (EAN) of the product. Query: country-code (string, required): The country code (NL or BE) for which to retrieve the offer. include-specifications (boolean, optional): Whether to include product specifications (default: false). include-image (boolean, optional): Whether to include the main product image (default: false). include-offer (boolean, optional): Whether to include the best offer for the product (default: false). include-rating (boolean, optional): Whether to include the average rating of the product (default: false). Header: Accept-Language (string, required): The desired language for the response (e.g., 'nl', 'fr', 'nl-NL', 'nl-BE', 'fr-BE'). Responses: 200 OK: Product information retrieved successfully. 400 Bad Request: Invalid request format. 404 Not Found: Product not found or EAN is unknown. 406 Not Acceptable: Content not available in the specified language. 500 Internal Server Error: Unexpected server error. 503 Service Unavailable: Server is temporarily overloaded or undergoing maintenance. Response Body Example (JSON): { "ean": "0842776106209", "bolProductId": 9200000099487092, "title": "string", "description": "string", "url": "string", "image": { "mimeType": "string", "width": 0, "height": 0, "url": "string" }, "rating": 4.55, "offer": { "price": 6.99, "strikethroughPrice": 9.45, "deliveryDescription": "Op voorraad. Voor 23:59 besteld, morgen in huis" }, "gpc": [ { "level": 10005167, "name": "Led-strip" } ], "specificationGroups": [ { "title": "Geheugen", "specifications": [ { "key": "Internal Memory", "name": "Intern geheugen", "values": "16 GB" } ] } ] } ``` -------------------------------- ### Bol.com Marketing API - Popular Products Source: https://api.bol.com/marketing/docs/api-reference/catalog-api-v1 Retrieves a list of popular products from the Bol.com catalog based on category and refinement criteria. Supports filtering by category, refinements, price range, country, and pagination. Includes options to include product images, offers, ratings, and related categories/refinements. ```APIDOC APIDOC: Endpoint: /products/popular Method: GET Description: Get the most popular products based on the supplied category id and refinements. Query Parameters: category-id (string, required): The category in which the products must be located. Example: 4770 refinement (array of strings, optional): The refinement which is used to refine the results. Example: ['4283589652'] range-refinement (array of strings, optional): The range refinement which is used to refine the results by a given range. Example: ['16699:3:5'] country-code (string, required, enum: NL, BE): The country in which the product should have an offer. Example: NL page (integer, optional, default: 1): The page number for a paginated query. page-size (integer, optional, default: 24): The desired number of items per page for a paginated query. include-relevant-categories (boolean, optional, default: false): Whether the categories for this search response should be included in the response. include-relevant-refinements (boolean, optional, default: false): Whether the refinements for this search response should be included in the response. include-image (boolean, optional, default: false): Whether the main product image should be included in the response. include-offer (boolean, optional, default: false): Whether the best offer for the product should be included in the response. include-rating (boolean, optional, default: false): Whether the average rating of the product should be included in the response. Header Parameters: Accept-Language (string, required, enum: nl, fr, nl-NL, nl-BE, fr-BE): The desired language of the result. Example: nl Response Samples: 200: OK 400: Bad Request 406: Not Acceptable 500: Internal Server Error 503: Service Unavailable Response Body (Content-Type: application/json): { "page": 0, "resultsPerPage": 0, "totalPages": 0, "totalResults": 0, "results": [ { "ean": "string", "bolProductId": 0, "title": "string", "description": "string", "url": "string", "image": { "mimeType": "string", "width": 0, "height": 0, "url": "string" }, "rating": 0.0, "offer": { "price": 0.0, "strikethroughPrice": 0.0, "deliveryDescription": "string" }, "gpc": [ { "level": 0, "name": "string" } ], "specificationGroups": [ { "title": "string", "specifications": [ { "key": "string", "name": "string", "values": "string" } ] } ] } ], "allRelevantCategories": [ { "categoryId": 0, "categoryName": "string", "productCount": 0, "subcategories": [] } ], "allRelevantRefinements": { "refinements": [ { "name": "string", "values": [ { "id": "string", "name": "string" } ] } ], "rangeRefinements": [ { "id": "string", "name": "string", "min": 0, "max": 0, "unit": "string" } ] } } ``` -------------------------------- ### Bol.com Marketing Catalog API - Product Best Offer Source: https://api.bol.com/marketing/docs/api-reference/catalog-api-v1 Retrieves the best offer for a specific product using its EAN. Allows inclusion of seller information and requires specifying the country code and desired response language. ```APIDOC GET /marketing/catalog/v1/products/{ean}/offers/best Parameters: Path: ean (string, required): The 13-digit European Article Number (EAN) of the product. Query: country-code (string, required): The country code (NL or BE) for which to retrieve the offer. include-seller (boolean, optional): Whether to include seller information with the offer (default: false). Header: Accept-Language (string, required): The desired language for the response (e.g., 'nl', 'fr', 'nl-NL', 'nl-BE', 'fr-BE'). Responses: 200 OK: Best offer information retrieved successfully. 400 Bad Request: Invalid request format. 404 Not Found: Product not found or EAN is unknown. 406 Not Acceptable: Content not available in the specified language. 500 Internal Server Error: Unexpected server error. 503 Service Unavailable: Server is temporarily overloaded or undergoing maintenance. ``` -------------------------------- ### bol.com Marketing API - Product Categories Source: https://api.bol.com/marketing/docs/api-reference/catalog-api-v1 Retrieves the categories a product is placed in on the bol website, identified by its EAN. ```APIDOC GET /marketing/catalog/v1/products/{ean}/categories Parameters: ean (required, string): The 13-digit European Article Number of the product. Responses: 200 OK: Successful retrieval of product categories. 400 Bad request: The request does not meet the API specification. 404 Not found: The product is unavailable or the EAN is not known. 500 Internal server error: An unexpected server error occurred. 503 Service unavailable: The server is temporarily unable to handle the request. ``` -------------------------------- ### Search Products API Endpoint Source: https://api.bol.com/marketing/docs/api-reference/catalog-api-v1 This API endpoint allows searching for products on Bol.com. It supports filtering by search term, category, refinements, and country code. Pagination, sorting, and inclusion of additional data like categories, refinements, images, offers, and ratings are also supported. ```APIDOC APIDOC: Path: /marketing/catalog/v1/products/search Method: GET Description: Search for products by search term (mandatory), category id and refinements. If specified via the `include-relevant-categories` and `include-relevant-refinements` parameters, the response will contain extra information about respectively the relevant categories and refinements. Query Parameters: search-term (required, string): The term to search for. Multiple terms can be used by separating by space. category-id (string): The category in which the products must be located. refinement (array of strings): The refinement which is used to refine the results. These correspond with the refinements used on the bol website. The available refinement values can be obtained from the 'allRelevantRefinements' section of the response of the /products/search endpoint. range-refinement (array of strings): The range refinement which is used to refine the results by a given range. These correspond with the range refinements used on the bol website. The available refinement values can be obtained from the 'allRelevantRefinements' section of the response of the /products/search endpoint. A range refinement must be in the form '$refinementId:($min):($max)'. country-code (required, string): The country in which the product should have an offer. Enum: "NL", "BE". page (integer, optional): The page number for a paginated query. Minimum value: 1. page-size (integer, optional): The desired number of items per page for a paginated query. Range: [1 .. 50]. sort (string, optional): The sorting order that the results should be returned in. Enum: "RELEVANCE", "POPULARITY", "PRICE_ASC", "PRICE_DESC", "RELEASE_DATE", "RATING". include-relevant-categories (boolean, optional): Whether the categories for this search response should be included in the response. include-relevant-refinements (boolean, optional): Whether the refinements for this search response should be included in the response. include-image (boolean, optional): Whether the main product image should be included in the response. include-offer (boolean, optional): Whether the best offer for the product should be included in the response. include-rating (boolean, optional): Whether the average rating of the product should be included in the response. Header Parameters: Accept-Language (required, string): The desired language of the result. Enum: "nl", "fr", "nl-NL", "nl-BE", "fr-BE". Responses: 200: Success 400: Bad request: the sent request does not meet the API specification. Please check the error message(s) for more information. 406: Not acceptable: no content is available in the desired language specified in Accept-Language request header. 500: Internal server error: the server encountered an unexpected condition that prevented it from fulfilling the request. The request should not be automatically retried. 503: Service unavailable: the server is currently unable to handle the request due to a temporary overload or scheduled maintenance, which will likely be alleviated after some delay. ``` -------------------------------- ### bol.com Marketing API - Product Ratings Source: https://api.bol.com/marketing/docs/api-reference/catalog-api-v1 Retrieves the average rating and rating distribution for a product identified by its EAN. Supports JSON content type. ```APIDOC GET /marketing/catalog/v1/products/{ean}/ratings https://api.bol.com/marketing/catalog/v1/products/{ean}/ratings Parameters: ean (required, string): The 13-digit European Article Number of the product. Responses: 200 OK: Successful retrieval of product ratings. 400 Bad request: The request does not meet the API specification. 404 Not found: No content could be found matching the criteria, or the EAN is not known. 500 Internal server error: An unexpected server error occurred. 503 Service unavailable: The server is temporarily unable to handle the request. Response Body (application/json): { "ean": "string", "averageRating": 0.0, "ratings": [ { "rating": 0, "count": 0 } ] } ``` -------------------------------- ### Bol.com Marketing API - Convert BolProductId to EAN Source: https://api.bol.com/marketing/docs/api-reference/catalog-api-v1 Converts a given Bol Product ID to its corresponding EAN. This endpoint is useful for translating internal product identifiers to the standard EAN format. ```APIDOC GET /marketing/catalog/v1/products/{bolProductId}/to-ean URL: https://api.bol.com/marketing/catalog/v1/products/{bolProductId}/to-ean Path Parameters: bolProductId (string, required): The bol product ID. Example: 9200000099487092 Responses: 200 OK 400 Bad request 404 Not found 500 Internal server error 503 Service unavailable Response Body (application/json): { "ean": "0842776106209" } ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.