Poshmark Listing & Seller Scraper
Pricing
from $0.90 / 1,000 results
Poshmark Listing & Seller Scraper
Look up full Poshmark listing detail (description, all photos, inventory, like/comment/share counts) or pull a seller's profile and their entire closet.
Pricing
from $0.90 / 1,000 results
Rating
0.0
(0)
Developer
Farhan Febrian Nauval
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Look up full Poshmark listing detail, or pull a seller's profile and their entire closet — as structured JSON.
Why use this actor
- Two jobs, one actor — get the complete detail of specific listings, or a seller's profile plus every item in their closet.
- Full listing detail — the whole description, every photo, size and inventory, brand, condition, colors, and live like / comment / share counts.
- Complete seller profiles — display name, location, follower and following counts, listings and sold counts, join date, bio, and avatar.
- Whole-closet export — page through a seller's listings (about 40-50 per page) up to a limit you set.
- Optional comments — include each listing's comments (author, text, time) when you need them.
- No account, no API key — works straight from public Poshmark pages.
- Stable JSON output — the same field names every run, ready for spreadsheets, databases, or pipelines.
How it works
- Pick a mode: Listing detail or Seller profile + closet.
- For Listing detail, give the actor one or more listing URLs or IDs. It looks up each listing's full detail and saves one
LISTING_DETAILrecord per listing. - For Seller profile + closet, give the actor one or more seller usernames or closet URLs. It saves one
SELLER_PROFILErecord per seller, then collects their closet listings asLISTINGrecords (up to your limit). - If a listing or seller can't be found, the actor still writes one diagnostic record so an input is never silently dropped.
- Everything lands in your dataset, exportable as JSON, CSV, or Excel.
You don't need to manage any browsers or scrapers.
Input
Mode: Listing detail
{"mode": "listing","listings": ["https://poshmark.com/listing/Coach-Shoulder-Bag-69e1f72021b80152730e6082"],"includeComments": true,"maxConcurrency": 4,"maxRequestRetries": 5,"proxyConfiguration": { "useApifyProxy": true }}
Mode: Seller profile + closet
{"mode": "seller","sellers": ["myclosetlaurie"],"maxListingsPerSeller": 100,"maxConcurrency": 4,"maxRequestRetries": 5,"proxyConfiguration": { "useApifyProxy": true }}
| Field | Type | Description |
|---|---|---|
mode | string | Required. listing (Listing detail) or seller (Seller profile + closet). Default listing. |
listings | array | Listing URLs or IDs. Used when mode = listing. |
sellers | array | Seller usernames or closet URLs. Used when mode = seller. |
maxListingsPerSeller | integer | Listings to collect from each seller's closet, ~40-50 per page (0–1000). 0 = profile only. Default 100. |
includeComments | boolean | When on, each listing record (Listing detail mode) includes its comments. Default false. |
maxConcurrency | integer | Parallel requests across all inputs (1–20). Default 4. |
maxRequestRetries | integer | Retries per request before giving up (1–15). Default 5. |
proxyConfiguration | object | Apify Proxy or a custom proxy list. Datacenter proxies work fine for this source. |
Output
Listing detail (recordType: "LISTING_DETAIL")
{"recordType": "LISTING_DETAIL","id": "69e1f72021b80152730e6082","title": "Coach Shoulder Bag","url": "https://poshmark.com/listing/69e1f72021b80152730e6082","price": 178.0,"currency": "USD","originalPrice": null,"size": "One Size","brand": "Coach","condition": null,"newWithTags": false,"department": "Women","category": "Bags","colors": ["Pink"],"sellerUsername": "vpcpvdsj","sellerHandle": "vpcpvdsj","images": ["https://di2ponv0v5otw.cloudfront.net/posts/2026/04/17/69e1f72021b80152730e6082/m_69e1f73bb6af920668ffc9e0.jpg","https://di2ponv0v5otw.cloudfront.net/posts/2026/04/17/69e1f72021b80152730e6082/m_69e1f740e9c77d254239ddca.jpg","... 4 more"],"coverImage": "https://di2ponv0v5otw.cloudfront.net/posts/2026/04/17/69e1f72021b80152730e6082/m_69e1f73bb6af920668ffc9e0.jpg","likeCount": 16,"commentCount": 0,"createdAt": "2026-04-17T02:02:24-07:00","description": "Brand New\nNo scratches.","status": "published","inventoryStatus": "available","multiItem": true,"quantityAvailable": 1,"sizeQuantities": [{ "size": "One Size", "available": 1, "sold": 0 }],"shareCount": 16,"sellerFullName": "Smith Damon","sellerId": "677384373eddeb8f23e001c4","firstPublishedAt": "2026-04-17T02:04:18-07:00","updatedAt": "2026-06-10T15:36:00-07:00","comments": [],"scrapedAt": "2026-06-11T02:31:20Z"}
Seller profile (recordType: "SELLER_PROFILE")
{"recordType": "SELLER_PROFILE","username": "myclosetlaurie","displayName": "Laurie Calkins","handle": "myclosetlaurie","url": "https://poshmark.com/closet/myclosetlaurie","location": "Olney, MD","city": "Olney","state": "MD","website": "www.bareandme.etsy.com","bio": "Hello everyone. I'm Laurie and I might have an extensive shopping addiction...","avatar": "https://di2ponv0v5otw.cloudfront.net/users/2025/09/23/12/t_68d2f09deb9fc4ccc67c7296.jpg","followers": 15354,"following": 19800,"listingsCount": 256,"availableCount": 593,"soldCount": "100+","shareCount": 237967,"joinedAt": "2019-03-23T12:54:50Z","lastActiveAt": "2026-06-07T00:00:00-07:00","id": "5c962c9af124c8d0f9addb3b","scrapedAt": "2026-06-11T02:31:21Z"}
In seller mode, each closet item follows the LISTING record (same shape as the
Poshmark Search Scraper), tagged with closetOf:
{"recordType": "LISTING","query": "myclosetlaurie","id": "6a17667ab142f3e95ab4e5c1","title": "Pink Leather J Crew Soft Belt","url": "https://poshmark.com/listing/6a17667ab142f3e95ab4e5c1","price": 38.0,"currency": "USD","originalPrice": null,"size": "Medium","brand": "J. Crew","condition": null,"newWithTags": false,"department": "Women","category": "Accessories","colors": ["Pink"],"sellerUsername": "myclosetlaurie","sellerHandle": "myclosetlaurie","images": ["... 6 photos"],"coverImage": "https://di2ponv0v5otw.cloudfront.net/posts/2026/05/27/6a17667ab142f3e95ab4e5c1/m_6a17667d7ac629696ec9e01d.jpeg","likeCount": 4,"commentCount": 0,"createdAt": "2026-05-27T14:47:38-07:00","closetOf": "myclosetlaurie","scrapedAt": "2026-06-11T02:31:23Z"}
If a listing or seller can't be found, the actor writes a diagnostic record instead:
{"recordType": "LISTING_DETAIL","_input": "https://poshmark.com/listing/does-not-exist-000000000000000000000000","error": "NOT_FOUND","scrapedAt": "2026-06-11T02:31:20Z"}
Field reference
LISTING_DETAIL (Listing detail mode)
| Field | Type | Description |
|---|---|---|
recordType | string | Always "LISTING_DETAIL". |
id | string | Poshmark listing identifier. |
title | string | Listing title. |
url | string | Full public listing URL. |
price | number | Asking price. |
currency | string | ISO currency (e.g. USD). |
originalPrice | number | Original/retail price when set, otherwise null. |
size | string | Item size. |
brand | string | Brand name. |
condition | string | New with tags, Like new, Good, etc., or null when the seller left it unset. |
newWithTags | boolean | true when flagged new with tags. |
department | string | Top-level department. |
category | string | Item category. |
colors | array | Color names. |
sellerUsername / sellerHandle | string | Seller's username / display handle. |
sellerFullName | string | Seller's full name. |
sellerId | string | Seller identifier. |
images | array | All listing photo URLs. |
coverImage | string | Primary photo URL. |
description | string | Full listing description. |
status | string | Listing status (e.g. published, sold). |
inventoryStatus | string | available, sold, etc. |
multiItem | boolean | true when the listing is a multi-item lot. |
quantityAvailable | integer | Total quantity available across sizes. |
sizeQuantities | array | Per-size { size, available, sold } breakdown. |
likeCount / commentCount / shareCount | integer | Live engagement counts. |
createdAt / firstPublishedAt / updatedAt | string | Listing timestamps. |
comments | array | Present when includeComments is on: { author, authorName, text, createdAt }. |
scrapedAt | string | ISO 8601 timestamp of collection. |
SELLER_PROFILE (Seller mode)
| Field | Type | Description |
|---|---|---|
recordType | string | Always "SELLER_PROFILE". |
username / handle | string | Seller's username / display handle. |
displayName | string | Seller's full name. |
url | string | Public closet URL. |
location / city / state | string | Seller location (when public). |
website | string | Seller's linked website, when set. |
bio | string | Closet bio/description. |
avatar | string | Profile photo URL. |
followers / following | integer | Follower / following counts. |
listingsCount | integer | Total listings in the closet. |
availableCount | integer | Currently available (for-sale) listings. |
soldCount | string | Items-sold display (e.g. "100+"). |
shareCount | integer | Lifetime shares. |
joinedAt / lastActiveAt | string | Join date / last active date. |
id | string | Seller identifier. |
scrapedAt | string | ISO 8601 timestamp of collection. |
LISTING (closet items in Seller mode) — same fields as the Poshmark Search Scraper output, plus closetOf (the closet owner's username).
Diagnostic records carry _input (the unparseable input) and error (NOT_FOUND or BLOCKED_AFTER_RETRIES), with recordType set to the type that was expected.
Other Poshmark / Resale Scrapers
| Actor | Description |
|---|---|
| Poshmark Search Scraper | Keyword search → resale listings with price, brand, size, condition, seller, and photos. |
| Poshmark Listing & Seller Scraper | Full listing detail, or a seller's profile plus their whole closet. |
| eBay Search Scraper | Keyword search → eBay listings with price, condition, and seller. |
| eBay Sold Comps Scraper | Recently sold comparables for any keyword — sale price and date. |
| GOAT Product Scraper | Sneaker and apparel product detail, sizing, and pricing from GOAT. |