├── AWLAB ├── AWLAB-Instore.md └── get-coordinates.png ├── Courir └── Courir-Stock.md ├── EndClothing └── All-Raffles.md ├── Euronics ├── Euronics-Instore.md └── get-coordinates.png ├── Fendi ├── Fendi-Instore.md └── get-coordinates.png ├── Footshop └── Stock-API.md ├── GameUK └── GAMEUK-Instore.md ├── Kickz └── Instore-PID-checker.md ├── Nike └── Deeplinks.md ├── Prodirect ├── ReleaseScraper.md └── prodirect_scraper.py ├── README.md ├── Rimowa ├── Rimowa-Instore.md └── example.png ├── Snipes └── Loaded-products.md ├── Solebox └── Loaded-products.md └── banner.png /AWLAB/AWLAB-Instore.md: -------------------------------------------------------------------------------- 1 | ## AwLab In-Store Availability Check 2 | 3 | To check in-store availability for Fendi products, use the following endpoint format: 4 | ``` 5 | https://www.aw-lab.com/on/demandware.store/Sites-awlab-it-Site/it_IT/Stores-FindClickReserve?lat={latitude}&pid={pid}&distancesMap=true&lng={longitude}&color={color}&sizeKey=h05&sizeValue=&format=ajax&mapRadius=100000 6 | ``` 7 | 8 | - `{pid}` is the Product ID. 9 | - `{color}` is the Product Color 10 | - `{latitude}` and `{longitude}` need to be replaced with the coordinates of the store location. 11 | 12 | ### Obtaining Latitude and Longitude 13 | To find the latitude and longitude of a store, follow these steps on Google Maps: 14 | 15 | 1. On your computer, open Google Maps. 16 | 2. Right-click the place or area on the map. This opens a pop-up window. 17 | 3. Find your latitude and longitude in decimal format at the top of the menu. 18 | 19 | ![Instructions for obtaining coordinates](get-coordinates.png) 20 | 21 | ### Finding the Product ID (PID) & Color 22 | 23 | You can get the data from the URL of the product page: 24 | ``` 25 | https://en.aw-lab.com/women/shoes-AW_100HEOHEOB.html?dwvar_AW__100HEOHEOB_color=5038259 26 | ``` 27 | The PID here is `AW_100HEOHEOB`. 28 | The Color here is `5038259`. 29 | 30 | ### Example Link 31 | ``` 32 | https://www.aw-lab.com/on/demandware.store/Sites-awlab-it-Site/it_IT/Stores-FindClickReserve?lat=41.9028&pid=AW_221CECCEGA&distancesMap=true&lng=12.4964&color=8041540&sizeKey=h05&sizeValue=&format=ajax&mapRadius=100000 33 | ``` 34 | -------------------------------------------------------------------------------- /AWLAB/get-coordinates.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/44ps/endpoints/76b17d6913f48d2c1dd2d3f55cc5df9208a74ae5/AWLAB/get-coordinates.png -------------------------------------------------------------------------------- /Courir/Courir-Stock.md: -------------------------------------------------------------------------------- 1 | ## HOW TO SCRAPE COURIR EXACT STOCK FOR A GIVEN PID 2 | 3 | To get the stock for a given size / product : 4 | ``` 5 | https://www.courir.com/on/demandware.store/Sites-Courir-FR-Site/fr_FR/Product-GetAvailability?pid= PID &Quantity=100000 6 | ``` 7 | 8 | ### HOW TO GET THE PID OR SIZEPID 9 | PID : Can be found at the end of the URL of any product. 10 | SIZEPID : 3 methods 11 | Method 1 - Bruteforce - you can get all sizepids with the format PID010X 12 | Start with X = 1 then increment until you get a 503 error, meaning you went over the last sizepid 13 | Method 2 - HTML - You can find all sizepids in the HTML code of the product page 14 | Method 3 - Other endpoints 15 | -------------------------------------------------------------------------------- /EndClothing/All-Raffles.md: -------------------------------------------------------------------------------- 1 | # AllRaffles.md 2 | 3 | To view all the raffles currently hosted by END. Clothing, use the following API endpoint: 4 | 5 | ``` 6 | https://launches-api.endclothing.com/api/products/offset/0 7 | ``` 8 | 9 | This endpoint provides a comprehensive list of all the raffles open for participation on the END. Clothing platform. 10 | 11 | ### How to Use 12 | 13 | Access this API endpoint directly through your web browser to retrieve a JSON response that includes all the current raffles. This response contains detailed information such as product names, available sizes, and the closing dates for entries. 14 | 15 | ### JSON Response Structure 16 | 17 | The API response is structured in JSON format, offering a clear and detailed overview of each raffle. Below is an example of what the JSON response might look like: 18 | 19 | ```json 20 | { 21 | "count": 6012, 22 | "products": [ 23 | { 24 | "id": 7208, 25 | "magentoSku": "FN0432-100", 26 | "colour": "Sail, Varsity Red & Muslin", 27 | "brand": "Air Jordan", 28 | "name": "Air Jordan x Trophy Room 1 Low Retro OG SP", 29 | "thumbnailUrl": "https://launches-media.endclothing.com/FN0432-100_launches_thumbnail.jpg", 30 | "releaseDate": "2024-03-21T08:00:00+00:00", 31 | "productWebsites": [ 32 | { 33 | "id": 167176, 34 | "website": { 35 | "id": 1, 36 | "currencySymbol": "£", 37 | "currencyCode": "GBP" 38 | }, 39 | "price": 145 40 | }, 41 | { 42 | "id": 167177, 43 | "website": { 44 | "id": 2, 45 | "currencySymbol": " $", 46 | "currencyCode": "USD" 47 | }, 48 | "price": 165 49 | }, 50 | { 51 | "id": 167178, 52 | "website": { 53 | "id": 3, 54 | "currencySymbol": "€", 55 | "currencyCode": "EUR" 56 | }, 57 | "price": 169 58 | }, 59 | { 60 | "id": 167179, 61 | "website": { 62 | "id": 4, 63 | "currencySymbol": "AU$", 64 | "currencyCode": "AUD" 65 | }, 66 | "price": 265 67 | }, 68 | { 69 | "id": 167180, 70 | "website": { 71 | "id": 5, 72 | "currencySymbol": "¥", 73 | "currencyCode": "JPY" 74 | }, 75 | "price": 23200 76 | }, 77 | { 78 | "id": 167181, 79 | "website": { 80 | "id": 6, 81 | "currencySymbol": "HK$", 82 | "currencyCode": "HKD" 83 | }, 84 | "price": 1305 85 | }, 86 | { 87 | "id": 167182, 88 | "website": { 89 | "id": 7, 90 | "currencySymbol": "CA$", 91 | "currencyCode": "CAD" 92 | }, 93 | "price": 219 94 | }, 95 | { 96 | "id": 167183, 97 | "website": { 98 | "id": 8, 99 | "currencySymbol": " $", 100 | "currencyCode": "USD" 101 | }, 102 | "price": 169 103 | }, 104 | { 105 | "id": 167184, 106 | "website": { 107 | "id": 9, 108 | "currencySymbol": "DKK", 109 | "currencyCode": "DKK" 110 | }, 111 | "price": 1305 112 | }, 113 | { 114 | "id": 167185, 115 | "website": { 116 | "id": 10, 117 | "currencySymbol": "S$", 118 | "currencyCode": "SGD" 119 | }, 120 | "price": 219 121 | }, 122 | { 123 | "id": 167186, 124 | "website": { 125 | "id": 11, 126 | "currencySymbol": "CN¥", 127 | "currencyCode": "CNY" 128 | }, 129 | "price": 1155 130 | }, 131 | { 132 | "id": 167187, 133 | "website": { 134 | "id": 12, 135 | "currencySymbol": "₩", 136 | "currencyCode": "KRW" 137 | }, 138 | "price": 219675 139 | }, 140 | { 141 | "id": 167188, 142 | "website": { 143 | "id": 13, 144 | "currencySymbol": "€", 145 | "currencyCode": "EUR" 146 | }, 147 | "price": 169 148 | }, 149 | { 150 | "id": 167189, 151 | "website": { 152 | "id": 15, 153 | "currencySymbol": "€", 154 | "currencyCode": "EUR" 155 | }, 156 | "price": 169 157 | }, 158 | { 159 | "id": 167190, 160 | "website": { 161 | "id": 17, 162 | "currencySymbol": "RUB", 163 | "currencyCode": "RUB" 164 | }, 165 | "price": 13775 166 | }, 167 | { 168 | "id": 167191, 169 | "website": { 170 | "id": 18, 171 | "currencySymbol": "NT$", 172 | "currencyCode": "TWD" 173 | }, 174 | "price": 5115 175 | }, 176 | { 177 | "id": 167192, 178 | "website": { 179 | "id": 19, 180 | "currencySymbol": "SEK", 181 | "currencyCode": "SEK" 182 | }, 183 | "price": 1989 184 | }, 185 | { 186 | "id": 167193, 187 | "website": { 188 | "id": 20, 189 | "currencySymbol": "NZ$", 190 | "currencyCode": "NZD" 191 | }, 192 | "price": 189 193 | }, 194 | { 195 | "id": 167194, 196 | "website": { 197 | "id": 21, 198 | "currencySymbol": "€", 199 | "currencyCode": "EUR" 200 | }, 201 | "price": 169 202 | }, 203 | { 204 | "id": 167195, 205 | "website": { 206 | "id": 22, 207 | "currencySymbol": "€", 208 | "currencyCode": "EUR" 209 | }, 210 | "price": 169 211 | }, 212 | { 213 | "id": 167196, 214 | "website": { 215 | "id": 23, 216 | "currencySymbol": "€", 217 | "currencyCode": "EUR" 218 | }, 219 | "price": 169 220 | }, 221 | { 222 | "id": 167197, 223 | "website": { 224 | "id": 24, 225 | "currencySymbol": "€", 226 | "currencyCode": "EUR" 227 | }, 228 | "price": 169 229 | }, 230 | { 231 | "id": 167198, 232 | "website": { 233 | "id": 25, 234 | "currencySymbol": "€", 235 | "currencyCode": "EUR" 236 | }, 237 | "price": 169 238 | } 239 | ], 240 | "releaseMode": "draw", 241 | "url": "https://www.endclothing.com/gb/air-jordan-x-trophy-room-1-low-retro-og-sp-fn0432-100.html", 242 | "urlKey": "air-jordan-x-trophy-room-1-low-retro-og-sp-fn0432-100", 243 | "pullQuote": "Celebrate MJ's legacy with these Air Jordan 1 Retro LW OG sneakers designed by Orlando-based sneaker boutique Trophy Room.", 244 | "hasStock": true, 245 | "soldOut": false, 246 | "productPullQuote": "Celebrate MJ's legacy with these Air Jordan 1 Retro LW OG sneakers designed by Orlando-based sneaker boutique Trophy Room.", 247 | "productImagesLength": 6, 248 | "customThumbnailUrl": "https://launches-media.endclothing.com/FN0432-100_launches_thumbnailv2.jpg", 249 | "restrictedCountries": [ 250 | { 251 | "id": 64 252 | } 253 | ], 254 | "department": "Sneakers", 255 | "isOnlineDraw": 1, 256 | "isInStoreDraw": 0, 257 | "flagInStoreReleased": 0, 258 | "markdownDescription": "Celebrate MJ's legacy with these Air Jordan 1 Retro LW OG sneakers designed by Orlando-based sneaker boutique Trophy Room. Part of the exclusive Trophy Room collection, this \"Away\" iteration honours the Chicago Bulls' iconic uniforms. They’re decked out with white leather, black Swooshes, and luxurious red satin overlays, complete with gold accents and tonal branding worked into the threads that effortlessly elevate it's coveted status.", 259 | "exclusions": "", 260 | "bulletPoints": "Leather Upper\r\nSatin Overlays\r\nRubber Outsole\r\nStyle Code: FN0432-100", 261 | "descriptions": [] 262 | }, 263 | ... more items 264 | ``` 265 | 266 | Each item in the `items` array represents a raffle, including its unique `id`, `name`, available `sizes`, the `closeDate` for the raffle, and an `imageUrl` for the product. 267 | 268 | ### Additional Notes 269 | 270 | The API contains detailed information about each raffle, Remember, the API's data is dynamic and updates frequently as new raffles open and existing ones close, so check back often for the most current information. 271 | -------------------------------------------------------------------------------- /Euronics/Euronics-Instore.md: -------------------------------------------------------------------------------- 1 | # Euronics In-Store Availability Check 2 | 3 | To check in-store availability for Euronics products, use the following endpoint format: 4 | ``` 5 | https://www.euronics.it/on/demandware.store/Sites-euronics-Site/it_IT/Stores-Inventory?showMap=true&horizontalView=true&isForm=true&pview=tile&availability=yes&lat={latitude}&long={longitude}&pid={pid}&qty=1&isMobile=false&isFromBtn=btn&noSelection=true&radius={radius}&isSocio=false 6 | ``` 7 | 8 | - `{pid}` is the Product ID. 9 | - `{latitude}` and `{longitude}` need to be replaced with the coordinates of the store location. 10 | - `{radius}`can be choosen, is the radius of the area in which the stores are to be located 11 | 12 | ### Obtaining Latitude and Longitude 13 | 14 | To find the latitude and longitude of a store, follow these steps on Google Maps: 15 | 16 | 1. On your computer, open Google Maps. 17 | 2. Right-click the place or area on the map. This opens a pop-up window. 18 | 3. Find your latitude and longitude in decimal format at the top of the menu. 19 | 20 | ![Instructions for obtaining coordinates](get-coordinates.png) 21 | 22 | ### Finding the Product ID (PID) 23 | The Product ID can be obtained this way: 24 | 25 | From the URL of the product page, e.g., for the : SONY COMPUTER - PLAYSTATION PORTAL 26 | ``` 27 | https://www.euronics.it/gaming/playstation-5/accessori-ps5/sony-computer---playstation-portal-eur/232011171.html 28 | ``` 29 | The PID here is `232011171`. 30 | -------------------------------------------------------------------------------- /Euronics/get-coordinates.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/44ps/endpoints/76b17d6913f48d2c1dd2d3f55cc5df9208a74ae5/Euronics/get-coordinates.png -------------------------------------------------------------------------------- /Fendi/Fendi-Instore.md: -------------------------------------------------------------------------------- 1 | ## Fendi In-Store Availability Check 2 | 3 | To check in-store availability for Fendi products, use the following endpoint format: 4 | ``` 5 | https://www.fendi.com/on/demandware.store/Sites-EU1-Site/it_IT/Product-VariationStores?pid={pid}&size=TU&quantity=1&latitude={latitude}&longitude={longitude} 6 | ``` 7 | 8 | - `{pid}` is the Product ID. 9 | - `{latitude}` and `{longitude}` need to be replaced with the coordinates of the store location. 10 | 11 | ### Obtaining Latitude and Longitude 12 | To find the latitude and longitude of a store, follow these steps on Google Maps: 13 | 14 | 1. On your computer, open Google Maps. 15 | 2. Right-click the place or area on the map. This opens a pop-up window. 16 | 3. Find your latitude and longitude in decimal format at the top of the menu. 17 | 18 | ![Instructions for obtaining coordinates](get-coordinates.png) 19 | 20 | ### Finding the Product ID (PID) 21 | The Product ID can be obtained in two ways: 22 | 23 | 1. From the URL of the product page, e.g., for the Fendi Match White Suede Low Tops: 24 | ``` 25 | https://www.fendi.com/gb-en/man/shoes/sneakers/fendi-match-white-suede-low-tops-7e1493ahh2f1fhs 26 | ``` 27 | The PID here is `7e1493ahh2f1fhs`. 28 | 29 | 2. On the product page, look under Product Details for the Product Code, e.g., Product Code: 7E1493AHH2F1FHS. 30 | 31 | ### Example Request 32 | To check the in-store availability of the product `7e1493ahh2f1fhs` at a specific location, replace `{pid}`, `{latitude}`, and `{longitude}` with the appropriate values. 33 | -------------------------------------------------------------------------------- /Fendi/get-coordinates.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/44ps/endpoints/76b17d6913f48d2c1dd2d3f55cc5df9208a74ae5/Fendi/get-coordinates.png -------------------------------------------------------------------------------- /Footshop/Stock-API.md: -------------------------------------------------------------------------------- 1 | # How to Find Product Stock Information on Footshop 2 | 3 | If you're looking to find out the stock availability of a specific size for a product on Footshop, you can use the Footshop API by accessing a specific endpoint. This guide will help you understand how to extract this information effectively. 4 | 5 | ## Step 1: Extract the Raffle ID 6 | 7 | First, you need the ID of the product or raffle you're interested in. This can be found in the product's URL on the Footshop releases page. The ID is the string of characters at the end of the URL. For example: 8 | 9 | For the URL `https://releases.footshop.com/asics-x-wood-wood-gt-2160-KaDMHo4Bxgl0zanv-MAW`, the Raffle ID is `KaDMHo4Bxgl0zanv-MAW`. 10 | 11 | ## Step 2: Use the API Endpoint 12 | 13 | With the Raffle ID in hand, append it to the following API endpoint: 14 | 15 | ``` 16 | https://releases.footshop.com/api/raffles/ID_OF_THE_RAFFLE 17 | ``` 18 | 19 | Replace `ID_OF_THE_RAFFLE` with your actual raffle ID. This will access the API for that specific product. 20 | 21 | ## Example Response and Interpretation 22 | 23 | When you access the API with the raffle ID, you will receive a JSON response with various details about the product. Here's an example focusing on stock information: 24 | 25 | ```json 26 | { 27 | "sizeSets": { 28 | "Men": { 29 | "sizes": [ 30 | { 31 | "us": "10", 32 | "eur": "44", 33 | "uk": "9", 34 | "cm": "28", 35 | "pieces": 15, 36 | "ean": "4550457542289", 37 | "id": "fcd411ea-dd64-11ee-9d2c-167cb1cfcc11" 38 | } 39 | // Additional sizes... 40 | ], 41 | "name": "Men" 42 | } 43 | // Other categories like Unisex, Women, Kids... 44 | } 45 | } 46 | ``` 47 | 48 | In the response, you'll find a `sizeSets` object which contains arrays for different categories (Men, Women, Unisex, Kids). Each category has an array of `sizes`, where each size object contains the stock information: 49 | 50 | - `us`, `eur`, `uk`, `cm`: Size information in different measurements. 51 | - `pieces`: The number of pieces available in stock. 52 | - `ean`: The product's EAN code. 53 | - `id`: A unique identifier for the size. 54 | 55 | By examining the `pieces` field, you can determine how many units of a specific size are available for purchase. 56 | -------------------------------------------------------------------------------- /GameUK/GAMEUK-Instore.md: -------------------------------------------------------------------------------- 1 | # GAME UK In-Store Availability Check 2 | 3 | To check in-store availability for Game products, use the following endpoint format: 4 | ``` 5 | https://powerup.game.co.uk/StockCheckerUI/ExternalStockChecker/CheckForPostcode?/StockCheckerUI/ExternalStockChecker/CheckForPostcode&caller=mcomm&mintSku={sku}&preownedSku={pre_sku}&postcode={postcode}&hasPreownedSelected=false 6 | ``` 7 | 8 | - `{sku}` is the Product ID. 9 | - `{pre_sku}` is the Product ID for pre-owned product. 10 | - `{postcode}` is the postcode. 11 | 12 | ### Finding the Product ID (PID) 13 | The Product ID can be obtained this way: 14 | 15 | From the URL of the product page, e.g., for the : PlayStation 5 Console 16 | ``` 17 | https://www.game.co.uk/en/playstation-5-console-2826338 18 | ``` 19 | The PID here is `2826338`. -------------------------------------------------------------------------------- /Kickz/Instore-PID-checker.md: -------------------------------------------------------------------------------- 1 | ## Kickz In-Store Product ID Checker Endpoint 2 | 3 | To check the in-store availability of products on Kickz using the Product ID, use the following endpoint format: 4 | ``` 5 | https://www.kickz.com/on/demandware.store/Sites-Kickz-DE-AT-INT-Site/de_DE/Product-Variation?pid={product_id}&quantity=1&sizeSystem=EU&ajax=true 6 | ``` 7 | 8 | Replace `product_id` with the Product ID of the item you're interested in. 9 | 10 | ### Finding the Product ID (PID) 11 | The Product ID (PID) can be found in the URL of the product page. For example, for the New Balance Sneaker BBW550BI in grey/green, the URL is: 12 | ``` 13 | https://www.kickz.com/ch/p/new-balance-sneaker-bbw550bi-grey-green/213226001.html 14 | ``` 15 | Here, the PID is `213226001`. 16 | 17 | ### Example Request 18 | To check the in-store availability of the product with PID `213226001`, the request URL would be: 19 | ``` 20 | https://www.kickz.com/on/demandware.store/Sites-Kickz-DE-AT-INT-Site/de_DE/Product-Variation?pid=213226001&quantity=1&sizeSystem=EU&ajax=true 21 | ``` 22 | 23 | This endpoint will return a JSON response indicating the availability of the product in the specified size system (EU in this case) and quantity (1 by default). 24 | -------------------------------------------------------------------------------- /Nike/Deeplinks.md: -------------------------------------------------------------------------------- 1 | # Nike Deeplinks Documentation 2 | 3 | ## What is a Deeplink? 4 | A Deeplink is a URL with a custom scheme such as `nike://` or `prizzle://` and a path, that is used to navigate to apps on iOS. These Deeplinks can also be used to open specific sites in an app or to pass data to an app. 5 | 6 | ## Nike Deeplinks 7 | 8 | ### Nike App 9 | ###### Scheme 10 | `mynike://x-callback-url/product-details?style-color=PID` 11 | ###### Dunk Low Black/White (W) 12 | `mynike://x-callback-url/product-details?style-color=DD1503-101` 13 | 14 | ### Nike SNKRS App 15 | ###### Scheme 16 | `snkrs://product/PID` 17 | ###### Travis Scott x Air Jordan 1 Low (Olive Green) 18 | `snkrs://product/DZ4137-106` 19 | 20 | ## Add-on 21 | You can use the redirect service from [@prizzledev](https://github.com/prizzledev) (free for everyone) to use them in apps (e.g. Discord) 22 | 23 | `https://redirect.prizzle.dev/?url=DEEPLINK` -------------------------------------------------------------------------------- /Prodirect/ReleaseScraper.md: -------------------------------------------------------------------------------- 1 | Here's a README formatted as a Markdown file that describes the endpoint and includes a Python script to illustrate how to use it: 2 | 3 | --- 4 | 5 | # Prodirect Sport Release Scraper 6 | 7 | This document provides instructions for accessing the Prodirect API to retrieve sports product releases. It includes an example Python script that demonstrates how to query the API and process the results. 8 | 9 | ## Endpoint Description 10 | 11 | The Prodirect API endpoint is used to fetch new sports product releases. The endpoint requires specifying a store and a search term to refine the product listings. 12 | 13 | - **URL Structure**: 14 | ``` 15 | https://query.published.live1.suggest.eu1.fredhopperservices.com/pro_direct/json?scope=//catalog01/en_GB/categories>{store}&search={searchTerm}&callback=jsonpResponse 16 | ``` 17 | 18 | - **Parameters**: 19 | - `store`: The specific store's catalog (e.g., 'sportengb' for English sports goods, 'soccerengb' for soccer products). 20 | - `searchTerm`: Keywords to filter the search (e.g., 'dunk', 'jordan', 'new+balance'). 21 | 22 | ## Example Script 23 | 24 | ### GO 25 | https://github.com/prizzledev/prodirect-releases 26 | 27 | ### Python 28 | Below is a Python script that demonstrates how to use the endpoint to fetch and display product information. 29 | 30 | ```python 31 | import requests 32 | import json 33 | import re 34 | from datetime import datetime 35 | 36 | def fetch_products(store, search_term): 37 | # Construct the URL with specified store and search term 38 | url = f"https://query.published.live1.suggest.eu1.fredhopperservices.com/pro_direct/json?scope=//catalog01/en_GB/categories>{{store}}&search={search_term}&callback=jsonpResponse" 39 | 40 | # Send the GET request 41 | response = requests.get(url) 42 | if response.status_code != 200: 43 | raise Exception("Failed to fetch data: HTTP Status {}".format(response.status_code)) 44 | 45 | # Extract JSON from JSONP format 46 | jsonp_text = response.text 47 | json_text = re.search(r'jsonpResponse\((\{.*?\})\)', jsonp_text).group(1) 48 | data = json.loads(json_text) 49 | 50 | # Process the data 51 | products = data['suggestionGroups'][1]['suggestions'] 52 | for product in products: 53 | print("----------") 54 | print("Name:", product['name']) 55 | print("Price: £{:.2f}".format(product['currentprice'])) 56 | print("Product URL:", product['producturl']) 57 | print("Thumbnail URL:", product['thumburl']) 58 | print("Launch Date:", convert_date(product['launchdate'], product['launchtimedelta'])) 59 | 60 | def convert_date(launch_date, delta): 61 | # Convert launch date string to datetime object 62 | year, month, day = int(launch_date[:4]), int(launch_date[4:6]), int(launch_date[6:8]) 63 | date = datetime(year, month, day) 64 | 65 | # Adjust time based on delta 66 | adjusted_date = date + timedelta(minutes=delta) 67 | return adjusted_date.strftime("%Y-%m-%d %H:%M:%S") 68 | 69 | # Example usage 70 | if __name__ == "__main__": 71 | fetch_products('sportengb', 'dunk') 72 | ``` 73 | 74 | ## Running the Script 75 | 76 | To run the script: 77 | 1. Ensure you have Python installed on your system. 78 | 2. Install the `requests` library using pip if not already installed: 79 | ``` 80 | pip install requests 81 | ``` 82 | 3. Save the script to a file, say `prodirect_scraper.py`. 83 | 4. Run the script from your command line: 84 | ``` 85 | python prodirect_scraper.py 86 | ``` 87 | 88 | This script will output the names, prices, URLs, and launch dates of products matching the specified search term and store. -------------------------------------------------------------------------------- /Prodirect/prodirect_scraper.py: -------------------------------------------------------------------------------- 1 | import requests 2 | import json 3 | import re 4 | from datetime import datetime 5 | 6 | def fetch_products(store, search_term): 7 | # Construct the URL with specified store and search term 8 | url = f"https://query.published.live1.suggest.eu1.fredhopperservices.com/pro_direct/json?scope=//catalog01/en_GB/categories>{{store}}&search={search_term}&callback=jsonpResponse" 9 | 10 | # Send the GET request 11 | response = requests.get(url) 12 | if response.status_code != 200: 13 | raise Exception("Failed to fetch data: HTTP Status {}".format(response.status_code)) 14 | 15 | # Extract JSON from JSONP format 16 | jsonp_text = response.text 17 | json_text = re.search(r'jsonpResponse\((\{.*?\})\)', jsonp_text).group(1) 18 | data = json.loads(json_text) 19 | 20 | # Process the data 21 | products = data['suggestionGroups'][1]['suggestions'] 22 | for product in products: 23 | print("----------") 24 | print("Name:", product['name']) 25 | print("Price: £{:.2f}".format(product['currentprice'])) 26 | print("Product URL:", product['producturl']) 27 | print("Thumbnail URL:", product['thumburl']) 28 | print("Launch Date:", convert_date(product['launchdate'], product['launchtimedelta'])) 29 | 30 | def convert_date(launch_date, delta): 31 | # Convert launch date string to datetime object 32 | year, month, day = int(launch_date[:4]), int(launch_date[4:6]), int(launch_date[6:8]) 33 | date = datetime(year, month, day) 34 | 35 | # Adjust time based on delta 36 | adjusted_date = date + timedelta(minutes=delta) 37 | return adjusted_date.strftime("%Y-%m-%d %H:%M:%S") 38 | 39 | # Example usage 40 | if __name__ == "__main__": 41 | fetch_products('sportengb', 'dunk') -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ![Banner](banner.png) 2 | 3 | ## Endpoints 4 | 5 | | Store Name | Documentation | 6 | |-------------|---------------| 7 | | AWLAB | [AWLAB-Instore](AWLAB/AWLAB-Instore.md) | 8 | | EndClothing | [All-Raffles](EndClothing/All-Raffles.md) | 9 | | Euronics | [Euronics-Instore](Euronics/Euronics-Instore.md) | 10 | | Fendi | [Fendi-Instore](Fendi/Fendi-Instore.md) | 11 | | Footshop | [Stock-API](Footshop/Stock-API.md) | 12 | | GAME UK | [GAMEUK-Instore](GameUK/GAMEUK-Instore.md) | 13 | | Kickz | [Instore-PID-checker](Kickz/Instore-PID-checker.md) | 14 | | Nike | [Deeplinks](Nike/Deeplinks.md) | 15 | | Prodirect | [ReleaseScraper](Prodirect/ReleaseScraper.md) | 16 | | Rimowa | [Rimowa-Instore](Rimowa/Rimowa-Instore.md) | 17 | | Snipes | [Loaded-products](Snipes/Loaded-products.md) | 18 | | Solebox | [Loaded-products](Solebox/Loaded-products.md) | 19 | 20 | ## How to Contribute 21 | 22 | To contribute to this project, please DM [@jonodev](https://discordapp.com/users/696774823661011014/) on Discord. Just DM him with your endpoints. 23 | 24 | ## Contributors 25 | 26 | [@jono-png](https://github.com/jono-png)
27 | [@astralisdev](https://github.com/astralisdev)
28 | [@matismrd](https://github.com/matismrd)
29 | [@prizzledev](https://github.com/prizzledev)
30 | [@lite0n](https://github.com/lite0n)
31 | 32 | ## Donations 33 | 34 | Donations are appreciated but not obligatory. Everything here is free to use! Donations help to keep up the free work. You can donate using Solana to the address below: 35 | 36 | [jono5QAD6fcNDLAtT78NZ7xFhriDmViPXNzk9jVVn3G](solana:jono5QAD6fcNDLAtT78NZ7xFhriDmViPXNzk9jVVn3G) 37 | 38 | ## Star History 39 | 40 | 41 | 42 | 43 | 44 | Star History Chart 45 | 46 | 47 | -------------------------------------------------------------------------------- /Rimowa/Rimowa-Instore.md: -------------------------------------------------------------------------------- 1 | # How to Check In-Store Availability for Rimowa Products 2 | 3 | Finding out if a Rimowa product is available in a store near you is straightforward using the Rimowa API. This guide explains how to check the in-store availability of a specific product by utilizing a dedicated API endpoint. 4 | 5 | ## Step 1: Locate the Product ID (PID) 6 | 7 | Before you can check the product's in-store availability, you need to find its Product ID (PID). This ID can usually be found in the product's URL on the Rimowa website. For example: 8 | 9 | For the URL `https://www.rimowa.com/ch/de/luggage/colour/blue/check-in-l/83273691.html`, the PID is `83273691`. 10 | 11 | ## Step 2: Access the API Endpoint 12 | 13 | With the Product ID, you can now query the in-store availability. Use the following API endpoint: 14 | 15 | ``` 16 | https://www.rimowa.com/on/demandware.store/Sites-Rimowa-Site/it_IT/StoreLocator-InStoreAvailability?pid={PID} 17 | ``` 18 | 19 | Replace `{PID}` with the actual Product ID you found earlier. This will fetch the availability of that specific product in various stores. 20 | 21 | ## Understanding the API Response 22 | 23 | When you access the API endpoint, the response will be visual rather than textual. You will receive an image detailing the availability of the product in various Rimowa stores. This image provides a visual representation of the product availability, including store names, locations, and the opening hours of each store. 24 | 25 | ![Example Response Image](example.png) 26 | 27 | This image is a simplified representation meant to guide you in understanding how to interpret the actual in-store availability data you will receive. 28 | 29 | By using this API, you can easily find out which Rimowa stores have your desired product in stock, allowing you to plan your visit or contact the store directly for more information. -------------------------------------------------------------------------------- /Rimowa/example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/44ps/endpoints/76b17d6913f48d2c1dd2d3f55cc5df9208a74ae5/Rimowa/example.png -------------------------------------------------------------------------------- /Snipes/Loaded-products.md: -------------------------------------------------------------------------------- 1 | ## Check Snipes Loaded Products 2 | 3 | To check the details of Snipes loaded products, you can use the following API endpoint: 4 | ``` 5 | https://www.snipes.com/dw/shop/v19_1/products/{PIF}?client_id=cf212f59-94d1-4314-996f-7a11871156f4&c_app=true&expand=images,prices,+variations,options,availability 6 | ``` 7 | 8 | - `{PID}` is the product ID you're interested in. 9 | 10 | ### Getting the Product ID (PID) 11 | The Product ID can be found on the product page URL. For example, for the WMNS Air Jordan 4 Retro 12 | sail/metallic gold-black, the URL is: 13 | ``` 14 | https://www.snipes.com/p/jordan-wmns_air_jordan_4_retro-sail%2Fmetallic_gold-black-00013802280535.html 15 | ``` 16 | In this URL, `00013802280535` is the Product ID. 17 | 18 | ### Example Request 19 | To fetch details for the product with ID `00013802280535`, the request URL would be: 20 | ``` 21 | https://www.snipes.com/dw/shop/v19_1/products/00013802280535?client_id=cf212f59-94d1-4314-996f-7a11871156f4&c_app=true&expand=images,prices,+variations,options,availability 22 | ``` 23 | 24 | This request will return a JSON response with details such as the product brand, currency, ID, and various groups of images, prices, availability, and variations associated with the product. 25 | -------------------------------------------------------------------------------- /Solebox/Loaded-products.md: -------------------------------------------------------------------------------- 1 | ## Check Solebox Loaded Products 2 | 3 | To check the details of Solebox loaded products, you can use the following API endpoint: 4 | ``` 5 | https://www.solebox.com/dw/shop/v19_5/products/{PID}?client_id=37e982e8-005d-43e8-8c71-41c659b38a8c&c_app=true&locale=en-DE&expand=images,prices,availability,variations 6 | ``` 7 | 8 | - `{PID}` is the product ID you're interested in. 9 | 10 | ### Getting the Product ID (PID) 11 | The Product ID can be found on the product page URL. For example, for the adidas Originals WMNS Handball Spezial in light blue/ftwr white/gum5, the URL is: 12 | ``` 13 | https://www.solebox.com/en_CH/p/adidas_originals-wmns_handball_spezial-light_blue%2Fftwr_white%2Fgum5-02274958.html?prefn1=soleboxExclusive&prefv1=true 14 | ``` 15 | In this URL, `02274958` is the Product ID. 16 | 17 | ### Example Request 18 | To fetch details for the product with ID `02274958`, the request URL would be: 19 | ``` 20 | https://www.solebox.com/dw/shop/v19_5/products/02274958?client_id=37e982e8-005d-43e8-8c71-41c659b38a8c&c_app=true&locale=en-DE&expand=images,prices,availability,variations 21 | ``` 22 | 23 | This request will return a JSON response with details such as the product brand, currency, ID, and various groups of images, prices, availability, and variations associated with the product. 24 | -------------------------------------------------------------------------------- /banner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/44ps/endpoints/76b17d6913f48d2c1dd2d3f55cc5df9208a74ae5/banner.png --------------------------------------------------------------------------------