Poshmark Scraper - Listings, Prices & Seller Data
Pricing
from $3.50 / 1,000 results
Poshmark Scraper - Listings, Prices & Seller Data
Scrape Poshmark listings by keyword or URL. Extract title, brand, price, original price, size, color, condition, seller info, likes, shares, images, and more. No API key, no login required.
Pricing
from $3.50 / 1,000 results
Rating
0.0
(0)
Developer
Logiover
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Poshmark Scraper
Scrape Poshmark listings at scale by keyword or direct URL. Extract product titles, brands, prices, sizes, colors, seller profiles, engagement metrics, and images from poshmark.com without any API key or login.
What does Poshmark Scraper do?
Poshmark Scraper connects directly to Poshmark's internal data endpoints to pull structured listing data in bulk. It bypasses the browser-rendered frontend entirely and works with the server-side JSON API that powers poshmark.com, which means faster extraction and cleaner data compared to HTML-based scraping.
The actor supports two input modes: keyword search (with full pagination up to 5,000 results per query) and direct listing URLs for targeted extraction. Every run outputs a flat, analysis-ready dataset with 24 fields covering product details, pricing history, seller identity, engagement metrics, and image CDN links.
No API key, no login, no cookies required. Runs on datacenter proxies. Each request returns up to 48 listings per page, and the actor follows Poshmark's cursor-based pagination automatically until your configured limit is reached or results are exhausted.
Who is it for?
- Resellers and flippers who track pricing trends, brand demand, and competitive listings to optimize their own Poshmark closets.
- Market researchers analyzing secondhand fashion pricing, brand popularity, and consumer demand across categories.
- E-commerce data teams monitoring competitor inventory, pricing strategies, and product mix on the Poshmark marketplace.
- Brand analysts tracking how specific brands perform in the resale market, including price decay from retail to secondhand.
- Academic researchers studying circular fashion, resale economics, and consumer behavior in peer-to-peer marketplaces.
Use cases
- Price benchmarking: Search for a brand + category (e.g. "Nike Air Force 1") and extract current and original prices across hundreds of listings to compute average resale value and discount depth.
- Inventory monitoring: Track daily snapshots of available listings for a product category to detect supply shifts, seasonal patterns, and new-listing velocity.
- Seller intelligence: Extract seller usernames and engagement metrics (likes, shares, comments) to identify top-performing closets in a niche.
- Brand resale analysis: Compare original retail prices against current asking prices to measure brand-level price retention in the secondhand market.
- Lead generation for consignment services: Find high-volume sellers with large, active closets and extract their profile data for outreach.
Why use Poshmark Scraper?
- No API key, no login: Works out of the box. No Poshmark account, no OAuth, no cookies to manage. Fully keyless.
- 24 structured fields: Every listing comes with title, brand, price, original price, size, color, condition, category, department, seller info, engagement stats, images, style tags, and timestamps.
- Bulk extraction with pagination: Each search query can return up to 5,000 listings via automatic cursor-based pagination. Feed multiple queries in a single run.
- Direct URL mode: Pass specific listing URLs to extract full details for targeted items without running a broad search.
- Export to CSV, JSON, Excel: Download your results from the Apify dataset tab in any format, or pipe them to Google Sheets, Slack, or your data warehouse via built-in integrations.
- Pay-per-result pricing: You only pay for the compute time you use. No monthly subscription, no per-row surcharge. A typical run extracting 1,000 listings costs under $0.10.
What data can you extract?
The actor extracts 24 fields from each Poshmark listing. Every field is returned as a string for maximum compatibility with downstream tools.
| Field | Type | Description |
|---|---|---|
| id | string | Poshmark internal listing ID |
| url | string | Full listing URL on poshmark.com |
| title | string | Listing title |
| brand | string | Brand name |
| price | number | Current asking price |
| originalPrice | number | Original retail price listed by seller |
| currency | string | Currency code (typically USD) |
| size | string | Item size (e.g. "M", "10", "XXS") |
| colors | string | Comma-separated color names |
| condition | string | Item condition if specified |
| department | string | Department (Women, Men, Kids, Home, etc.) |
| category | string | Category within department (Tops, Shoes, etc.) |
| description | string | Full listing description text |
| sellerUsername | string | Seller's Poshmark username |
| sellerFullName | string | Seller's display name |
| likeCount | number | Number of likes on the listing |
| commentCount | number | Number of comments |
| shareCount | number | Number of shares |
| imageUrl | string | Primary listing image URL (full resolution) |
| allImages | string | All image URLs separated by pipe character |
| styleTags | string | Comma-separated style/trend tags |
| status | string | Listing status (available, sold, etc.) |
| createdAt | string | ISO timestamp when listing was created |
| updatedAt | string | ISO timestamp of last update |
Example JSON output
{"id": "6681fd21154600608f5cc74f","url": "https://poshmark.com/listing/NEW-STINE-GOYA-SLEEVELESS-SEQUIN-TOP-6681fd21154600608f5cc74f","title": "NEW STINE GOYA SLEEVELESS SEQUIN TOP","brand": "STINE GOYA","price": 99,"originalPrice": 300,"currency": "USD","size": "XXS","colors": "Green, Pink","condition": null,"department": "Women","category": "Tops","description": "NEW STINE GOYA SLEEVELESS SEQUIN TOP\n\nNEW WITHOUT TAGS\n\nSIZE- XXS\n\nDETAIL:\n- Sleeveless\n- Crew neckline\n- Hidden back zipper close","sellerUsername": "hideandchic","sellerFullName": "H&C Luxury Consignment","likeCount": 4,"commentCount": 0,"shareCount": 164,"imageUrl": "https://di2ponv0v5otw.cloudfront.net/posts/2024/06/30/6681fd21154600608f5cc74f/l_6681fd4007ac558dfc3d835c.jpg","allImages": "https://di2ponv0v5otw.cloudfront.net/posts/2024/06/30/6681fd21154600608f5cc74f/l_6681fd4007ac558dfc3d835c.jpg | https://di2ponv0v5otw.cloudfront.net/posts/2024/06/30/6681fd21154600608f5cc74f/l_6681fd4907ac558dfc3d835d.jpg","styleTags": "Revolve, Designer, Sequins","status": "available","createdAt": "2024-06-30T17:49:37-07:00","updatedAt": "2026-09-08T14:46:58-07:00"}
How to use
Option A: Search by keyword
Use keyword search to find listings across all of Poshmark. The actor paginates automatically and pulls up to 5,000 results per query.
- Go to the actor page on Apify Store and click Try for free.
- Enter one or more search keywords in the Search Keywords field.
- Set Max Items to control how many listings to extract per query.
- Click Start and wait for the run to finish.
- Download your data from the Dataset tab.
{"searchQueries": ["nike air force 1", "vintage levis"],"maxItems": 200}
Option B: Scrape specific listing URLs
If you already have Poshmark listing URLs, paste them directly to extract full details.
- Click Try for free on the actor page.
- Paste your listing URLs into the Listing URLs field (one per line).
- Click Start.
- Download results from the Dataset tab.
{"listingUrls": ["https://poshmark.com/listing/Nike-Air-Force-1-Womens-Shoes-6aa076731ae1adbd246fb4a6","https://poshmark.com/listing/Nike-Dunks-6a974b26946da28798e231af"]}
You can combine both modes in a single run.
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
| searchQueries | array | [] | List of search keywords. Each query runs as a separate search with its own pagination. |
| listingUrls | array | [] | Direct Poshmark listing URLs. The actor extracts the listing ID from the URL automatically. |
| maxItems | integer | 100 | Maximum items per search query. Set to 0 for the maximum (5,000). Does not apply to direct URLs. |
| proxyConfig | object | {"useApifyProxy": true} | Proxy settings. Datacenter proxies are sufficient. |
Full input example
{"searchQueries": ["designer handbag", "jordan retro"],"listingUrls": ["https://poshmark.com/listing/Nike-Shoes-6aa076731ae1adbd246fb4a6"],"maxItems": 500,"proxyConfig": { "useApifyProxy": true }}
Output example
{"id": "6a974b26946da28798e231af","url": "https://poshmark.com/listing/Nike-Dunks-6a974b26946da28798e231af","title": "Nike Dunks","brand": "Nike","price": 65,"originalPrice": 110,"currency": "USD","size": "10","colors": "White, Black","condition": null,"department": "Men","category": "Shoes","description": "Nike Dunk Low in White/Black. Worn twice, excellent condition. Original box included.","sellerUsername": "sneakerhead_joe","sellerFullName": "Joe S.","likeCount": 12,"commentCount": 2,"shareCount": 45,"imageUrl": "https://di2ponv0v5otw.cloudfront.net/posts/2026/08/15/6a974b26946da28798e231af/l_abc123.jpg","allImages": "https://di2ponv0v5otw.cloudfront.net/posts/2026/08/15/6a974b26946da28798e231af/l_abc123.jpg | https://di2ponv0v5otw.cloudfront.net/posts/2026/08/15/6a974b26946da28798e231af/l_def456.jpg","styleTags": "Sneakers, Streetwear","status": "available","createdAt": "2026-08-15T10:30:00-07:00","updatedAt": "2026-09-01T08:15:00-07:00"}
Tips for best results
- Start with a small maxItems (50-100) to test your query before running large extractions. This saves compute credits.
- Use specific search terms rather than broad ones. "Nike Air Max 97 black" yields more relevant results than just "Nike".
- Combine multiple queries in a single run to batch related searches efficiently.
- Monitor like counts and share counts as engagement proxies for listing demand and seller activity.
- Compare price vs. originalPrice to calculate discount percentages and identify underpriced items.
- Use the styleTags field to discover trending categories and niche keywords for your own listings.
- Schedule regular runs with Apify's built-in scheduler to track inventory changes and new listings over time.
- Filter by department/category in your downstream analysis to segment data by Women, Men, Kids, or Home.
- Export to Google Sheets for quick pivot tables and charts. The dataset integrates directly via the Apify Google Sheets connector.
- Check the status field to distinguish between available, sold, and reserved listings in your analysis.
Integrations
Poshmark Scraper works with all standard Apify integrations:
- Google Sheets — Automatically push results to a Google Sheet after each run. Perfect for tracking price changes over time.
- Slack — Get notified in your Slack channel when a run completes, with a summary of items found.
- Zapier — Connect the actor output to 5,000+ apps. Trigger workflows when new listings match your criteria.
- Make (Integromat) — Build multi-step automations that process Poshmark data alongside other sources.
- Webhooks — Receive a POST request with run metadata when the actor finishes. Use it to trigger your own pipeline.
- Schedule — Run the actor on a schedule (hourly, daily, weekly) to monitor listings continuously.
API usage
cURL
curl -X POST "https://api.apify.com/v2/acts/logiover~poshmark-scraper/runs?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"searchQueries":["nike shoes"],"maxItems":100}'
Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_TOKEN' });const run = await client.actor('logiover/poshmark-scraper').call({searchQueries: ['nike shoes'],maxItems: 100,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_TOKEN")run = client.actor("logiover/poshmark-scraper").call(run_input={"searchQueries": ["nike shoes"],"maxItems": 100,})items = list(client.dataset(run["defaultDatasetId"]).iterate_items())print(f"Extracted {len(items)} listings")
Use with AI agents (MCP)
Poshmark Scraper is compatible with Apify's MCP (Model Context Protocol) server, which means you can call it directly from AI agents like Claude, ChatGPT, or custom LLM pipelines. Connect the Apify MCP server to your agent and ask it to run the actor with natural language prompts.
Example prompt: "Search Poshmark for 'vintage Levi's 501' and return the 50 cheapest listings with their prices and seller usernames."
FAQ
Do I need a Poshmark account or API key?
No. The actor works without any authentication. It accesses Poshmark's public-facing data endpoints that serve the website itself. No login, no API key, no cookies required.
What data can I extract from Poshmark?
You get 24 fields per listing: title, brand, price, original price, size, colors, condition, department, category, full description, seller username, seller name, likes, comments, shares, images, style tags, listing status, and timestamps.
How many listings can I scrape per run?
Each search query supports up to 5,000 results via automatic pagination. You can include multiple queries in a single run. Direct URL mode has no practical limit.
Why am I getting zero results for my search?
Poshmark may return zero results if the search term is too specific or misspelled. Try broader keywords. If you consistently get zero results, the search endpoint may be temporarily rate-limited; wait a few minutes and retry.
Why are some fields null?
Fields like condition, styleTags, or sellerFullName depend on what the seller provided when creating the listing. If the seller did not fill in a field, it will be null in the output.
Can I export the data to CSV or Excel?
Yes. After the run completes, go to the Dataset tab and click the download button. You can export as JSON, CSV, Excel, XML, or HTML. You can also push data directly to Google Sheets.
How fast is the scraper?
A typical run extracting 500 listings by search takes under 30 seconds. Direct URL mode processes about 5 listings per second with concurrency. Speed depends on your proxy configuration and Poshmark's response times.
Is scraping Poshmark legal?
This actor extracts publicly available data from poshmark.com. It does not bypass any authentication, CAPTCHA, or access control mechanisms. Users are responsible for complying with Poshmark's Terms of Service and applicable laws in their jurisdiction. See the legality section below.
Can I scrape sold listings?
The search API primarily returns available listings. Sold listings may appear in search results if recently sold. To check a specific sold listing, use the direct URL mode with the listing URL.
How often is the data updated?
The actor fetches live data from Poshmark on every run. Prices, availability, and engagement counts reflect the state at the moment of extraction. Schedule regular runs to track changes over time.
What proxy should I use?
Datacenter proxies work fine with Poshmark. The default Apify proxy configuration is sufficient. Residential proxies are not needed.
Are there any related scrapers?
Check the related scrapers section below for other e-commerce and marketplace scrapers by logiover.
Is it legal to scrape Poshmark?
This actor accesses publicly visible listing data on poshmark.com. It does not log in, bypass CAPTCHAs, or circumvent any technical protection measures. The data extracted (product titles, prices, images, seller usernames) is the same information any visitor sees when browsing the site without an account.
That said, web scraping exists in a legal gray area that varies by jurisdiction. Users are responsible for ensuring their use of this actor complies with Poshmark's Terms of Service, the Computer Fraud and Abuse Act (CFAA), GDPR, and any other applicable regulations. Apify provides the infrastructure; how you use the data is your responsibility.
We recommend reviewing Poshmark's Terms of Service and Privacy Policy before running large-scale extractions.
Related scrapers
- eBay Scraper — Extract listings, prices, and seller data from eBay.
- Amazon Scraper — Scrape product details, reviews, and pricing from Amazon.
- Mercari Scraper — Extract listings and prices from Mercari marketplace.
- Depop Scraper — Scrape Depop listings, seller data, and pricing.