Poshmark Product & Listing Scraper
Pricing
from $2.00 / 1,000 results
Poshmark Product & Listing Scraper
Scrape Poshmark listings in bulk by keyword, brand, category or seller closet. Export price, original price, brand, size, condition, colors, photos, seller and sold-price data as clean JSON. No login or API key required.
Pricing
from $2.00 / 1,000 results
Rating
0.0
(0)
Developer
Nicolas van Arkens
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Extract Poshmark product listings in bulk - by keyword, brand, category, or an entire seller's closet - as clean, structured JSON. No login, no API key. Perfect for resellers, price research, brand monitoring, dropshipping/sourcing, and market analytics on the social resale marketplace.
Give it a list of search queries (or paste Poshmark URLs) and it paginates each one deep - up to Poshmark's 5,000-listings-per-search ceiling - returning one tidy row per listing with price, brand, size, condition, colors, photos, seller and engagement stats.
What you can scrape
- Keyword search - e.g.
nike air max,lululemon leggings,coach bag. Run many queries in one go. - Brand catalogs - every listing for a brand (e.g. all
NikeinMen), no keyword needed. - Category pages - paste a Poshmark category URL.
- Closets (a whole seller's inventory) - paste
https://poshmark.com/closet/USERNAMEto pull everything that seller lists. Give it a list of usernames to scrape many sellers at once. - Sold listings - flip the Availability filter to Sold to see what items actually sold for (gold for pricing research).
Filter by department, brand, size, color, condition (New With Tags), availability and sort by newest or price.
What you get - output fields
Every row is one listing:
| Field | Description |
|---|---|
id | Poshmark listing ID |
title | Listing title |
url | Direct link to the listing |
price | Current asking price (number) |
originalPrice | Seller's original/retail price, if set |
currency | Currency code, e.g. USD |
priceDropPercentage | Price-drop % badge, if any |
brand | Brand |
size / sizeWithSystem | Size (e.g. M, 9) and with system (e.g. US 9) |
department | Women / Men / Kids / Home / Pets / Electronics |
category | Item category, e.g. Shoes, Dresses |
condition / conditionCode / isNwt | New With Tags / Like New / Good / Fair; raw code; and a New-With-Tags flag |
colors | List of colors |
inventoryStatus / isAvailable / isSold | available or sold_out, plus booleans |
sellerUsername / sellerName | The seller |
likeCount / shareCount / commentCount | Engagement stats |
activeBuyerOffers | Number of active buyer offers |
description | Full item description |
coverPhoto / photos / photoCount | Cover image URL, all image URLs, and count |
createdAt / firstPublishedAt / updatedAt | Listing timestamps |
searchQuery / sourceUrl / scrapedAt | Which query/URL surfaced it, and when |
Example output
{"id": "6a3af2c9dc3b4639ba5146b7","title": "Nike KillShot shoes","url": "https://poshmark.com/listing/Nike-KillShot-shoes-6a3af2c9dc3b4639ba5146b7","price": 15.0,"originalPrice": null,"currency": "USD","priceDropPercentage": 25,"brand": "Nike","size": "8.5","sizeWithSystem": "US 8.5","department": "Women","category": "Shoes","condition": "Fair","conditionCode": "uf","isNwt": false,"colors": ["Blue", "White"],"inventoryStatus": "available","isAvailable": true,"isSold": false,"sellerUsername": "ab411","sellerName": "Allie b","likeCount": 6,"shareCount": 4,"commentCount": 0,"coverPhoto": "https://di2ponv0v5otw.cloudfront.net/posts/.../l_....jpg","photos": ["https://di2ponv0v5otw.cloudfront.net/posts/.../l_....jpg"],"photoCount": 7,"createdAt": "2026-06-23T13:55:37-07:00","searchQuery": "nike air max","sourceUrl": "https://poshmark.com/search?query=nike+air+max&type=listings","scrapedAt": "2026-07-26T18:00:00+00:00"}
Example input
{"searchQueries": ["nike air max", "lululemon leggings"],"department": "Women","availability": "available","sortBy": "best_match","maxItemsPerQuery": 500,"proxyConfiguration": { "useApifyProxy": true }}
Scrape a brand's whole catalog (no keyword):
{ "brand": "Coach", "department": "Women", "maxItemsPerQuery": 2000 }
Scrape several sellers' full closets:
{ "startUrls": ["https://poshmark.com/closet/ashleyriehl","https://poshmark.com/closet/kirbydivers"] }
Do sold-price research for a brand:
{ "searchQueries": ["jordan 1"], "availability": "sold", "sortBy": "added_desc", "maxItemsPerQuery": 1000 }
Input options
- searchQueries - list of keyword searches. Each is paginated deep.
- startUrls - list of Poshmark search / brand / category / closet URLs.
- department - Women, Men, Kids, Home, Pets, Electronics (or any).
- brand - single brand to filter by (or browse a brand with no keyword).
- sizes - list of sizes (e.g.
M,9.5,32). - colors - list from Poshmark's 15 colors (Black, Blue, Red, ...).
- condition - Any or New With Tags only.
- availability - Available, Sold, or All.
- sortBy - Best Match, Just In, Price Low→High, Price High→Low.
- maxItemsPerQuery - cap per source (up to 5,000).
- maxItems - optional overall cap across all sources.
- proxyConfiguration - Apify Proxy (automatic by default).
How it works & notes
- Poshmark serves fully rendered pages that embed the complete listing data as JSON (
__INITIAL_STATE__), so the actor reads structured machine data, not brittle HTML - each row is stable and clean. - Deep pagination uses Poshmark's own cursor, 48 listings per page. A single Poshmark search is capped by Poshmark itself at ~5,000 results, so to pull a huge niche, split it across several queries, brands, sizes, or category/closet URLs.
- Listings are de-duplicated by ID across your whole run, so you are never billed twice for the same item.
originalPrice,priceDropPercentage,likeCountandcolorsare only present when the seller set them - an empty value is a real gap in that listing, not a scraping error.descriptionis the full seller-written text.- The actor reaches Poshmark through Apify Proxy and automatically rotates the proxy session and retries if a page is ever blocked.
Pricing
This actor bills pay per result: you are charged once for each listing returned. Blocked or empty pages are never charged.
FAQ
Do I need a Poshmark account or API key? No. Everything is scraped from public pages.
Can I get sold prices? Yes - set Availability to Sold. Great for figuring out what an item actually sells for before you list or buy.
Can I scrape a specific seller's whole closet? Yes - paste https://poshmark.com/closet/USERNAME into Start URLs. Add as many sellers as you like.
How many listings can I get per search? Poshmark caps a single search at ~5,000. Use multiple queries/brands/sizes/URLs to go beyond that.
Is this legal? The actor collects only publicly available data. You are responsible for using scraped data in line with Poshmark's terms and applicable laws.
Not affiliated with, endorsed by, or sponsored by Poshmark. "Poshmark" is a trademark of its respective owner and is used here only to describe what this tool scrapes.