Netshoes Brazil - Products, Prices, Stock & Reviews avatar

Netshoes Brazil - Products, Prices, Stock & Reviews

Pricing

from $1.50 / 1,000 product results

Go to Apify Store
Netshoes Brazil - Products, Prices, Stock & Reviews

Netshoes Brazil - Products, Prices, Stock & Reviews

Scrape sportswear and footwear from netshoes.com.br. Search by keyword with the store's own brand, size, colour and gender filters, or paste product and category links. Returns BRL price, was-price, discount, instalments, stock per size, colour variants, media, specs and reviews with fit feedback.

Pricing

from $1.50 / 1,000 product results

Rating

0.0

(0)

Developer

Abot API

Abot API

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Netshoes Product Scraper (Brazil)

Scrape sportswear, footwear and sports equipment from netshoes.com.br, Brazil's largest online sports retailer.

Search by keyword with the store's own brand, department, product type, size, colour and gender filters, or paste product, category, brand and search links and scrape them directly. Every product comes back as one flat row with price in BRL, was-price, discount, instalment terms, stock, colour variants, media and rating, plus optional full specifications and customer reviews with the store's own size and fit feedback.


What you get

Always returned (no extra cost per product)

FieldExample
skuFBA-86LU-026 (one colour of a product, this is the row's identity)
productCodeFBA-86LU (the product family, all colours)
titleTênis Adidas Response Runner 2
brandAdidas
urlhttps://www.netshoes.com.br/p/FBA-86LU-026
department, productTypeRunning, Tênis
currencyBRL
price279.99
originalPrice399.99
discountAmount, discountPercent, onSale120.0, 30, true
paymentMethod, paymentMethodPricePIX, 265.99
installments{"count": 4, "amountEach": 70.0, "total": 279.99, "interestFree": true}
installmentPlansevery plan the store offers, 1x through 10x
sellerName, soldByStoreNetshoes, true (marketplace sellers are named)
inStock, sizestrue, ["34", "35", ..., "43"]
colorVariantsthe same product in its other colours, with links
freeShipping, fastFulfilment, additionalDeliveryDays, preSaleshipping policy for this product
badges["LANÇAMENTO", "NetsGO"]
featuredImage, imagesfull gallery
rating, reviewCount4.88, 180

With Read each product's page on

description, longDescription, specs (every attribute the store publishes: material, technology, drop, pronation, terrain, weight, warranty, origin), highlights, material, technology, weightGrams, dimensionsCm, origin, warranty, releaseDate, sizeType, sizeGuideAvailable, thumbnails, videos, named color, and:

  • variants - stock per size, each with its own sku, price, originalPrice, available and ean
  • sizesInStock - just the sizes you can actually buy right now

With Fetch customer reviews and fit feedback on

  • reviews - rating, text, authorName, recommends, publishedAt, photos

  • ratingHistogram - votes and percentage per star

  • percentRecommended

  • fitFeedback - the store's size and fit surveys. Each topic carries the wording of its own five-point scale, so you can tell which way it leans without guessing:

    [{"topic": "Tamanho", "average": 2.95, "midpoint": 3.0,
    "scaleLow": "Justo", "scaleMid": "Na Medida", "scaleHigh": "Largo", "responses": 180},
    {"topic": "Conforto", "average": 3.91, "midpoint": 3.0,
    "scaleLow": "Desconfortável", "scaleMid": "Confortável",
    "scaleHigh": "Muito Confortável", "responses": 180}]

    An average below midpoint on Tamanho means buyers found it runs tight.

  • questions - answered customer questions about the product


Two modes

Search mode

Set Mode to Search by keyword and give one or more keywords. Netshoes is a Brazilian store, so Portuguese keywords match far more: tenis adidas finds Adidas trainers, adidas sneakers finds almost nothing.

One quirk worth knowing: Netshoes maps a handful of popular phrases to a curated campaign page rather than a product list. tenis corrida, for example, returns the store's "CORRIDA" promotional page, which has no product grid at all, and no sort, page or search parameter escapes it. Ordinary multi-word searches are unaffected (tenis adidas returns 3,218 matches, chuteira campo returns 11,346). When it happens the run says so and names the page, rather than reporting it as an empty catalogue or as a connection failure. Reword the keyword, or paste the category link you want in URL mode.

URL mode

Set Mode to Scrape pasted links and paste any mix of:

LinkWhat you get
https://www.netshoes.com.br/p/tenis-adidas-response-runner-2-FBA-86LU-026that one product, always with full detail
https://www.netshoes.com.br/busca?q=tenis%20adidasevery result for that keyword
https://www.netshoes.com.br/running/tenis/adidasevery product in that category or brand
https://www.netshoes.com.br/especiais/corridaevery product on that campaign page
.../busca?q=tenis&page=4starts at page 4 instead of page 1

Every listing shape above is the same result page underneath, so they all accept the same filters and the same result limits. Tracking parameters (mi, psn, utm_*) are stripped, so two links that differ only by attribution are treated as one search.


Filters

All filters apply to both modes. Type each value the way the store shows it: the store's own filter list is read at run time, so spelling, accents and capitalisation are matched for you, and new balance, New Balance and new-balance all reach the same brand.

  • Brand - Nike, Adidas, Olympikus, New Balance, ...
  • Department - Running, Futebol, Academia, ...
  • Product type - Tenis, Chuteiras, Camisetas, Chinelos, ...
  • Size - 40, M, GG. Brazilian footwear sizes are numeric and differ from EU and US sizing.
  • Colour - Portuguese colour names (Preto, Branco, Azul). A product sold as Preto+Branco matches either of its colours.
  • Gender - feminino, masculino, menina, menino, bebe-menina, bebe-menino
  • Minimum / Maximum price in BRL
  • Only products in stock, Only discounted products
  • Sort by - most popular, best sellers, new releases, offers, best rated, price low to high, price high to low

Two behaviours worth knowing:

  • A value this search does not offer is reported in the log and then applied to the results anyway, so an unrecognised value returns fewer rows, never more. It is never guessed at, because an invented filter value makes this store return zero results with no error at all.
  • A filter a pasted link already carries is left exactly as you pasted it, rather than being overwritten by a run-level default.

Incremental mode and Resume

Two different things, both in the Resume and recurring updates section.

Incremental mode is for scheduled monitoring. The first run returns everything as NEW; later runs return only NEW, UPDATED and REAPPEARED, with changedFields naming exactly what moved. That makes it a cheap way to watch price drops and restocks, because you are not billed for rows that did not change. UNCHANGED and EXPIRED rows are off by default and both add billed rows when you turn them on. EXPIRED is only produced once a run has fully scanned the tracked search, never when Max products capped it or Resume was used, so a partial run can never tombstone products that are still on sale.

State is kept per search and filter setup, so two different searches never mix. Use State key to name a campaign, or to deliberately share state across runs.

Resume from a previous run continues one specific interrupted run: paste its run or dataset ID and products already collected there are skipped and not re-billed.


Connection, speed and cost

Netshoes refuses ordinary connections on its result and product pages. The default Connection setting is correct and needs no change. At the start of every run, the actor opens one short browser session with the store (~20-40 seconds): the store clears it on its own, and every page after that — result pages, product pages, reviews — is read over a plain connection at full speed (seconds per page). You do nothing; the session opens and closes by itself.

If that session cannot be opened (rare, or the account's plan misses the connection), the run falls back to the previous behaviour: it starts on the cheapest connection and, the first time a page is refused, moves once to Apify Proxy's enhanced group and stays there for the rest of the run. That fallback is billed on your own Apify plan and costs more per request, which is another reason to leave the group list empty.

Consequences:

  • Typical run: one ~20-40s session at the start, then seconds per page, including full per-product detail and reviews.
  • Fallback run (rare): a page can take up to a minute on the enhanced connection. If your plan does not include it, the run says so explicitly and fails rather than returning an empty dataset that looks like an empty search.

A run that could not read any pages fails with a connection message. A run that read pages and genuinely matched nothing succeeds with zero rows. These two are never reported the same way.

Keeping a run cheap

  • A result page carries about 100 products and already includes price, discount, sizes, images and rating. Leave both per-product toggles off and you pay one page for every hundred products.
  • Read each product's page and Fetch customer reviews each need one extra page per product and are billed with one Product page detail event per product returned. They share that one page, so turning both on costs the same as turning on either.
  • Use Incremental mode for anything recurring.

Scope: Brazil only

This Actor covers netshoes.com.br only, and that is the whole of Netshoes today.

Netshoes previously operated Mexican and Argentine storefronts. Both were checked live on 2026-08-27 and neither exists any more: netshoes.com.mx and netshoes.com.ar both resolve to a single address that accepts a connection but serves no site at all, from two independent vantage points including one inside Brazil. There is no sibling storefront and no shared backend left to support, so there is no country selector in the input, and links to those domains are rejected rather than silently treated as Brazilian ones.


What this Actor deliberately does not return

  • A delivery estimate or shipping cost for your address. Netshoes only quotes those after you enter a postcode (CEP) on the product page, and it publishes no per-address quote in the page itself. What the page does publish is returned instead: freeShipping, fastFulfilment, additionalDeliveryDays and preSale.
  • Every review of a product. A product page publishes only its most recent reviews inline (usually about a dozen) however many it has in total. Those are returned along with the complete aggregates (reviewCount, ratingHistogram, percentRecommended, fitFeedback), which cover all of them. reviewsTruncated is true on any product with more, so you never have to infer it from a count mismatch.
  • The email address of a customer who asked a question. The store publishes it; it is a private individual's contact detail with no bearing on the product, so it is dropped and never reaches the dataset. The question, the answer and who answered are all returned.
  • Prices for a colour you are not looking at. colorVariants carries each other colour's code, name, image, link and availability, but the store only prices the colour whose page you are on. Follow the link to price one.

Output sample

{
"sku": "FBA-86LU-026",
"productCode": "FBA-86LU",
"title": "Tênis Adidas Response Runner 2",
"brand": "Adidas",
"url": "https://www.netshoes.com.br/p/FBA-86LU-026",
"department": "Running",
"productType": "Tênis",
"genders": ["Feminino", "Masculino"],
"categoryPath": ["Running", "Tênis", "Adidas", "Preto"],
"currency": "BRL",
"price": 279.99,
"originalPrice": 399.99,
"discountAmount": 120.0,
"discountPercent": 30,
"onSale": true,
"paymentMethod": "PIX",
"paymentMethodPrice": 265.99,
"installments": {"count": 4, "amountEach": 70.0, "total": 279.99, "interestFree": true},
"sellerName": "Netshoes",
"soldByStore": true,
"inStock": true,
"sizes": ["34", "35", "36", "37", "38", "39", "40", "41", "42", "43"],
"sizesInStock": ["34", "35", "36", "37", "38", "39", "40", "41", "42", "43"],
"variants": [
{"sku": "FBA-86LU-026-34", "size": "34", "available": true,
"price": 279.99, "originalPrice": 399.99, "ean": "4069997267496"}
],
"color": {"name": "Preto+Branco", "primaryName": "Preto", "primaryHex": "#000000",
"secondaryName": "Branco", "secondaryHex": "#ffffff"},
"colorVariants": [
{"sku": "FBA-86LU-036", "colorName": "Marinho+Branco",
"url": "https://www.netshoes.com.br/p/FBA-86LU-036", "available": true}
],
"freeShipping": true,
"fastFulfilment": true,
"additionalDeliveryDays": 0,
"preSale": false,
"badges": ["LANÇAMENTO", "NetsGO"],
"material": "Têxtil",
"technology": "Cloudfoam",
"weightGrams": 690,
"origin": "Nacional",
"sizeGuideAvailable": true,
"rating": 4.88,
"reviewCount": 180,
"percentRecommended": 98,
"fitFeedback": [
{"topic": "Tamanho", "average": 2.95, "midpoint": 3.0,
"scaleLow": "Justo", "scaleMid": "Na Medida", "scaleHigh": "Largo", "responses": 180}
],
"reviewsTruncated": true,
"changeType": "NEW",
"changedFields": [],
"firstSeenAt": "2026-08-27T12:00:00Z",
"lastSeenAt": "2026-08-27T12:00:00Z",
"scrapedAt": "2026-08-27T12:00:00Z"
}

Reviewer names and review text are omitted from this sample on purpose; the dataset returns them as the store publishes them.


Send results into your apps (MCP connectors)

Optionally pipe results into Notion, Linear, Airtable or Apify via MCP connectors, in the Export to your apps (MCP connectors, optional) section of the input. Each connector receives a condensed summary per product; the complete record always stays in the dataset, so nothing is lost if you leave this off.

  • mcpConnectors - the MCP connectors to export this run's products into (Notion, Linear, Airtable, Apify). Leave it empty and nothing is exported.
  • notionParentPageUrl - Notion connector only: the page under which one child page per product is created. Required when mcpConnectors includes Notion, ignored otherwise.
  • maxNotifyListings - how many products are exported to each connector in one run, default 50. This caps the export only; it never changes what the dataset returns.

Export runs after the dataset is complete and is best-effort: if a connector is unreachable the run still succeeds with a warning, and your products are still in the dataset.


Pricing

You are charged for:

  • Product result - each product returned in the dataset
  • Product page detail - once per product whose own page was read, for full description, specifications, per-size stock, extra media or reviews. Only charged for products that actually reach the dataset, so a run in Incremental mode is never billed for a product it suppressed, and a product whose page the store refused is returned from its result card and is not billed either.
  • Actor start - once per run, scaled by memory

One case is worth calling out before you run it: a pasted product link in URL mode always reads the product page, because there is no result card behind it to fall back on. So a product link is always billed one Product page detail event, even with Read each product's page switched off. Search mode and pasted category, brand or search links honour the toggle exactly as written.