iprice.my APIiprice.my ↗
Access iPrice Malaysia product listings, price comparisons, coupons, flash sales, brand/store data, and news articles via a single REST API with 9 endpoints.
curl -X GET 'https://api.parse.bot/scraper/9a07fc78-2b92-4504-b960-fe70fa18cbaa/search_products?page=1&query=laptop' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for products by keyword query. Returns a paginated list of matching products with prices, store info, and seller details across Malaysian online retailers.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination |
| queryrequired | string | Search keyword (e.g. 'laptop', 'iphone 15') |
{
"type": "object",
"fields": {
"list": "array of product objects with title, price, currency, store, shop, and image details",
"size": "integer number of products per page",
"total": "integer total number of matching products",
"filter": "object mapping store identifiers to store metadata including name, count, and image",
"result": "boolean indicating success",
"total_page": "integer total number of pages"
},
"sample": {
"data": {
"list": [
{
"shop": {
"name": "Monmtech",
"location": "W.P. Kuala Lumpur"
},
"image": "https://img2.biggo.com/190x,sLqK4zOBgDBmrSPmWQr8DaopMRebF3KP9HZuFfySyfqE/https://cf.shopee.com.my/file/d6fcc441e66b2ef29d7371061ef03918",
"price": 2399,
"store": {
"name": "Shopee"
},
"title": "One Plus 8T /8/ 8Pro Snapdragon 865 Mobile Cell Phone New Set in sealed box",
"symbol": "RM",
"currency": "MYR"
}
],
"size": 25,
"total": 616691,
"filter": {
"my_bid_shopeemy": {
"name": "Shopee",
"count": 553388
}
},
"result": true,
"total_page": 24668
},
"status": "success"
}
}About the iprice.my API
The iPrice Malaysia API exposes 9 endpoints covering product search, category browsing, brand listings, store directories, flash sale deals, coupon codes, and news articles across Malaysian online retailers. The search_products endpoint returns paginated results with per-product title, price, currency, store, and image fields, letting you query thousands of listings from a single call.
Product Search and Category Browsing
The search_products endpoint accepts a query string and an optional page integer, returning an array of product objects alongside a filter map that groups results by store identifier — useful for narrowing down which retailers carry a given item. The get_products_by_category endpoint works the same way but scopes results to a category_key obtained from get_categories, which returns every category's key and name. get_product_detail takes a product slug and returns price ranges across stores, giving you a cross-retailer view for a specific product group.
Stores, Brands, and Deals
get_all_stores returns a flat list of every retailer on iPrice Malaysia, including each store's name, image, tags, and coupon_count. get_brand_list delivers an alphabetically indexed object mapping letters to arrays of brand objects, each with a name and key. get_flash_sale_products is paginated and returns an empty list when no active sales are running — so callers should check the size field before processing results.
Coupons and News
get_coupons returns an array of coupon objects, each carrying store, num_offers, discount, url, slug, and logo — enough to build a working deals page without supplemental lookups. get_news_articles delivers article objects with title, url, category, time, and image, covering tech and shopping topics published by iPrice Malaysia. Neither endpoint takes input parameters, so they always return the current full set.
Pagination and Response Envelope
All paginated endpoints share a consistent envelope: list for the item array, total for the full match count, total_page for page count, and a boolean result indicating success. The search_products and get_flash_sale_products endpoints additionally return a size field reflecting items per page.
- Build a price-comparison widget showing the cheapest Malaysian retailer for a given product using
search_productsand thefilterstore map. - Populate a deals aggregator with live coupon codes from
get_coupons, displaying each store'snum_offersanddiscountfields. - Render a Malaysian brand directory indexed A–Z using the alphabetically keyed
dataobject fromget_brand_list. - Send flash sale alerts to users by polling
get_flash_sale_productsand checking whethersizeis greater than zero. - Display a store directory page with retailer logos and coupon counts pulled directly from
get_all_stores. - Feed a tech news section with iPrice editorial content using
title,category,time, andimagefromget_news_articles. - Scope product browsing to a specific vertical by chaining
get_categoriesto retrieve keys and thenget_products_by_categoryto fetch listings.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does iPrice Malaysia have an official public developer API?+
What does `get_product_detail` return, and how does it differ from `search_products`?+
get_product_detail takes a product slug and returns a list of matching product objects showing price and store details across all retailers carrying that product group — focused on cross-store price comparison for one item. search_products takes an open-ended query string and returns a broader paginated set of results with a filter object breaking down matches by store, making it better suited for keyword discovery.Does the API cover product reviews or user ratings?+
Is the flash sale endpoint reliable when no sales are active?+
get_flash_sale_products explicitly returns an empty list array with a size of zero when no flash sales are running. The result field will still be true. Callers should gate downstream processing on size > 0 rather than assuming a non-empty list.Does the API support filtering products by price range or specific stores?+
search_products nor get_products_by_category accept price-range or store-filter parameters directly. The filter field in search_products responses does expose store-level metadata you can use for client-side grouping, but server-side filtering by price is not currently available. You can fork the API on Parse and revise it to add price-range or store-scoped filtering as an endpoint parameter.