### Retailer API - Offer Payload Example Source: https://api.bol.com/retailer/public/redoc/v10/retailer Example JSON payload for creating or updating an offer with fulfillment details. ```APIDOC Content type: application/vnd.retailer.v10+json { "economicOperatorId": "90bfddc5-a6d0-4986-9253-407b3a6850ca", "reference": "REF12345", "onHoldByRetailer": false, "unknownProductTitle": "Unknown Product Title", "fulfilment": { "method": "FBR", "deliveryCode": "24uurs-23" } } ``` -------------------------------- ### Retailer API - Process Status Response Example Source: https://api.bol.com/retailer/public/redoc/v10/retailer Example JSON response indicating the status of a processed request, including success or error messages and links to related resources. ```APIDOC Content type: application/vnd.retailer.v10+json { "processStatusId": "1234567", "entityId": "987654321", "eventType": "CREATE_SHIPMENT", "description": "Example process status description for processing 987654321.", "status": "SUCCESS", "errorMessage": "Example process status error message.", "createTimestamp": "2018-11-14T09:34:41+01:00", "links": [ { "rel": "string", "href": "string", "hreflang": "string", "media": "string", "title": "string", "type": "string", "deprecation": "string", "profile": "string", "name": "string" } ] } ``` -------------------------------- ### Bol.com Retailer API: Response Samples Source: https://api.bol.com/retailer/public/redoc/v10/retailer Provides example JSON structures for API responses, including process status and offer details. ```APIDOC ## Response samples * 202 * 400 Content type application/vnd.retailer.v10+json Copy Expand all Collapse all `{ * "processStatusId": "1234567", * "entityId": "987654321", * "eventType": "CREATE_SHIPMENT", * "description": "Example process status description for processing 987654321.", * "status": "SUCCESS", * "errorMessage": "Example process status error message.", * "createTimestamp": "2018-11-14T09:34:41+01:00", * "links": [ * { * "rel": "string", * "href": "string", * "hreflang": "string", * "media": "string", * "title": "string", * "type": "string", * "deprecation": "string", * "profile": "string", * "name": "string" } ] } ` ## Response samples * 200 * 404 Content type application/vnd.retailer.v10+json Copy Expand all Collapse all `{ * "offerId": "6ff736b5-cdd0-4150-8c67-78269ee986f5", * "ean": "0000007740404", * "reference": "REF12345", * "onHoldByRetailer": false, * "economicOperatorId": "90bfddc5-a6d0-4986-9253-407b3a6850ca", * "unknownProductTitle": "Unknown Product Title", * "pricing": { * "bundlePrices": [ * { * "quantity": 1, * "unitPrice": 9.99 } ] }, * "stock": { * "amount": 6, * "correctedStock": 5, * "managedByRetailer": false }, * "fulfilment": { * "method": "FBR", * "deliveryCode": "24uurs-23" }, * "store": { * "productTitle": "Product Title", * "visible": [ * { * "countryCode": "NL" } ] }, * "condition": { * "name": "AS_NEW", * "category": "SECONDHAND", * "comment": "Heeft een koffie vlek op de kaft." }, * "notPublishableReasons": [ * { * "code": "4003", * "description": "The seller is on holiday." } ] } ` ``` -------------------------------- ### Retailer API - Update Offer Price Payload Example Source: https://api.bol.com/retailer/public/redoc/v10/retailer Example JSON payload for updating the price of an offer, specifying bundle pricing with quantity and unit price. ```APIDOC Content type: application/vnd.retailer.v10+json { "pricing": { "bundlePrices": [ { "quantity": 1, "unitPrice": 9.99 } ] } } ``` -------------------------------- ### Offer Insights Response Sample Source: https://api.bol.com/retailer/public/redoc/v10/retailer Example response structure for offer insights, detailing metrics like BUY_BOX_PERCENTAGE across different countries and periods. ```APIDOC { "offerInsights": [ { "name": "BUY_BOX_PERCENTAGE", "type": "percentage", "total": 50, "countries": [ { "countryCode": "NL", "value": 100 } ], "periods": [ { "period": { "day": 1, "week": 49, "month": 12, "year": 2019 }, "total": 50, "countries": [ { "countryCode": "NL", "value": 100 } ] } ] } ] } ``` -------------------------------- ### Get Delivery Dates Response Sample Source: https://api.bol.com/retailer/public/redoc/v10/retailer Sample JSON response for the Get Delivery Dates API, containing a list of delivery dates. ```JSON { "deliveryDates": "2021-01-02" } ``` -------------------------------- ### Bol.com Retailer API v1.0 - Get Shipment List Response Sample Source: https://api.bol.com/retailer/public/redoc/v10/retailer Example JSON response for retrieving a list of shipments from the Bol.com Retailer API v1.0, including shipment details and associated order information. ```json { "shipments": [ { "shipmentId": "541757635", "shipmentDateTime": "2018-04-17T10:55:37+02:00", "shipmentReference": "BOLCOM001", "order": { "orderId": "4123456789", "orderPlacedDateTime": "2018-04-17T10:55:37+02:00" }, "shipmentItems": [ { "orderItemId": "1234567891", "ean": "0000007740404" } ], "transport": { "transportId": "312778947" } } ] } ``` -------------------------------- ### Get Commissions by Multiple EANs (BETA) Source: https://api.bol.com/retailer/public/redoc/v10/retailer Gets a list of commissions for multiple products using their EANs. This endpoint is in Beta and processes a list of EANs in the request body. ```APIDOC POST /retailer/commissions https://api.bol.com/retailer/commissions Request Body (application/vnd.retailer.v10+json): { "products": [ { "ean": "0000007740404" } ] } Responses: 207 Multi-status: Retrieved successful and unsuccessful results. 400 Bad request: The sent request does not meet the API specification. Response Sample (207): { "successfulQueries": [ { "index": 0, "status": 200, "commissionRates": [ { "ean": "0000007740404", "dateRanges": [ { "startDate": "1970-01-01", "endDate": "1970-01-01", "rates": [ { "condition": "NEW", "priceRanges": [ null ] } ] } ] } ] } ], "failedQueries": [ { "index": 1, "status": 400, "violations": [ { "name": "exampleValue", "reason": "Request contains invalid value(s): 'INVALID', allowed values: ALLOWED_VALUE1, ALLOWED_VALUE2." } ] } ] } ``` -------------------------------- ### Get Products in Promotion Source: https://api.bol.com/retailer/public/redoc/v10/retailer Retrieves a paginated list of products associated with a specific promotion. Allows filtering by page number. ```APIDOC GET /retailer/promotions/{promotion-id}/products https://api.bol.com/retailer/promotions/{promotion-id}/products Path Parameters: - promotion-id (string, required): The identifier of the promotion. Query Parameters: - page (integer, optional, default: 1): The requested page number with a page size of 50 items. Responses: - 200 Ok: Successfully processed the request. - 400 Bad request: The sent request does not meet the API specification. Response Sample (200): { "products": [ { "ean": "0000007740404", "relevanceScores": [ { "countryCode": "NL", "relevanceScore": 72 } ], "maximumPrice": 21.5 } ] } ``` -------------------------------- ### Request Product Destinations Payload Source: https://api.bol.com/retailer/public/redoc/v10/retailer Example JSON payload for requesting product destinations, containing a list of EAN objects. ```JSON { "eans": [ { "ean": "0000007740404" } ] } ``` -------------------------------- ### Bol.com Retailer API v1.0 - Handling Result Request Sample Source: https://api.bol.com/retailer/public/redoc/v10/retailer Example JSON payload for a handling result request, specifying the quantity returned for a handling operation. ```json { "handlingResult": "RETURN_RECEIVED", "quantityReturned": 1 } ``` -------------------------------- ### Bol.com Retailer API - Get Returns Source: https://api.bol.com/retailer/public/redoc/v10/retailer Retrieves a paginated list of returns, either handled or unhandled. Supports filtering by fulfillment method. Requires OAuth2 authorization. Supports GET requests. ```APIDOC GET /retailer/returns https://api.bol.com/retailer/returns Query Parameters: - page (integer, optional, >= 1): The page number to retrieve (default: 1). - handled (boolean, optional): Filter by handled status. - fulfilment-method (string, optional, enum: "FBR", "FBB"): Filter by fulfillment method. Responses: - 200 Ok: Successfully processed the request. - 400 Bad request: The sent request does not meet the API specification. Response Sample (200): { "returns": [ { "returnId": "1", "registrationDateTime": "2016-11-14T11:06:48.423+01:00", "fulfilmentMethod": "FBR", "returnItems": [ { "rmaId": "31234567", "orderId": "4012345678", "ean": "9789076174082", "expectedQuantity": 1, "returnReason": { "mainReason": "Niet naar verwachting", "detailedReason": "Niet naar verwachting", "customerComments": "Lorem Ipsum" }, "handled": true, "processingResults": [ { "quantity": 1, "processingResult": "ACCEPTED", "handlingResult": "RETURN_RECEIVED", "processingDateTime": "2018-04-17T10:55:37+02:00" } ] } ] } ] } ``` -------------------------------- ### Bol.com Retailer API v1.0 - Shipment Creation Response Sample Source: https://api.bol.com/retailer/public/redoc/v10/retailer Example JSON response for the shipment creation endpoint of the Bol.com Retailer API v1.0, indicating the status of the shipment processing. ```json { "processStatusId": "1234567", "entityId": "987654321", "eventType": "CREATE_SHIPMENT", "description": "Example process status description for processing 987654321.", "status": "SUCCESS", "errorMessage": "Example process status error message.", "createTimestamp": "2018-11-14T09:34:41+01:00", "links": [ { "rel": "string", "href": "string", "hreflang": "string", "media": "string", "title": "string", "type": "string", "deprecation": "string", "profile": "string", "name": "string" } ] } ``` -------------------------------- ### Get List of Promotions Source: https://api.bol.com/retailer/public/redoc/v10/retailer Retrieves a paginated list of all promotions for a retailer. Requires OAuth2 authorization. Supports filtering by promotion type. ```APIDOC GET /retailer/promotions https://api.bol.com/retailer/promotions Parameters: promotion-type (string, required, enum: "AWARENESS", "PRICE_OFF"): The type(s) of promotion to retrieve. page (integer, optional, >= 1): The requested page number (default: 1). Responses: 200 Ok: Successfully processed the request. 400 Bad request: The sent request does not meet the API specification. Content Type: application/vnd.retailer.v10+json Response Body Example: { "promotions": [ { "promotionId": "1234", "title": "Promotion title", "startDateTime": "2021-03-29T00:00:00+02:00", "endDateTime": "2021-05-10T00:00:00+02:00", "countries": [ { "countryCode": "NL" } ], "promotionType": "AWARENESS", "retailerSpecificPromotion": false, "campaign": { "name": "Campaign name", "startDateTime": "2021-03-29T00:00:00+02:00", "endDateTime": "2021-05-10T00:00:00+02:00" } } ] } ``` -------------------------------- ### Create Shipment Request Payload Source: https://api.bol.com/retailer/public/redoc/v10/retailer Example JSON payload for creating a shipment, including reference, delivery information, labeling preference, number of load carriers, pickup appointment details, and item lines. ```JSON { "reference": "REFERENCE1", "deliveryInfo": { "expectedDeliveryDate": "2021-01-01", "transporterCode": "POSTNL" }, "labelingByBol": false, "numberOfLoadCarriers": 10, "pickupAppointment": { "address": { "streetName": "Dorpstraat", "houseNumber": "1", "zipCode": "1111ZZ", "houseNumberExtension": "B", "city": "Utrecht", "countryCode": "NL", "attentionOf": "Billie Bol" }, "pickupTimeSlot": { "fromDateTime": "2021-01-01T09:00:00+01:00", "untilDateTime": "2021-01-01T10:00:00+01:00" }, "commentToTransporter": "Eerste verdieping." }, "lines": [ { "ean": "0000007740404", "quantity": 1 } ] } ``` -------------------------------- ### Get All Invoices API Source: https://api.bol.com/retailer/public/redoc/v10/retailer Retrieves a list of invoices, with an option to specify a date range. Invoices and their specifications can be downloaded separately. Requires OAuth2 authorization. ```APIDOC Description: Gets a list of invoices, by default from the past 4 weeks. The optional period-start-date and period-end-date-date parameters can be used together to retrieve invoices from a specific date range in the past, the period can be no longer than 31 days. Invoices and their specifications can be downloaded separately in different media formats with the ‘GET an invoice by id’ and the ‘GET an invoice specification by id’ calls. The available media types differ per invoice and are listed per invoice within the response. Note: the media types listed in the response must be given in our standard API format. Authorizations: _OAuth2_ ``` -------------------------------- ### Post Pickup Time Slots Response Payload Source: https://api.bol.com/retailer/public/redoc/v10/retailer Example JSON response for the Post Pickup Time Slots API, containing a list of available time slots with from and until date-times. ```JSON { "timeSlots": [ { "fromDateTime": "2021-01-01T09:00:00+01:00", "untilDateTime": "2021-01-01T10:00:00+01:00" } ] } ``` -------------------------------- ### Bol.com Retailer API - Get Product List Response Sample Source: https://api.bol.com/retailer/public/redoc/v10/retailer Sample JSON response for a product list request, containing product details such as title and EANs, along with the sorting applied. ```APIDOC { "products": [ { "title": "Product title", "eans": [ { "ean": "0000007740404" } ] } ], "sort": "RELEVANCE" } ``` -------------------------------- ### Get Price Star Boundaries by EAN Source: https://api.bol.com/retailer/public/redoc/v10/retailer Retrieves a list of all price star boundaries for a given product EAN. Requires OAuth2 authorization. ```APIDOC GET /retailer/products/{ean}/price-star-boundaries https://api.bol.com/retailer/products/{ean}/price-star-boundaries Parameters: ean (string, required): The EAN number of the product. Responses: 200 Ok: Successfully processed the request. 400 Bad request: The sent request does not meet the API specification. 404 Not found: The requested item could not be found. Content Type: application/vnd.retailer.v10+json Response Body Example: { "lastModifiedDateTime": "2022-01-07T03:18:38.228164+01:00", "priceStarBoundaryLevels": [ { "level": 5, "boundaryPrice": 41 } ] } ``` -------------------------------- ### Bol.com Retailer API - Get Product Categories Source: https://api.bol.com/retailer/public/redoc/v10/retailer API endpoint to retrieve a list of available product categories and their subcategories. Requires 'Accept-Language' header for localization. ```APIDOC GET /retailer/products/categories https://api.bol.com/retailer/products/categories Header Parameters: Accept-Language: string Enum: "nl" "nl-BE" "nl-NL" "fr-BE" Example: nl The language in which the product categories will be retrieved. Responses: 200: Ok: Successfully processed the request. 400: Bad request: The sent request does not meet the API specification. Please check the error message(s) for more information. 406: Not acceptable: The sent request header does not meet the API specification. Please check the error message(s) for more information. ``` -------------------------------- ### Get Chunk Recommendations API Source: https://api.bol.com/retailer/public/redoc/v10/retailer Retrieves a specified number of recommendations for a given product. Requires OAuth2 authorization and accepts a JSON payload with product content attributes. ```APIDOC POST /retailer/content/chunk-recommendations https://api.bol.com/retailer/content/chunk-recommendations Description: Gets a selected number of recommendations for a product. Authorizations: _OAuth2_ Request Body schema: application/vnd.retailer.v10+json Parameters: productContents: Array of objects (ChunkRecommendationsAttributes) - Required, minimum 1 item Responses: 200: Ok - Successfully processed the request. 400: Bad request - The sent request does not meet the API specification. Please check the error message(s) for more information. Request samples: Payload (application/vnd.retailer.v10+json): { "productContents": [ { "attributes": [ { "id": "Name", "values": [ { "value": "Bananas" } ] } ] } ] } Response samples (application/vnd.retailer.v10+json): { "recommendations": [ { "predictions": [ { "chunkId": "80007268", "probability": 0.120168649 } ] } ] } ``` -------------------------------- ### Get Competing Offers by EAN Source: https://api.bol.com/retailer/public/redoc/v10/retailer Retrieves a list of competing offers for a product by its EAN. Allows filtering by country, best offer only, and product condition. Supports pagination. ```APIDOC GET /retailer/products/{ean}/offers https://api.bol.com/retailer/products/{ean}/offers Parameters: Path: ean: string Example: 0000007740404 The EAN number associated with this product. Query: page: integer [ 1 .. 200 ] Default: 1 Example: page=1 The requested page number with a page size of 50 items. country-code: string Enum: "NL" "BE" Example: country-code=NL Countries in which this offer is currently on sale in the webshop, in ISO-3166-1 format. best-offer-only: boolean Default: false Example: best-offer-only=true Indicator to request the best offer within the country for the requested EAN. condition: string Enum: "ALL" "BAD" "MODERATE" "REASONABLE" "GOOD" "AS_NEW" "NEW" Example: condition=NEW The condition of the offered product. Responses: 200: Ok: Successfully processed the request. 400: Bad request: The sent request does not meet the API specification. Please check the error message(s) for more information. 404: Not found: The requested item could not be found. Response Body Example: { "offers": [ { "offerId": "228b6d06-2067-4cef-8447-c21d0c233e61", "retailerId": "0", "countryCode": "NL", "bestOffer": true, "price": 41.5, "fulfilmentMethod": "FBB", "condition": "NEW", "ultimateOrderTime": "23:59", "minDeliveryDate": "2022-10-20", "maxDeliveryDate": "2022-10-21" } ] } ``` -------------------------------- ### Get Product Assets Source: https://api.bol.com/retailer/public/redoc/v10/retailer Retrieves a list of assets available for a product, identified by its EAN. Supports filtering assets by usage type (PRIMARY, ADDITIONAL, IMAGE). Requires OAuth2 authorization. ```APIDOC GET /retailer/products/{ean}/assets https://api.bol.com/retailer/products/{ean}/assets Parameters: Path: ean: string Example: 0000007740404 The EAN number associated with this product. Query: usage: string Enum: "PRIMARY" "ADDITIONAL" "IMAGE" Example: usage=ADDITIONAL Type of the asset being used for. Responses: 200: Ok: Successfully processed the request. 400: Bad request: The sent request does not meet the API specification. Please check the error message(s) for more information. 404: Not found: The requested item could not be found. Response Body Example: { "assets": [ { "usage": "ADDITIONAL", "order": 0, "variants": [ { "size": "small", "width": 250, "height": 200, "mimeType": "image/jpeg", "url": "string" } ] } ] } ``` -------------------------------- ### Post Pickup Time Slots Request Payload Source: https://api.bol.com/retailer/public/redoc/v10/retailer Example JSON payload for requesting pickup time slots, including address details and the number of load carriers. ```JSON { "address": { "streetName": "Dorpstraat", "houseNumber": "1", "houseNumberExtension": "B", "zipCode": "1111ZZ", "city": "Utrecht", "countryCode": "NL" }, "numberOfLoadCarriers": 1 } ``` -------------------------------- ### Commissions - Get all commissions and reductions by EAN in bulk Source: https://api.bol.com/retailer/public/redoc/v10/retailer Retrieves all commissions and possible reductions for a given EAN, price, and optionally condition. Supports bulk queries for up to 100 items. ```APIDOC POST /retailer/commission URL: https://api.bol.com/retailer/commission Description: Gets all commissions and possible reductions by EAN, price, and optionally condition. Authorizations: OAuth2 Request Body schema: application/vnd.retailer.v10+json commissionQueries: Array of objects (BulkCommissionQuery) [1..100 items] ean: EAN of the product (string, required) condition: Condition of the product (string, optional) unitPrice: Unit price of the product (number, optional) Responses: 200 Ok: Successfully processed the request. 400 Bad request: The sent request does not meet the API specification. 404 Not found: The requested item could not be found. Request samples: Payload: Content type: application/vnd.retailer.v10+json { "commissionQueries": [ { "ean": "0000007740404", "condition": "NEW", "unitPrice": 59 } ] } ``` -------------------------------- ### Create Shipment Response Payload Source: https://api.bol.com/retailer/public/redoc/v10/retailer Example JSON response payload for a shipment creation request, indicating process status, entity ID, event type, description, status, error message, and timestamps. ```JSON { "processStatusId": "1234567", "entityId": "987654321", "eventType": "CREATE_SHIPMENT", "description": "Example process status description for processing 987654321.", "status": "SUCCESS", "errorMessage": "Example process status error message.", "createTimestamp": "2018-11-14T09:34:41+01:00", "links": [ { "rel": "string", "href": "string", "hreflang": "string", "media": "string", "title": "string", "type": "string", "deprecation": "string", "profile": "string", "name": "string" } ] } ``` -------------------------------- ### Get Invoices Source: https://api.bol.com/retailer/public/redoc/v10/retailer Retrieves a list of invoices based on a specified date range. Supports filtering by period start and end dates in ISO 8601 format. ```APIDOC GET /retailer/invoices https://api.bol.com/retailer/invoices Query Parameters: period-start-date: string (Example: 2019-03-01) Period start date in ISO 8601 standard. period-end-date: string (Example: 2019-03-31) Period end date in ISO 8601 standard. Responses: 200: Ok: Successfully processed the request. 400: Bad request: The sent request does not meet the API specification. ``` -------------------------------- ### Bol.com Retailer API - Product Upload Response Sample Source: https://api.bol.com/retailer/public/redoc/v10/retailer Sample JSON response for a product upload, detailing status, language, attributes, and assets. Includes status and sub-status for attributes and assets. ```APIDOC { "uploadId": "3fa90f24-5b44-417f-b212-5cd18ce64c0e", "language": "nl", "status": "IN_PROGRESS", "attributes": [ { "id": "Width", "values": [ { "value": "14.5", "unitId": "mm" } ], "status": "DECLINED", "subStatus": "INVALID_NUMBER", "subStatusDescription": "The provided number is not correct." } ], "assets": [ { "url": "http://example.com", "labels": [ "FRONT" ], "status": "DECLINED", "subStatus": "DOWNLOAD_FAILED_404", "subStatusDescription": "Failed to download." } ] } ``` -------------------------------- ### Bol.com Retailer API: Offer Creation Response Source: https://api.bol.com/retailer/public/redoc/v10/retailer Example JSON response for offer creation, indicating the process status. Includes fields like processStatusId, entityId, eventType, description, status, errorMessage, createTimestamp, and links. ```JSON { "processStatusId": "1234567", "entityId": "987654321", "eventType": "CREATE_SHIPMENT", "description": "Example process status description for processing 987654321.", "status": "SUCCESS", "errorMessage": "Example process status error message.", "createTimestamp": "2018-11-14T09:34:41+01:00", "links": [ { "rel": "string", "href": "string", "hreflang": "string", "media": "string", "title": "string", "type": "string", "deprecation": "string", "profile": "string", "name": "string" } ] } ``` -------------------------------- ### Bol.com Retailer API - Get Pick List Source: https://api.bol.com/retailer/public/redoc/v10/retailer Retrieves the pick list for a specific replenishment. Requires OAuth2 authorization. Supports GET requests. ```APIDOC GET /retailer/replenishments/{replenishment-id}/pick-list https://api.bol.com/retailer/replenishments/{replenishment-id}/pick-list Path Parameters: - replenishment-id (string, required): The unique identifier of the replenishment. Responses: - 200 Ok: Successfully processed the request. - 400 Bad request: The sent request does not meet the API specification. - 404 Not found: The requested item could not be found. ``` -------------------------------- ### Get Invoice by ID Source: https://api.bol.com/retailer/public/redoc/v10/retailer Retrieves a specific invoice using its unique identifier. The available media types for the invoice are detailed in the response of the 'GET all invoices' call. ```APIDOC GET /retailer/invoices/{invoice-id} https://api.bol.com/retailer/invoices/{invoice-id} Path Parameters: invoice-id: string (required) The id of the invoice. Responses: 200: Ok: Successfully processed the request. 400: Bad request: The sent request does not meet the API specification. ``` -------------------------------- ### Create Product Content API Source: https://api.bol.com/retailer/public/redoc/v10/retailer Creates content for an existing product. Supports multiple languages and up to 150 attributes, along with assets like images. Requires OAuth2 authorization. ```APIDOC POST /retailer/content/products https://api.bol.com/retailer/content/products Description: Create content for an existing product. Authorizations: _OAuth2_ Request Body schema: application/vnd.retailer.v10+json Parameters: language: string non-empty - Required. Enum: "nl", "nl-BE", "fr", "fr-BE". The language in which content is submitted. attributes: Array of objects (Attribute) - Required, between 1 and 150 items. A list of attributes. Every content update request should have one "EAN" attribute to link changes to a proper product. assets: Array of objects (Asset) - Optional, between 0 and 30 items. Responses: 202: Accepted - Successfully scheduled the request for processing. 400: Bad request - The sent request does not meet the API specification. Please check the error message(s) for more information. Request samples: Payload (application/vnd.retailer.v10+json): { "language": "nl", "attributes": [ { "id": "Width", "values": [ { "value": "14.5", "unitId": "mm" } ] } ], "assets": [ { "url": "http://example.com", "labels": [ "FRONT" ] } ] } Response samples (application/vnd.retailer.v10+json): { "processStatusId": "1234567", "entityId": "987654321", "eventType": "CREATE_SHIPMENT", "description": "Example process status description for processing 987654321.", "status": "SUCCESS", "errorMessage": "Example process status error message.", "createTimestamp": "2018-11-14T09:34:41+01:00", "links": [ { "rel": "string", "href": "string", "hreflang": "string", "media": "string", "title": "string", "type": "string", "deprecation": "string", "profile": "string", "name": "string" } ] } ``` -------------------------------- ### Process Status Sample - API Source: https://api.bol.com/retailer/public/redoc/v10/retailer Provides a sample JSON response for a process status, including status ID, entity ID, event type, description, status, error message, timestamps, and links. ```APIDOC { "processStatusId": "1234567", "entityId": "987654321", "eventType": "CREATE_SHIPMENT", "description": "Example process status description for processing 987654321.", "status": "SUCCESS", "errorMessage": "Example process status error message.", "createTimestamp": "2018-11-14T09:34:41+01:00", "links": [ { "rel": "string", "href": "string", "hreflang": "string", "media": "string", "title": "string", "type": "string", "deprecation": "string", "profile": "string", "name": "string" } ] } ``` -------------------------------- ### Bol.com Retailer API: Process Status Response Sample Source: https://api.bol.com/retailer/public/redoc/v10/retailer Provides a sample JSON response for a process status, including status ID, entity ID, event type, description, status, error message, timestamps, and links. ```APIDOC GET /retailer/replenishments/product-destinations/{product-destinations-id} Response Sample (200 OK): { "processStatusId": "1234567", "entityId": "987654321", "eventType": "CREATE_SHIPMENT", "description": "Example process status description for processing 987654321.", "status": "SUCCESS", "errorMessage": "Example process status error message.", "createTimestamp": "2018-11-14T09:34:41+01:00", "links": [ { "rel": "string", "href": "string", "hreflang": "string", "media": "string", "title": "string", "type": "string", "deprecation": "string", "profile": "string", "name": "string" } ] } ``` -------------------------------- ### Create Offer Source: https://api.bol.com/retailer/public/redoc/v10/retailer Creates a new offer and adds it to the catalog. Includes details for EAN, economic operator ID, condition, pricing, stock, and fulfillment. Status information can be retrieved after creation. ```APIDOC POST /retailer/offers https://api.bol.com/retailer/offers Request Body (application/vnd.retailer.v10+json): ean: string (required, non-empty) The EAN number of the product. economicOperatorId: string An identifier for the economic operator. condition: object (Condition) (required) reference: string [0..100] characters A user-defined reference for the offer. onHoldByRetailer: boolean (default: false) Suspends the offer listing. unknownProductTitle: string [0..500] characters Used if the item is not known to bol.com. pricing: object (Pricing) (required) stock: object (StockCreate) (required) fulfilment: object (Fulfilment) (required) Responses: 202: Accepted: Successfully scheduled the request for processing. 400: Bad request: The sent request does not meet the API specification. ``` -------------------------------- ### Bol.com Retailer API - Get Product List Source: https://api.bol.com/retailer/public/redoc/v10/retailer API endpoint to get a list of products based on category, search term, or filters. Supports filtering, sorting, and pagination. ```APIDOC POST /retailer/products/list https://api.bol.com/retailer/products/list Header Parameters: Accept-Language: string Enum: "nl" "nl-BE" "nl-NL" "fr-BE" Example: nl The language in which the product list will be retrieved. Request Body schema: application/json countryCode: string Default: "NL" Enum: "NL" "BE" The country for which the products will be retrieved. searchTerm: string [ 1 .. 50 ] characters The search term to get the associated products for. categoryId: string [ 1 .. 11 ] characters The category to get the associated products for. filterRanges: Array of objects (ProductListFilterRange) [ 0 .. 10 ] items The list of range filters to get associated products for. filterValues: Array of objects (ProductListFilterValue) [ 0 .. 10 ] items The list of filter values in this filter. sort: string Enum: "RELEVANCE" "POPULARITY" "PRICE_ASC" "PRICE_DESC" "RELEASE_DATE" "RATING" "WISHLIST" Determines the order of the products. pagerequired: integer [ 1 .. 200 ] Default: 1 The requested page number with a page size of 50 items. Responses: 200: Ok: Successfully processed the request. 400: Bad request: The sent request does not meet the API specification. Please check the error message(s) for more information. 404: Not found: The requested item could not be found. 406: Not acceptable: The sent request header does not meet the API specification. Please check the error message(s) for more information. ``` -------------------------------- ### Bol.com Retailer API: Create Offer Request Payload Source: https://api.bol.com/retailer/public/redoc/v10/retailer Example JSON payload for creating an offer with product details, pricing, stock, and fulfillment information. Includes fields like EAN, economicOperatorId, condition, reference, pricing, stock, and fulfilment. ```JSON { "ean": "0000007740404", "economicOperatorId": "90bfddc5-a6d0-4986-9253-407b3a6850ca", "condition": { "name": "AS_NEW", "category": "SECONDHAND", "comment": "Heeft een koffie vlek op de kaft." }, "reference": "REF12345", "onHoldByRetailer": false, "unknownProductTitle": "Unknown Product Title", "pricing": { "bundlePrices": [ { "quantity": 1, "unitPrice": 9.99 } ] }, "stock": { "amount": 6, "managedByRetailer": false }, "fulfilment": { "method": "FBR", "deliveryCode": "24uurs-23" } } ``` -------------------------------- ### Bol.com Retailer API - Get Retailer Information Source: https://api.bol.com/retailer/public/redoc/v10/retailer Retrieves information for a single retailer by its ID. Supports 'current' for the authenticated retailer. Requires OAuth2 authorization. Supports GET requests. ```APIDOC GET /retailer/retailers/{retailer-id} https://api.bol.com/retailer/retailers/{retailer-id} Path Parameters: - retailer-id (string, required): The Id of the retailer. Use 'current' for your own retailer account. Responses: - 200 Ok: Successfully processed the request. - 400 Bad request: The sent request does not meet the API specification. - 404 Not found: The requested item could not be found. Response Sample (200): { "retailerId": "1055479", "displayName": "RETAILER123", "companyName": "Fietsentuin", "vatNumber": "NL123456789B01", "kvkNumber": "90005414", "registrationDate": "2015-06-17", "topRetailer": false, "ratingMethod": "THREE_MONTHS", "retailerRating": { "retailerRating": 9.1, "productInformationRating": 9.6, "deliveryTimeRating": 9.4, "shippingRating": 9.4, "serviceRating": 9.4 }, "retailerReview": { "totalReviewCount": 14, "approvalPercentage": 100, "positiveReviewCount": 13, "neutralReviewCount": 1, "negativeReviewCount": 0 } } ``` -------------------------------- ### Bol.com Retailer API v1.0 - Replenishment Response Sample Source: https://api.bol.com/retailer/public/redoc/v10/retailer Provides a sample JSON response for a replenishment, detailing its ID, creation date, state, delivery information, pickup details, load carriers, and lines. ```APIDOC { "replenishmentId": "2312078154", "creationDateTime": "2021-01-01T08:00:00+01:00", "reference": "REFERENCE1", "labelingByBol": false, "state": "ANNOUNCED", "deliveryInformation": { "expectedDeliveryDate": "2021-01-02", "transporterCode": "POSTNL", "destinationWarehouse": { "streetName": "Industrieweg", "houseNumber": "1", "houseNumberExtension": "B", "zipCode": "1111ZZ", "city": "Waalwijk", "countryCode": "NL", "attentionOf": "t.a.v. bol.com" } }, "pickupAppointment": { "commentToTransporter": "Eerste verdieping.", "address": { "streetName": "Dorpstraat", "houseNumber": "1", "houseNumberExtension": "B", "zipCode": "1111ZZ", "city": "Utrecht", "countryCode": "NL", "attentionOf": "Jan Jansen" }, "pickupTimeSlot": { "fromDateTime": "2021-01-01T09:00:00+01:00", "untilDateTime": "2021-01-01T10:00:00+01:00" }, "pickupDateTime": "2021-01-01T09:00:00+01:00", "cancellationReason": "NOT_AT_HOME" }, "numberOfLoadCarriers": 1, "loadCarriers": [ { "sscc": "020001200000007000", "transportLabelTrackAndTrace": "3SJTXX216692157", "transportState": "ANNOUNCED", "transportStateUpdateDateTime": "2021-01-02T09:00:00+01:00" } ], "lines": [ { "ean": "0000007740404", "lineState": "ANNOUNCED", "quantityAnnounced": 1, "quantityReceived": 0, "quantityInProgress": 0, "quantityWithGradedState": 0, "quantityWithRegularState": 0 } ], "invalidLines": [ { "type": "UNKNOWN_FBB_PRODUCT", "quantityAnnounced": 1, "quantityReceived": 0, "quantityInProgress": 0, "quantityWithGradedState": 0, "quantityWithRegularState": 0 } ], "stateTransitions": [ { "state": "ANNOUNCED", "stateDateTime": "2021-01-02T09:00:00+01:00" } ] } ```