Properties
| Name | Type | Description |
|---|---|---|
| request_id | string | ID of this request. Poll it at /v1/jobs/{request_id}. |
| status | string | pending, complete or failed. Always check it, even on HTTP 200. |
| credits | integer | Requests charged: 1 when complete, 0 for a page past the last one, while pending, or when failed. |
| cached | boolean | True when the result came from the 15-minute cache. |
| poll_url | string | Only while pending. A path like /v1/jobs/{id}: join it to https://api.soldgraph.com, not to the /v1 base URL. |
| result | object | |
| error | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/soldgraph-com/json-schema/soldgraph-com-poshmark-listings-job-schema.json",
"title": "PoshmarkListingsJob",
"x-generated": "2026-10-31",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/soldgraph-com-openapi.json#/components/schemas/PoshmarkListingsJob",
"type": "object",
"required": [
"request_id",
"status",
"credits",
"cached"
],
"properties": {
"request_id": {
"type": "string",
"description": "ID of this request. Poll it at /v1/jobs/{request_id}."
},
"status": {
"type": "string",
"description": "pending, complete or failed. Always check it, even on HTTP 200.",
"enum": [
"pending",
"complete",
"failed"
]
},
"credits": {
"type": "integer",
"description": "Requests charged: 1 when complete, 0 for a page past the last one, while pending, or when failed."
},
"cached": {
"type": "boolean",
"description": "True when the result came from the 15-minute cache."
},
"poll_url": {
"type": "string",
"description": "Only while pending. A path like /v1/jobs/{id}: join it to https://api.soldgraph.com, not to the /v1 base URL."
},
"result": {
"$ref": "#/$defs/PoshmarkListingsPage"
},
"error": {
"type": "object",
"required": [
"code"
],
"properties": {
"code": {
"type": "string",
"enum": [
"page_mismatch",
"schema",
"network",
"upstream",
"throttled",
"blocked",
"rejected",
"not_found",
"filter_not_supported",
"filter_not_applied",
"location_not_served",
"auth",
"daily_limit",
"deadline_exceeded",
"credential_storage"
],
"description": "Failed job code."
},
"message": {
"type": "string",
"description": "What the code means, in plain words."
}
}
}
},
"$defs": {
"Money": {
"type": "object",
"required": [
"amount",
"currency"
],
"properties": {
"amount": {
"type": "number"
},
"currency": {
"type": "string",
"description": "ISO 4217 code, like USD."
}
}
},
"PoshmarkListingsPage": {
"type": "object",
"required": [
"provider",
"country",
"query",
"page",
"count",
"reported_total",
"next_page",
"collected_at",
"schema_version",
"completeness",
"field_notes",
"page_size",
"summary",
"next_cursor",
"data"
],
"properties": {
"provider": {
"type": "string",
"description": "Marketplace ID, like ebay or poshmark."
},
"country": {
"type": "string",
"description": "The country searched: us, or on eBay the country you sent."
},
"query": {
"type": "string",
"description": "The q you sent, with extra spaces removed."
},
"page": {
"type": "integer",
"description": "The page you asked for."
},
"count": {
"type": "integer",
"description": "Rows in result.data on this page."
},
"reported_total": {
"type": "integer",
"description": "Total matches the marketplace reports for the search. It may be rounded or capped."
},
"next_page": {
"type": [
"integer",
"null"
],
"description": "Send this as page to get the next page. Null on the last page, and on page 100, the deepest page served."
},
"collected_at": {
"type": "string",
"description": "When we collected the page, as an ISO 8601 timestamp."
},
"schema_version": {
"type": "integer",
"description": "Version of the result's shape for that marketplace: 1 or 2. It only rises when a field changes meaning."
},
"completeness": {
"type": "string",
"description": "provider_page_only: one page as the marketplace served it, not a full history. TCGplayer recent sales say recent_sample_only."
},
"field_notes": {
"type": "string",
"description": "Plain-text notes on how to read this page's fields."
},
"page_size": {
"type": "integer",
"description": "Rows Poshmark returned before we removed listings that aren't for sale. It can be larger than count."
},
"summary": {
"type": "object",
"properties": {
"priced_count": {
"type": "integer",
"description": "Rows on this page that show one price."
},
"currency": {
"type": "string",
"description": "Currency of the amounts below."
},
"median": {
"type": [
"number",
"null"
],
"description": "Middle displayed price of those rows."
},
"low": {
"type": [
"number",
"null"
],
"description": "Lowest displayed price."
},
"high": {
"type": [
"number",
"null"
],
"description": "Highest displayed price."
},
"p25": {
"type": [
"number",
"null"
],
"description": "First-quartile displayed price: a quarter of priced rows are at or below it."
},
"p75": {
"type": [
"number",
"null"
],
"description": "Third-quartile displayed price. With `p25`, a range that ignores a stray accessory or parts listing."
}
},
"required": [
"priced_count",
"currency",
"median",
"low",
"high",
"p25",
"p75"
],
"description": "Price maths over the rows on this page: priced_count, currency, median, low, high. No row is removed from data. Rows with no single readable price are left out of the maths."
},
"next_cursor": {
"type": [
"string",
"null"
],
"description": "Send this as cursor, with page=next_page, to get the next page. Null on the last page."
},
"data": {
"type": "array",
"items": {
"$ref": "#/$defs/PoshmarkListingsRow"
}
}
}
},
"PoshmarkListingsRow": {
"type": "object",
"required": [
"id",
"title",
"link",
"displayed_price",
"displayed_price_text",
"condition",
"brand",
"size",
"listed_at",
"seller_text",
"image"
],
"properties": {
"id": {
"type": "string",
"description": "The marketplace's listing ID."
},
"title": {
"type": [
"string",
"null"
],
"description": "Listing title as shown."
},
"link": {
"type": "string",
"description": "URL of the listing on the marketplace."
},
"displayed_price": {
"$ref": "#/$defs/Money",
"description": "{ amount, currency } of the seller's current asking price, in the country's currency."
},
"displayed_price_text": {
"type": [
"string",
"null"
],
"description": "The price text, like $35.00, or C$40.00 on Poshmark Canada."
},
"condition": {
"type": [
"string",
"null"
],
"description": "Poshmark's own condition code, as Poshmark returns it, like nwt or ug. See condition codes."
},
"brand": {
"type": [
"string",
"null"
],
"description": "Brand as the seller entered it."
},
"size": {
"type": [
"string",
"null"
],
"description": "Size as the seller entered it."
},
"listed_at": {
"type": [
"string",
"null"
],
"description": "When the listing was published, as an ISO 8601 timestamp."
},
"seller_text": {
"type": [
"string",
"null"
],
"description": "The seller's Poshmark username."
},
"image": {
"type": [
"string",
"null"
],
"description": "Image URL on Poshmark's image CDN."
}
}
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/soldgraph-com-poshmark-listings-job"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.