Introduction

Manufacturer products API is intended for manufacturers and allows for downloading information about the manufacturer’s products, e.g. about their current availability in online stores cooperating with 100SHOPPERS.

API uses REST architecture and accepts and transmits data in JSON format. The success or error in handling the request is indicated by the appropriate HTTP code of the returned response. The HTTP 200 code means correct execution of the request, other codes indicate an error corresponding to the reported code, e.g. HTTP 401 – authorization error.

Communication

API is only available using the HTTPS protocol at adm.getbuybox.com.

Authorization

Each query requires authorization using the API Key (APIkey) and API Secret (APIsecret), which can be generated independently within the administration panel. The authorization mechanism uses the X-BB-API-Authorization header in which the sequence constructed according to the following pattern should be transferred.

X-BB-API-Authorization: APIkey:signature
signature = HMAC-SHA1( APIsecret, UTF-8-Encoding-Of( stringToSign ) ) 
);
stringToSign = HTTP-VERB + " " + requestPath + "\n" + JSONPayload;

GET query example

GET /api/v1/producer-products/availability

stringToSign = GET /api/v1/producer-products/availability\n

Methods

Downloading information about the availability of products.

Request

GET 	https://adm.getbuybox.com/api/v1/producer-products/availability

Parameters

None

Content of the method call

None

Response

In the case of success, the method returns the following structure in JSON format. E.g.:\

[
   {
      "ean": "1234567890123",
      "availability": [
         {
            "shop": "mediaexpert.pl",
            "available": true
         },
         {
	    "shop": "MediaMarkt",
	    "available": true
         }
      ]
   },
   {
      "ean": "1234567890124",
      "availability": [
         {
            "shop": "mediaexpert.pl",
            "available": false
         },
         {
            "shop": "MediaMarkt",
            "available": true
         }
      ]
   }
]