Secondhand-fashion pricing and resale research
Poshmarkエンドポイントを使えば、「Secondhand-fashion pricing and resale research」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
Turn public Poshmark pages into structured resale-fashion data — keyword listing search, full listing detail, a seller's closet catalog, browse by brand or category, the full brand and category directories, and curated trend/showroom collections, all as normalized JSON. Credential-free.
Search Poshmark listings and get listing detail, seller closets, brand and category directories, and trend collections as structured JSON.
エンドポイントファミリー
6
ドキュメント化されたパラメータ
20
サンプル数
8
ライブカタログスナップショット
稼働エンドポイント
8
メソッド
GET
必須パラメータ
14
スキーマ参照
8
{
"platform": "Poshmark",
"endpoint": "poshmark-search",
"method": "GET",
"path": "/poshmark/search",
"auth": "apiKey"
}ユースケース
Search Poshmark listings and get listing detail, seller closets, brand and category directories, and trend collections as structured JSON.
Poshmarkエンドポイントを使えば、「Secondhand-fashion pricing and resale research」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
Poshmarkエンドポイントを使えば、「Seller and closet monitoring」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
Poshmarkエンドポイントを使えば、「Brand and trend tracking」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
マネージド実行
以下の数値はすべて、稼働中のPoshmarkエンドポイントカタログから取得しています(エンドポイント8件、ドキュメント化されたリクエストパラメータ20個、公開レスポンススキーマ8件)。DocsとPlaygroundが参照しているカタログと同じものです。
Poshmarkのエンドポイントは8件、8つのリクエストファミリーに分類されています(Brand、Brands、Categoriesほか5件)。
これらのPoshmarkエンドポイントには20個のリクエストパラメータがドキュメント化されており、うち14個が必須です。統合コードを書く前に入力仕様をすべて確認できます。
8件のPoshmarkエンドポイントのうち8件が実際のサンプルレスポンスを、8件がドキュメント化されたレスポンススキーマを備えています。最初のリクエストの前に実データの形に合わせて実装できます。
Poshmarkのエンドポイントは成功時のスキーマに加えてエラーレスポンス(400、404、500、503)もドキュメント化しています。ブロック、レート制限、レコード欠損は空データではなく型付きのエラーとして返ります。
Poshmarkのエンドポイントは8個のホスト型MCPツールとして提供されており、エージェントは同じパラメータと同じJSON契約のまま、追加の実装なしに同じルートを呼び出せます。
カバレッジマップ
これらのカードは稼働中のエンドポイントカタログから生成されるため、このページはDocsとPlaygroundが使うAPIサーフェスをそのまま反映します。
/poshmark/brand/{name}
/poshmark/brands
/poshmark/categories
/poshmark/category/{path}
/poshmark/closet/{username}
/poshmark/listing/{id}
エンドポイントカタログ
/poshmark/searchSearches Poshmark for clothing, shoes, and accessory listings, returning normalized listing summaries (title, price, brand, size, condition, seller, images) plus the total matching count and an opaque pagination cursor. Pass a previous response's next_max_id back as max_id to fetch the next page. Credential-free public data sourced from Poshmark's own server-rendered search page and, for pages past the first, Poshmark's own JSON pagination API.
レスポンスに関する注記
- `total` reflects Poshmark's full matching-result count for the applied filters, not just `len(listings)`. - `next_max_id` is an opaque, server-issued pagination cursor. Pass it back as `max_id` on a subsequent request (with the same `query`/`department`) to fetch the next page. `has_more` is `false` once there is nothing further to page through. - A search with no matching listings returns `200` with `"listings": []`. - A missing `query` returns `400` before any upstream request is made. Example response: ```json { "code": 200, "msg": "OK", "data": { "total": 5000, "has_more": true, "next_max_id": "ENC_eyJtYXhfaWRzIjpbNDksMSwxXSwicGFnZV9udW0iOjIsInBhZ2VfZ3JvdXBfaWQiOiI2YTcyZTE3OTI1MzYyMTUzMDNhMmVmMWEifQ", "listings": [ { "id": "6a6353cb88849a5f185280ea", "title": "Nike Jacket", "price": 19, "original_price": 98, "condition": "gu", "brand": "Nike", "category": "Jackets", "department": "Men", "size": "M", "colors": ["Black"], "status": "published", "cover_shot": "https://di2ponv0v5otw.cloudfront.net/posts/2026/07/24/x/m_x.jpg", "like_count": 12, "comment_count": 2, "seller_username": "maltimar", "url": "https://poshmark.com/listing/6a6353cb88849a5f185280ea" } ], "source_url": "https://poshmark.com/search?query=nike+jacket" } } ```
MCPツール poshmark_search
/poshmark/listing/{id}Returns a normalized Poshmark item-detail page: the full listing (description, all photos, size/brand/condition, inventory), its seller's profile, public comments, and similar listings Poshmark itself surfaces on the same page. Credential-free public data sourced from Poshmark's own server-rendered listing page.
レスポンスに関する注記
- `seller` is the listing's seller profile, keeping only display-facing identity and reputation fields (username, name, avatar, follower/rating counts). Poshmark's own page state carries a much larger internal user object alongside it (financial totals, fraud/moderation review flags, KYC verification state, tax and email-engagement tracking, and an `email` field) — none of that is ever included in this response. - `comments` keeps only the public comment text and author identity. Poshmark's raw comment records also carry spam/fraud-review metadata, which is never included. - `similar_listings` is omitted (absent, not an empty array) when Poshmark's own page does not carry a similar-listings shelf for that item. - An unknown listing id returns `404`. Example response: ```json { "code": 200, "msg": "OK", "data": { "id": "6a3fed1de9c77df92e2c0cc6", "title": "NWT Farm Rio Shorts", "description": "New with tags.", "price": 55, "original_price": 95, "condition": "nwt", "brand": "FARM Rio", "category": "Shorts", "department": "Women", "size": "S", "colors": ["Red", "Yellow"], "status": "published", "cover_shot": "https://di2ponv0v5otw.cloudfront.net/posts/x/m_x.jpg", "pictures": ["https://di2ponv0v5otw.cloudfront.net/posts/x/m_x.jpg"], "like_count": 111, "comment_count": 4, "seller": { "id": "5a4f84cb7d70fb0f0f05a37f", "username": "maltimar", "full_name": "Mary Altimar", "followers": 9096, "following": 89, "posts_count": 698, "items_sold_display": "500+", "rating_average": 4.93, "rating_count": 368, "rating_breakdown": {"five_star": 355, "four_star": 7, "three_star": 2, "two_star": 3, "one_star": 1}, "orders_shipped": 522, "url": "https://poshmark.com/closet/maltimar" }, "comments": [ {"id": "6a4a86191fea02ce69f41484", "comment": "Hi can you tell me the width of the waist?", "creator_username": "muvlax20"} ], "source_url": "https://poshmark.com/listing/6a3fed1de9c77df92e2c0cc6" } } ```
MCPツール poshmark_listing
/poshmark/closet/{username}Returns a normalized Poshmark closet (seller storefront) page: the seller's public profile and reputation stats (followers, ratings, items sold) plus a first page of their currently available listings and total listing count. Pass a previous response's next_max_id back as max_id to fetch the next page of listings; paginated responses omit the seller profile to avoid a second upstream fetch, so fetch without max_id first to get seller fields. Credential-free public data sourced from Poshmark's own server-rendered closet page and, for pages past the first, Poshmark's own JSON pagination API.
レスポンスに関する注記
- `seller` keeps only display-facing identity and reputation fields. Poshmark's own page state carries a much larger internal user-aggregates object alongside it (financial totals, fraud/moderation review counters, KYC verification state, tax and email-engagement tracking, and an `email` field) — none of that is ever included in this response. - `listings` is the first page Poshmark's own closet page renders (48 items per page), not the seller's complete inventory — `total_count` reports the seller's true current listing count. - `next_max_id` is an opaque, server-issued pagination cursor. Pass it back as `max_id` on a subsequent request (with the same `username`) to fetch the next page. **A paginated request (one with `max_id` set) omits `seller` (returned as empty)** — Poshmark's own pagination endpoint for a closet only returns listings, not the seller profile, so fetch without `max_id` first if you need seller fields. - An unknown username returns `404`. Example response: ```json { "code": 200, "msg": "OK", "data": { "seller": { "id": "5a4f84cb7d70fb0f0f05a37f", "username": "maltimar", "full_name": "Mary Altimar", "followers": 9096, "following": 89, "posts_count": 698, "items_sold_display": "500+", "rating_average": 4.93, "rating_count": 368, "rating_breakdown": {"five_star": 355, "four_star": 7, "three_star": 2, "two_star": 3, "one_star": 1}, "orders_shipped": 522, "url": "https://poshmark.com/closet/maltimar" }, "listings": [ {"id": "6a3fed1de9c77df92e2c0cc6", "title": "NWT Farm Rio Shorts", "price": 55, "brand": "FARM Rio", "seller_username": "maltimar"} ], "total_count": 107, "has_more": true, "source_url": "https://poshmark.com/closet/maltimar" } } ```
MCPツール poshmark_closet
/poshmark/brand/{name}Returns a page of normalized Poshmark listings for a given brand name (e.g. Nike), the same browsing view as Poshmark's own brand pages. Pass a previous response's next_max_id back as max_id to fetch the next page. Credential-free public data sourced from Poshmark's own server-rendered brand page and, for pages past the first, Poshmark's own JSON pagination API.
レスポンスに関する注記
- `total` reflects Poshmark's full matching-result count for the brand, not just `len(listings)`. - `next_max_id` is an opaque, server-issued pagination cursor. Pass it back as `max_id` on a subsequent request (with the same `name`) to fetch the next page. - An unrecognized brand name returns `404`. Example response: ```json { "code": 200, "msg": "OK", "data": { "total": 210000, "has_more": true, "listings": [ {"id": "6a3333333333333333333333", "title": "Nike Hoodie", "price": 30, "brand": "Nike", "department": "Men"} ], "source_url": "https://poshmark.com/brand/Nike" } } ```
MCPツール poshmark_brand
/poshmark/brandsReturns Poshmark's full brand directory: every brand Poshmark recognizes (name, slug, logo, known aliases), not just brands with active listings for a given search or category filter. Useful for resolving a brand name to the exact value the brand/search filters expect. Credential-free public data sourced from Poshmark's own server-rendered brand directory page.
レスポンスに関する注記
- The directory is large (tens of thousands of brands) and is returned in a single response, matching Poshmark's own page — there is no pagination. - `logo_url` is omitted when a brand has no dedicated logo image on file. - `aliases` lists alternate names/spellings Poshmark associates with the brand, when any are on file. Example response: ```json { "code": 200, "msg": "OK", "data": { "total": 29887, "brands": [ { "id": "5b453b64ab981d4b61252136", "name": "!it jeans", "slug": "!it_jeans", "logo_url": "https://di2ponv0v5otw.cloudfront.net/brands/2026/06/21/5b453b64ab981d4b61252136/m_6a38da95e2c7c23674171a92.jpg", "aliases": ["it", "!it", "it jeans"] } ], "source_url": "https://poshmark.com/brands" } } ```
MCPツール poshmark_brands
/poshmark/category/{path}Returns a page of normalized Poshmark listings for a given category path (e.g. Women-Shoes, Men-Shirts), the same browsing view as Poshmark's own category pages. Pass a previous response's next_max_id back as max_id to fetch the next page. Credential-free public data sourced from Poshmark's own server-rendered category page and, for pages past the first, Poshmark's own JSON pagination API.
レスポンスに関する注記
- `total` reflects Poshmark's full matching-result count for the category, not just `len(listings)`. - `next_max_id` is an opaque, server-issued pagination cursor. Pass it back as `max_id` on a subsequent request (with the same `path`) to fetch the next page. - An unrecognized category path returns `404`. Example response: ```json { "code": 200, "msg": "OK", "data": { "total": 84000, "has_more": true, "listings": [ {"id": "6a2222222222222222222222", "title": "Nike Air Max", "price": 60, "brand": "Nike", "department": "Women"} ], "source_url": "https://poshmark.com/category/Women-Shoes" } } ```
MCPツール poshmark_category
/poshmark/categoriesReturns Poshmark's full department/category browse taxonomy (e.g. Women > Shoes, Men > Jackets & Coats). Each entry's path resolves directly against the category endpoint. This is reference data that changes rarely, so responses are cached. Credential-free public data sourced from Poshmark's own server-rendered category pages.
レスポンスに関する注記
- This is reference data that changes rarely, so responses are cached for 24 hours — repeated calls within that window return the cached result rather than re-fetching from Poshmark. - The taxonomy has 2 levels: department, then category. Poshmark's own site navigation shows a further leaf sub-category level for whichever single category is currently being browsed (e.g. `Shoes` → `Sneakers`, `Heels`...), but that level isn't included here — browse into a category via the category endpoint to discover its own sub-categories. - Building the full response requires one fetch per department (6 total). If a department's fetch fails, it's simply omitted from the response rather than failing the whole request — the endpoint only returns an error if every department fails. Example response: ```json { "code": 200, "msg": "OK", "data": { "departments": [ { "id": "000e8975d97b4e80ef00a955", "name": "Women", "path": "Women", "categories": [ {"id": "002a8975d97b4e80ef00a955", "name": "Accessories", "path": "Women-Accessories"}, {"id": "00268975d97b4e80ef00a955", "name": "Shoes", "path": "Women-Shoes"} ] } ] } } ```
MCPツール poshmark_categories
/poshmark/trend/{id}Returns a page of normalized Poshmark listings for a curated trend/showroom collection (e.g. "Vintage Celine Handbags"), the same browsing view as Poshmark's own trend pages. Pass a previous response's next_max_id back as max_id to fetch the next page. Credential-free public data sourced from Poshmark's own server-rendered trend page and, for pages past the first, Poshmark's own JSON pagination API.
レスポンスに関する注記
- `total` reflects Poshmark's full matching-result count for the collection, not just `len(listings)`. - `name`/`description`/`cover_shot` describe the collection itself. On a paginated response (`max_id` set) these are omitted (empty) to avoid a second upstream fetch — fetch without `max_id` first for those fields. - `next_max_id` is an opaque, server-issued pagination cursor. Pass it back as `max_id` on a subsequent request (with the same `id`) to fetch the next page. Use it promptly — Poshmark's own result ranking can shift over time, so a cursor reused after a long delay may show some overlap with a previous page. - An unrecognized trend/showroom id returns `404`. Example response: ```json { "code": 200, "msg": "OK", "data": { "name": "Vintage Celine Handbags", "total": 5000, "has_more": true, "listings": [ {"id": "6a1111111111111111111111", "title": "Vintage Celine Bag", "price": 800, "brand": "Celine"} ], "source_url": "https://poshmark.com/trend/964e80193927e69b518f631b" } } ```
MCPツール poshmark_trend
関連API
Marketplaces & Retail
Collect marketplace product signals from Amazon without building brittle storefront scrapers.
Marketplaces & Retail
Build resale, pricing, and marketplace workflows from structured eBay data.
Marketplaces & Retail
Turn public Shop.app product and merchant pages into structured JSON for e-commerce product intelligence, price research, shop monitoring, and marketplace discovery workflows.
Poshmarkのスクレイピング方法
Crawlora's Poshmark endpoints return listing search, listing detail, seller closets, brand, category, and trend feeds, and the brand and category directories as normalized JSON with one API key. Poshmark's data carries reseller signals that other marketplaces don't: condition codes such as nwt (new with tags), share counts, when a listing first became available, and closet-level stats like followers and orders shipped.
/poshmark/search takes a query and an optional department. It returns 48 listings per page with total and has_more. total is capped at 5000 on broad searches like levis 501. Each listing has price, brand, category, department, size, colors, and a condition code: nwt, uln (used, like new), ug (used, good), or uf (used, fair). Some listings have no condition.
Every listing feed (search, brand, category, closet, and trend) paginates with next_max_id. Pass it back as max_id with the same query until has_more is false. There is no page parameter.
/poshmark/listing/{id} adds share_count, inventory_status, quantity_available, created_at and first_available_at, and a seller block with member_since and last_active_at. /poshmark/closet/{username} returns the seller's followers, posts_count, orders_shipped, and items_sold_display, plus the first 48 listings and total_count. One sample closet reported 3,166 listings and 4,208 orders shipped.
/poshmark/brands returns the full brand directory in a single response (29,887 brands on 2026-09-18, with aliases), so cache it. /poshmark/categories returns six departments with their categories and paths, such as Women-Jeans, for /poshmark/category/{path}.
FAQ
nwt is new with tags, uln is used and like new, ug is used and good, and uf is used and fair. Some listings carry no condition code at all.
By cursor rather than page number. Search, brand, category and closet responses each carry a next_max_id along with total and has_more; pass that value back as the max_id parameter to get the next page, and stop when has_more is false. There is no page parameter to increment.
Poshmark blocks some automated requests at the edge, and Crawlora surfaces that as a 503 rather than returning an empty result that would look like a genuine answer. It is intermittent — a brand-directory call that 503s often succeeds on an immediate retry — and because Crawlora bills only successful 2xx responses, a blocked request costs no credits.