The fastest way to start scraping Depop at scale. Our Depop API returns structured JSON for product search, product detail, shop profiles, and seller catalogs across 10 markets — with pricing, condition, images, and anti-bot bypass built in. No Depop account or API key.
No credit card required · PAYG credits never expire
# Search vintage Nike listings
import scrapebadger
client = scrapebadger.ScrapeBadger("sb_live_...")
results = client.depop.search(
query="nike vintage",
market="us"
){
"slug": "janedoe-nike-vintage-a1b2",
"url": "https://www.depop.com/products/janedoe-nike-vintage-a1b2/",
"seller_username": "janedoe",
"brand": "Nike",
"size": "M",
"price": "38.00", "currency": "USD",
"is_sold": false
}Structured JSON responses with normalized data models. No HTML parsing. No proxy management. No Depop account.
/v1/depop/search/v1/depop/products/{slug}/v1/depop/users/{username}/v1/depop/users/{username}/products/v1/depop/marketsAll fields are normalized from Depop's page data. Nested blocks — pricing, images, sizes — come pre-parsed.
slugstringDepop product slugurlstringFull product URLseller_usernamestring|nullSeller’s Depop username, derived from the slugbrandstring|nullBrand name if tagged on the cardsizestring|nullSize label if presentpricestring|nullBuyer-facing price, numeric string e.g. "30.25"original_pricestring|nullFull price when the item is reducedcurrencystring|nullISO currency from the market (USD, GBP, EUR, …)is_soldbooleanWhether the listing has soldimagestring|nullMain card image URLmeta.result_countintegerTotal number of matching resultsmeta.pageintegerCurrent page numbermeta.has_morebooleanWhether another page is availableusernamestringDepop usernamenamestringShop display namedescriptionstringShop bio/descriptionrating_valuestring|nullAverage seller ratingrating_countinteger|nullNumber of ratings receivedfollower_countinteger|nullNumber of shop followersurlstringCanonical Depop shop URLUS, GB, AU, IE, IT, FR, DE, ES, NL, and NZ behind a single market parameter. Prices come back in each market's native currency — USD, GBP, AUD, EUR, and NZD.
No proxy setup. No session management. No anti-bot configuration.
Call any Depop endpoint with your API key and parameters — a search query, a product slug, or a shop username. REST or SDK.
ScrapeBadger handles Depop’s Cloudflare anti-bot, browser rendering, and residential proxy routing transparently, detecting blocks and retrying automatically.
Receive normalized JSON with pricing, condition, sizes, images, and seller details — ready to store, analyse, or pipe into your application.
Scraping Depop gives you real second-hand fashion signals — asking prices, brand demand, seller activity, and inventory across 10 markets.
Monitor asking prices across brands, sizes, and conditions to spot pricing shifts and demand for vintage and streetwear pieces.
Track new listings and sell-through by brand or category across 10 markets to benchmark inventory against competitors.
Analyze top shops by rating and listing volume to identify power sellers, sourcing partners, or influencer collaborations.
Collect structured fashion listings — titles, images, brands, conditions, and prices — for training resale pricing or recommendation models.
Poll seller catalogs or saved searches to surface new drops, price cuts, and restocks the moment they go live.
Pull comparable listings by brand, size, and condition to price your own inventory or validate authentication claims.
You only pay for successful responses — failed requests are always free. PAYG credits never expire; volume subscription tiers reduce per-credit cost further.
| Endpoint | Credits / request | PAYG | Subscription |
|---|---|---|---|
Search Products /search | 10 credits | — | — |
Product Detail /products/{slug} | 10 credits | — | — |
Shop Profile /users/{username} | 10 credits | — | — |
Shop Listings /users/{username}/products | 10 credits | — | — |
List Markets /markets | Free | — | — |
See the full plan comparison on the pricing page — subscription tiers step down per-credit cost beyond the cheapest column shown above.
ScrapeBadger's Depop Scraper API handles everything Depop throws at automated requests — so your pipeline keeps running.
Search returns card-level brand, size, price, and image for every listing; the product detail endpoint adds full title, description, condition, and the complete image gallery.
Depop is protected by Cloudflare bot detection. ScrapeBadger handles browser rendering and residential proxy routing transparently — no CAPTCHA solving on your end. No Depop account or API key required.
Responses are normalized typed JSON — no HTML to parse, no fragile CSS selectors that break when Depop updates its frontend.
US, GB, AU, IE, IT, FR, DE, ES, NL, and NZ behind a single market parameter — prices come back in each market’s native currency (USD, GBP, AUD, EUR, NZD).
Credits are only deducted for successful responses. If Depop returns an error or the request times out, no credits are consumed. You only pay for data you actually receive.
Official SDKs for Python, Node.js, Go, Rust, PHP, C#, Java, Kotlin, Ruby, Swift, Dart and C++ — generated from one OpenAPI spec, always in sync with the API. Full documentation with working code examples for every endpoint.
Get started in minutes with Python, Node.js, or plain HTTP requests.
The scrapebadger Node.js library wraps the Depop API with typed methods. Install with npm install scrapebadger, then start scraping Depop in a few lines of code.
import ScrapeBadger from 'scrapebadger'
const client = new ScrapeBadger({
apiKey: 'sb_live_...'
})
// Search vintage Nike listings under $50
const results = await client.depop.search({
query: 'nike vintage',
priceMax: 50,
sort: 'newest',
})
// Get full detail for the first result
const first = results.products[0]
const detail = await client.depop.product({ slug: first.slug })
console.log(detail.title, detail.price, detail.currency)import ScrapeBadger from 'scrapebadger'
const client = new ScrapeBadger({
apiKey: 'sb_live_...'
})
// Walk a seller's full catalog
const { username, products, meta } = await client.depop.shopProducts({
username: 'janedoe',
perPage: 24,
page: 1,
})
for (const p of products) {
console.log(p.slug, p.brand, p.price, p.currency, p.isSold)
}
console.log(meta.hasMore, meta.page)Common questions about scraping Depop with the API — Python, Node.js, or REST.
Search returns product cards with slug, URL, seller username, brand, size, price, original price, currency, sold status, and image, plus pagination meta. Product detail returns the full record — title, description, brand, condition, price, currency, availability, seller username, images, and canonical URL. Shop profile returns username, name, description, rating, and follower count. Shop listings returns a paginated feed of that seller’s active products using the same card fields as search. Markets returns the list of supported markets.
Ten markets: United States (USD), United Kingdom (GBP), Australia (AUD), Ireland (EUR), Italy (EUR), France (EUR), Germany (EUR), Spain (EUR), Netherlands (EUR), and New Zealand (NZD). Pass market=us|gb|au|ie|it|fr|de|es|nl|nz on search, product, and shop requests — results and prices localise to the chosen market. The default is the US.
Yes. Search accepts price_min/price_max, a CSV of numeric brands, a CSV of size labels (e.g. "US-M,UK-12"), a CSV of colour slugs, and a CSV of conditions (brand_new, used_like_new, used_good, used_fair). You can also filter by gender (male|female) and sort by relevance, newest, priceAscending, priceDescending, or popularity.
Depop is protected by Cloudflare, which combines TLS/HTTP fingerprinting, browser challenges, and IP reputation checks. ScrapeBadger handles Depop’s anti-bot, browser rendering, and residential proxy routing transparently — you never configure proxies, manage fingerprints, or solve CAPTCHAs. No Depop account or API key is required.
Install with `pip install scrapebadger` or `npm install scrapebadger`, then initialise the client and call client.depop.search(query="nike vintage"), client.depop.product(slug="jane-vintage-levis-a1b2"), or client.depop.shop(username="janedoe"). The SDKs return typed objects — search cards expose .price, .brand, and .image, and search exposes page-based pagination via the page parameter and meta.has_more.
Per-request credit costs are listed above. For higher monthly volume, subscription tiers reduce the per-credit rate substantially. All Depop endpoints — search, product detail, shop profiles, and shop listings across all 10 markets — included on every plan.
1,000 free credits. No credit card. Get your API key in under a minute.
PAYG credits never expire · Pay only for successful requests · 10-market coverage