Välkommen till den 2: a av Prisync API Tutorial serie som syftar till att klargöra API grunden.
I den första blogpost, Jag spekulerade om:
- vilka problem Prisync (och den API V2.0) löser för dig,
- skapa en API-nyckel och token,
- lägga till din första produkt via API V2.0,
- lägga till din webbadress och ett gäng konkurrent webbadresser,
- and batch importing via the API.
Purpose – Prisync API Tutorial
Första sakerna första, I’ll assume that you followed first post and you’ve already added a couple of products to your Prisync account. No worries if you don’t have any products. Just go back and complete the first tutorial or you can add products on your instrumentpanelen. Förutom, we’ll need the make_request method that we used in the first post so that let me recap it below:
It’s a tiny method which calls the API endpoints, adding the authentication headers.
Listing the Products You Have
Prisync API V2.0 has /list/product (link to doc) Endpoint, which basically lists all products on your account.
All you need to do is making a request to the /list/product Endpoint:
The response is below:
Voilà! I got all the products (since I only have 4 of them) in just one request. results is a JSON array, returning list of products up to 100 items. When you have more than 100 produkter, the result is paginated by 100. Therefore in every response, the API returns the next page’s URL so that you can iterate within a for loop.
Each item in the results list represents a single product. So each product contains:
- Category (both name and category ID)
- Brand (both name and brand ID)
- Product Code (SKU, EAN or any other internal product code)
Each product on your Prisync account has several URLs including your own URL and competitor URLs. Another step we reached, we now need to retrieve that URLs.
This is easy to do. What you need is calling the get a particular product (link to doc) Endpoint. Let’s call it for the “iPhone X, GSM Unlocked 5.8 – 64 GB – Space Gray“. I need the product id of it and it lays down in the /list/product request response:
“Namn”: “iPhone X, GSM Unlocked 5.8 – 64 GB – Space Gray”,
Getting the Particular Product
Seems like we are almost there. Let’s put the ID into the URL and call make_request method:
Here is the response:
This endpoint returns more details about the product, som product_cost, external_ref, smart_price och URL: er. Consequently we are interested in URL: er, so we’ll dive into others in next posts.
Since we want to focus on urls field let’s dig it up. It contains an array of integers, each pointing to a URL belonging to this product. In this product, Det finns 4 URLs whose IDs are 8273503, 8273504, 8273505 och 8273506.
Due to we have IDs of the URLs, next step is calling get a specific URL (link to doc) Endpoint.
Getting a Particular URL
It is just a simple for loop iterating over all URL IDs and getting URL details:
…and here is the output of the piece of code:
… (Det finns 3 other URL data, so I just removed them for the sake of simplicity.)
In the URL details, there is several fields and most of them self explanatory. For the details of each field, you can look up in the API docs.
Since we have all the competitor prices, it is easy to write a piece of code to find the items which got mer än 10% discounts today:
Slutligen, the output is:
Discount alert at https://www.coolblue.nl/Product/793610/Apple-iPhone-x-64gb-Zilver.html
And finally we know that coolblue.nl discounted the price more than 10% idag.
To sum up all the code of this post:
There are numerous things to do if you have access to the competitor prices, which Prisync can proudly present. Just to mention a few of them:
- First of all you can monitor your competitors actively and generate custom alerts depending on your pricing strategy.
- in addition to that, set your prices when the market is stale so that you can create volatility, which directly affects your profit margins.
- Another feature you can develop is ignoring discounts if the stock is not available on the competitor.
- in addition, you can implement other ideas that you and your team come up with!
Thanks for following up to this point. This is the second post of our API article series. See you in next posts of Prisync API Tutorial Series.