# Noon.com Seller & Buy Box Monitor (`drramerets/noon-sellers`) Actor

Every seller of a noon.com product with their price and stock, who is winning the sale right now, and how much more the winner charges than the cheapest offer. One row per seller, ready to sort and pivot.

- **URL**: https://apify.com/drramerets/noon-sellers.md
- **Developed by:** [Andrey](https://apify.com/drramerets) (community)
- **Categories:** E-commerce
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.50 / 1,000 seller offers

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Noon.com Seller & Buy Box Monitor

Every seller of a noon.com product — their price, their stock, and which one is actually
getting the sale.

### What you get

A table with one row per seller offer: the product, the seller's name, their price, how
many units they have and whether noon ships it for them. Each row also carries the
answers you would otherwise have to work out yourself — who is currently winning the sale,
what the cheapest offer on the product is, and how much more the winner charges than the
cheapest.

That last number is the point. The seller who wins is regularly **not** the cheapest one:
on a live product we measured a winner at 2,299 with a single unit left, while three
competitors sat at 2,399 and above with plenty of stock. If you assume the lowest price
wins, you will price yourself down for nothing.

### What you can do with it

- Watch who undercuts you on your own products, and by how much.
- See when the winning seller changes hands, and what it took.
- Spot competitors running low on stock before they do.
- Check whether winning is worth the discount — the overpay column tells you what the
  current winner gets away with.
- Put it on a schedule and the result becomes a day-by-day feed of your competition.

### How to use it

Paste the links of the products you care about, or their codes — both work, and you can
mix them. Don't have a list yet? Give it keywords or a category page instead and it will
find the products first. Choose the marketplace, set how many products to check, press
Start.

Two things worth knowing before you press it:

- Searching by keyword is slower and heavier than naming products directly, because every
  product found has to be opened one by one.
- By default you get a row per seller, which is what you want for sorting and pivots. If
  you feed the result into your own code, switch the layout to one row per product and the
  sellers come grouped inside it.

### Good to know

- Stock is what the seller declares on the page, not a warehouse count.
- Availability by city does not exist on noon, so it is not in the data.
- Some products publish extra signals — how many sold recently, how few are left, whether
  the price is the lowest it has been in a month. These come from badges noon chooses to
  show, so they are there for some products and absent for most.
- The manufacturer's model number is whatever the seller typed. Sometimes a real barcode,
  sometimes a marketing name.

### What it costs

**$0.50 per 1,000 seller offers**, plus $0.005 per run. A product carries three to
four sellers on average, so 1,000 products cost roughly $1.75. On top of that Apify
bills your account for what the run consumes on the platform — computing time and data
transfer. Every product is opened separately here, so in our own measurements that came
to roughly **$0.14 per 1,000 products**.

### Support

Questions, a field you need that is not here, or another marketplace — write to
**admin@noonseller.ae** or visit **[noonseller.ae](https://noonseller.ae)**.

*This is an independent tool. It is not affiliated with, endorsed by, or connected to
noon.com.*

### Related actors

- **Noon.com Product & Ads Scraper** — search results with paid placements marked.
- **Noon.com Reviews Scraper** — what buyers write, with dates and translations.

# Actor input Schema

## `productUrls` (type: `array`):

The products to check, one per line. Paste the link from your browser or the product code from the end of it — both work, and you can mix them. Links to a category, a brand or a search page are not products; they are skipped and named at the end of the run.

## `queries` (type: `array`):

Instead of naming products, find them by keyword — exactly what you would type into noon's search box, e.g. air fryer. Every product found is then opened one by one, so a keyword run takes longer and uses more of your quota than the same number of products given directly.

## `categories` (type: `array`):

Paste the address of a noon category page, e.g. https://www.noon.com/uae-en/electronics-and-mobiles/ — copied straight from your browser.

## `country` (type: `string`):

Which noon marketplace to read. Prices, sellers and availability differ between them.

## `language` (type: `string`):

Arabic returns product names and specifications in Arabic. Prices, seller names and product codes are the same in both, so Arabic and English runs can be compared side by side.

## `outputFormat` (type: `string`):

One row per seller keeps the file the same width whatever happens, so you can sort by price and build a pivot of who wins the Buy Box. Choose one row per product only if you feed the result into your own code.

## `maxItems` (type: `integer`):

How many products to check at most. With one row per seller, expect several rows per product.

## `maxPagesPerQuery` (type: `integer`):

Leave as is. Lower it only if you want a quick look at the top results of each keyword.

## `useApifyProxy` (type: `boolean`):

Leave switched on. Without it noon will not serve data for the marketplace you selected and the run comes back empty.

## `customProxyUrl` (type: `string`):

Optional. Use your own proxy instead of Apify's.

## Actor input object example

```json
{
  "productUrls": [
    "https://www.noon.com/uae-en/N53433297A/p/"
  ],
  "country": "ae",
  "language": "en",
  "outputFormat": "flat",
  "maxItems": 100,
  "maxPagesPerQuery": 10,
  "useApifyProxy": true
}
```

# Actor output Schema

## `offers` (type: `string`):

One row per seller offer: their price and stock, whether they are winning the sale, and how much more the winner charges than the cheapest offer.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "productUrls": [
        "https://www.noon.com/uae-en/N53433297A/p/"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("drramerets/noon-sellers").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "productUrls": ["https://www.noon.com/uae-en/N53433297A/p/"] }

# Run the Actor and wait for it to finish
run = client.actor("drramerets/noon-sellers").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "productUrls": [
    "https://www.noon.com/uae-en/N53433297A/p/"
  ]
}' |
apify call drramerets/noon-sellers --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=drramerets/noon-sellers",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/DJwIGOd455pqBbybg/builds/JdAZZWylBZ62bsXGt/openapi.json
