Noon.com Multi-Market Product Search by Discount
Search Noon.com's UAE, Saudi Arabia, and Egypt storefronts by keyword, category, or URL, and get price, discount, rating, brand, and promotional labels for each product in that market's own currency.
Input schema
Input fields, types, required flags, descriptions, defaults, and prefills come from the published definition. Prefill examples are distinct from defaults.
| Field | Type | Required | Description |
|---|---|---|---|
mode | string | required | Choose what to fetch. Search needs `searchQueries`; category needs `categoryPaths`; product needs `productInputs`; URL needs `startUrls`. |
searchQueries | array | optional | Keywords to search for (mode=search). One query per line, e.g. `laptop`. |
categoryPaths | array | optional | noon category paths or URLs (mode=byCategory), e.g. `electronics-and-mobiles/computers-and-accessories/computers-new/laptops`. |
Show all input fields
| Field | Type | Required | Description |
|---|---|---|---|
mode | string | required | Choose what to fetch. Search needs `searchQueries`; category needs `categoryPaths`; product needs `productInputs`; URL needs `startUrls`. |
searchQueries | array | optional | Keywords to search for (mode=search). One query per line, e.g. `laptop`. |
categoryPaths | array | optional | noon category paths or URLs (mode=byCategory), e.g. `electronics-and-mobiles/computers-and-accessories/computers-new/laptops`. |
productInputs | array | optional | noon SKUs or product URLs (mode=byProduct), e.g. `N70367827V`. |
startUrls | array | optional | noon search, category, or product URLs (mode=byUrl). The market in each URL overrides the Market field. |
market | string | optional | noon storefront and currency. Product and URL inputs can override it from the URL. |
language | string | optional | Product titles and descriptions language used by the storefront. |
sortBy | string | optional | Ordering for search and category results. |
minPrice | number | optional | Only emit products at or above this price, in the selected market's currency. |
maxPrice | number | optional | Only emit products at or below this price, in the selected market's currency. |
minRating | number | optional | Only emit rated products at or above this star rating (0-5). Unrated products are excluded when this is set. |
minDiscountPercent | number | optional | Only emit products discounted by at least this percentage. Products without a list price have no discount and are excluded. |
maxDiscountPercent | number | optional | Only emit products discounted by at most this percentage. Set 0 to require no discount. |
brand | string | optional | Optional brand name or brand code, e.g. `HP` or `hp`. Matched against noon's brand filter. |
seller | string | optional | Optional seller name or seller code, e.g. `noon` or `p_9404`. |
dealOnly | boolean | optional | Only emit products carrying a noon deal tag. |
includeDetails | boolean | optional | Add description, specifications, stock, warranty, delivery, and all seller offers. Adds one request per product. |
includeReviews | boolean | optional | Add up to five latest review snippets per product. Adds one request per product. |
maxItems | integer | optional | Hard cap on emitted products across the whole run. |
Download the published input schema
View complete JSON
{
"description": "Search noon.com in seven GCC storefronts, browse categories, look up products by SKU or URL, and filter by price, rating, discount, brand, seller, or deal tag.",
"properties": {
"brand": {
"description": "Optional brand name or brand code, e.g. `HP` or `hp`. Matched against noon's brand filter.",
"editor": "textfield",
"title": "Brand",
"type": "string"
},
"categoryPaths": {
"default": [],
"description": "noon category paths or URLs (mode=byCategory), e.g. `electronics-and-mobiles/computers-and-accessories/computers-new/laptops`.",
"editor": "stringList",
"prefill": [],
"title": "Category paths or URLs",
"type": "array"
},
"dealOnly": {
"default": false,
"description": "Only emit products carrying a noon deal tag.",
"prefill": false,
"title": "Deals only",
"type": "boolean"
},
"includeDetails": {
"default": false,
"description": "Add description, specifications, stock, warranty, delivery, and all seller offers. Adds one request per product.",
"prefill": false,
"title": "Fetch product details",
"type": "boolean"
},
"includeReviews": {
"default": false,
"description": "Add up to five latest review snippets per product. Adds one request per product.",
"prefill": false,
"title": "Fetch recent reviews",
"type": "boolean"
},
"language": {
"default": "en",
"description": "Product titles and descriptions language used by the storefront.",
"editor": "select",
"enum": [
"en",
"ar"
],
"enumTitles": [
"English",
"Arabic"
],
"prefill": "en",
"title": "Language",
"type": "string"
},
"market": {
"default": "uae",
"description": "noon storefront and currency. Product and URL inputs can override it from the URL.",
"editor": "select",
"enum": [
"uae",
"saudi",
"egypt",
"bahrain",
"qatar",
"kuwait",
"oman"
],
"enumTitles": [
"United Arab Emirates (AED)",
"Saudi Arabia (SAR)",
"Egypt (EGP)",
"Bahrain (BHD)",
"Qatar (QAR)",
"Kuwait (KWD)",
"Oman (OMR)"
],
"prefill": "uae",
"title": "Market",
"type": "string"
},
"maxDiscountPercent": {
"description": "Only emit products discounted by at most this percentage. Set 0 to require no discount.",
"maximum": 100,
"minimum": 0,
"title": "Maximum discount (%)",
"type": "number"
},
"maxItems": {
"default": 50,
"description": "Hard cap on emitted products across the whole run.",
"maximum": 10000,
"minimum": 1,
"prefill": 3,
"title": "Max items",
"type": "integer"
},
"maxPrice": {
"description": "Only emit products at or below this price, in the selected market's currency.",
"maximum": 1000000000,
"minimum": 0,
"title": "Maximum price",
"type": "number"
},
"minDiscountPercent": {
"description": "Only emit products discounted by at least this percentage. Products without a list price have no discount and are excluded.",
"maximum": 100,
"minimum": 0,
"title": "Minimum discount (%)",
"type": "number"
},
"minPrice": {
"description": "Only emit products at or above this price, in the selected market's currency.",
"maximum": 1000000000,
"minimum": 0,
"title": "Minimum price",
"type": "number"
},
"minRating": {
"description": "Only emit rated products at or above this star rating (0-5). Unrated products are excluded when this is set.",
"maximum": 5,
"minimum": 0,
"title": "Minimum rating",
"type": "number"
},
"mode": {
"default": "search",
"description": "Choose what to fetch. Search needs `searchQueries`; category needs `categoryPaths`; product needs `productInputs`; URL needs `startUrls`.",
"editor": "select",
"enum": [
"search",
"byCategory",
"byProduct",
"byUrl"
],
"enumTitles": [
"Search products by keyword",
"Browse categories",
"Look up products by SKU or product URL",
"Fetch from noon search, category, or product URLs"
],
"prefill": "search",
"title": "Mode",
"type": "string"
},
"productInputs": {
"default": [],
"description": "noon SKUs or product URLs (mode=byProduct), e.g. `N70367827V`.",
"editor": "stringList",
"prefill": [],
"title": "Product SKUs or URLs",
"type": "array"
},
"searchQueries": {
"default": [],
"description": "Keywords to search for (mode=search). One query per line, e.g. `laptop`.",
"editor": "stringList",
"prefill": [
"laptop"
],
"title": "Search queries",
"type": "array"
},
"seller": {
"description": "Optional seller name or seller code, e.g. `noon` or `p_9404`.",
"editor": "textfield",
"title": "Seller",
"type": "string"
},
"sortBy": {
"default": "popularity",
"description": "Ordering for search and category results.",
"editor": "select",
"enum": [
"popularity",
"price_asc",
"price_desc",
"best_rating",
"new_arrivals"
],
"enumTitles": [
"Popularity",
"Price: low to high",
"Price: high to low",
"Top rated",
"New arrivals"
],
"prefill": "popularity",
"title": "Sort results by",
"type": "string"
},
"startUrls": {
"default": [],
"description": "noon search, category, or product URLs (mode=byUrl). The market in each URL overrides the Market field.",
"editor": "stringList",
"prefill": [],
"title": "Start URLs",
"type": "array"
}
},
"required": [
"mode"
],
"schemaVersion": 1,
"title": "Noon.com Multi-Market Product Search Input",
"type": "object"
}
Output schema
Published result links and storage locations. This schema is not an exhaustive contract for every field in a dataset record.
| Field | Type | Required | Description |
|---|---|---|---|
products | string | optional | Dataset containing all scraped noon product records. |
Download the published output schema
View complete JSON
{
"actorOutputSchemaVersion": 1,
"description": "One record per noon.com product with local-currency price, list price, discount, rating, seller, stock, images, specs, and optional recent reviews across seven GCC storefronts.",
"properties": {
"products": {
"description": "Dataset containing all scraped noon product records.",
"template": "{{links.apiDefaultDatasetUrl}}/items",
"title": "Noon products",
"type": "string"
}
},
"title": "Noon.com Multi-Market Product Search Output"
}
Dataset schema
Published dataset views and any declared field definitions. A view can select only a subset of the returned record fields.
Download the published dataset schema
View complete JSON
{
"actorSpecification": 1,
"views": {
"overview": {
"display": {
"component": "table",
"properties": {}
},
"title": "Noon Products",
"transformation": {
"fields": [
"name",
"brand",
"price",
"originalPrice",
"discountPercent",
"currency",
"rating",
"reviewCount",
"seller",
"stock",
"market",
"sku",
"url"
]
}
}
}
}
Key-value schema
Published key-value store definitions, when provided by this build.
This definition is not present in the default published build. See the published README for available documentation.
Published README
Read the full published documentation
Noon.com Multi-Market Product Search by Discount
Search noon.com across the UAE, Saudi Arabia, Egypt, Bahrain, Qatar, Kuwait, and Oman, then export structured product rows with local-currency prices, list prices, discounts, ratings, sellers, stock, images, specifications, and recent review snippets. Four modes cover keyword search, category browsing, direct SKU or product-URL lookups, and pasted noon URLs — in English or Arabic, with no login, cookie, API key, or proxy setup.
What this actor does
- Four modes: keyword
search,byCategory,byProduct(SKU or product URL), andbyUrl(search, category, or product URL) - Seven GCC storefronts: UAE (AED), Saudi Arabia (SAR), Egypt (EGP), Bahrain (BHD), Qatar (QAR), Kuwait (KWD), Oman (OMR)
- Discount search: filter by minimum or maximum discount percentage, not just noon's default ranking
- Product filters: price range, rating, brand, seller, and deal-only
- Listing and detail data: seller, stock, images, specifications, offers, warranty, delivery, and up to five latest reviews
- Empty fields are omitted — every record contains only fields that have real values
Output per product
sku— noon product identifier (e.g.N70367827V)skuConfig— noon SKU configuration/offer identifier when presentname— product titlebrand,brandCode— brand name and noon brand codeurl— direct noon product page URLprice— current selling price in the market's currencyoriginalPrice— pre-discount list price, when discounteddiscountPercent— calculated discount percentage, when discounteddiscountAmount— calculated saving, when discountedcurrency—AED,SAR,EGP,BHD,QAR,KWD, orOMRrating— average product rating (0–5)reviewCount— total ratings/reviews shown by noonrecentReviews— up to five latest review snippets (withincludeReviews)seller,sellerCode— buy-box seller name and codesellerRating,sellerReviewCount,sellerPositivePercent— seller signalsisBuyable,isBestseller,stock,minOrderQty— availability and order limitsstockWarning— low-stock text such asOnly 2 leftestimatedDelivery— delivery promise on detail recordsimageUrl,images— primary image and full image listpromotionTags— delivery, deal, and merchandising labelsdealTag,discountCode,bestSellerRank— merchandising signalsdescription,featureBullets,specifications,breadcrumbs,categoryPath— detail fieldswarranty,offers,offerCount— seller offers and warranty (detail mode)market,locale— storefront code and language-regionsourceQuery,sourceCategory— the input that produced the rowscrapedAt— ISO 8601 timestamp
Input
| Field | Type | Default | Description |
|---|---|---|---|
mode |
string | search |
search / byCategory / byProduct / byUrl |
searchQueries |
array | – | Keywords (mode=search) |
categoryPaths |
array | – | Category paths or URLs (mode=byCategory) |
productInputs |
array | – | SKUs or product URLs (mode=byProduct) |
startUrls |
array | – | Search, category, or product URLs (mode=byUrl) |
market |
string | uae |
uae, saudi, egypt, bahrain, qatar, kuwait, oman |
language |
string | en |
en or ar |
sortBy |
string | popularity |
popularity, price_asc, price_desc, best_rating, new_arrivals |
minPrice / maxPrice |
number | – | Price window in the market's currency |
minRating |
number | – | Minimum star rating (0–5) |
minDiscountPercent / maxDiscountPercent |
number | – | Discount window (0–100) |
brand |
string | – | Brand name or code, e.g. HP or hp |
seller |
string | – | Seller name or code, e.g. noon or p_9404 |
dealOnly |
boolean | false |
Only products with a noon deal tag |
includeDetails |
boolean | false |
Add description, specs, stock, offers, warranty, delivery |
includeReviews |
boolean | false |
Add up to five latest review snippets |
maxItems |
integer | 50 |
Hard cap on emitted products (1–10,000) |
Example: discounted laptops in the UAE
{
"mode": "search",
"searchQueries": ["laptop"],
"market": "uae",
"minDiscountPercent": 20,
"minRating": 4,
"maxItems": 50
}
Example: browse a Saudi category with product details
{
"mode": "byCategory",
"categoryPaths": ["electronics-and-mobiles/computers-and-accessories/computers-new/laptops"],
"market": "saudi",
"sortBy": "price_asc",
"maxPrice": 4000,
"includeDetails": true,
"maxItems": 100
}
Example: look up products by SKU or URL in Egypt
{
"mode": "byProduct",
"productInputs": [
"N70430909V",
"https://www.noon.com/egypt-en/renewed-hp-elitebook-845-g8-laptop-amd-ryzen-3-5450u-8gb-ddr4-ram-256gb-ssd-amd-radeon-tm-graphics-14-inch-fhd-windows11-pro-silver-english-arabic-silver/N70430909V/p/"
],
"includeReviews": true,
"maxItems": 10
}
Example: paste noon URLs from any market
{
"mode": "byUrl",
"startUrls": [
"https://www.noon.com/uae-en/search?q=perfume&sort%5Bby%5D=price&sort%5Bdir%5D=asc",
"https://www.noon.com/kuwait-en/electronics-and-mobiles/"
],
"maxItems": 50
}
Use cases
- Discount monitoring — track products above a discount threshold across GCC markets
- Price intelligence — compare current and list prices in each local currency
- Seller and buy-box research — see who sells a SKU, at what price, with what stock
- Catalog enrichment — pull titles, images, specs, and descriptions for product feeds
- Market research — compare assortment, availability, and ratings across seven storefronts
- Customer-feedback sampling — collect the latest review snippets and aggregate ratings
FAQ
Which noon markets are supported? UAE, Saudi Arabia, Egypt, Bahrain, Qatar, Kuwait, and Oman. Each returns prices in its own currency. English and Arabic storefronts are supported.
Can I paste noon URLs instead of filling in fields?
Yes. byUrl accepts search, category, and product URLs. The market and language in each URL override the Market and Language fields. URL price, rating, brand, and seller filters are applied when present; a deal filter in a URL becomes a deal-only filter.
Why is originalPrice missing on some products?
noon only exposes a list price when a product is discounted. Products without a discount omit originalPrice, discountPercent, and discountAmount.
Why are rating or review count missing on some products?
The values are omitted for products noon has not rated yet. Setting a positive minRating excludes unrated products.
Can the actor return full review text?
It returns up to the five latest review snippets through includeReviews. The full paginated review history is not publicly available to a cookieless request, so it is not claimed.
How many products can one input return? Up to 10,000 per run. noon serves at most 10,000 rows per search or category input, 200 products per page with a page 50 cap. For larger catalogs, split the job by category, brand, or price window.
Does the actor sort by biggest discount?
noon does not provide a server-side discount sort. Use minDiscountPercent and maxDiscountPercent to target a discount range, then sort the dataset by discountPercent in your spreadsheet or database.
How fresh is the data? Every run reads noon's live catalog responses. Prices, discounts, ratings, and stock reflect the storefront at the time of the run.
Do I need a proxy or a noon account? No. The actor uses noon's public catalog data and handles its own connection automatically. No login, cookie, API key, or proxy configuration is required.
Is this actor affiliated with noon? No. This is an independent third-party tool. It is not affiliated with or endorsed by Noon AD Holdings Ltd or noon.com.
Python quickstart
Use a schema-derived input and the Python standard library to start a run. An Apify account and token are required for execution.
Source build vuTAH34zheN5JkmKP. Documentation is regenerated from the default published build; private drafts are not included.