LCSC APIwmsc.lcsc.com ↗
Access LCSC component data via API: product details, tiered pricing, stock levels, specs, and 3-level category hierarchy. 7 endpoints.
What is the LCSC API?
The LCSC API provides 7 endpoints for retrieving electronics component data from LCSC's marketplace, covering product details, tiered pricing, stock availability, technical specifications, and category hierarchy. The get_product_detail endpoint returns a full record for any LCSC product code, including compliance data and images, while search_products lets you query by keyword and page through results with MPN, brand, and live stock counts.
curl -X GET 'https://api.parse.bot/scraper/880c45e3-2545-435c-a879-8c1a478f4dc4/get_product_detail?product_code=C14663' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace wmsc-lcsc-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: LCSC Electronics API — search components, inspect details, check pricing and stock."""
from parse_apis.lcsc_electronics_api import Lcsc, ProductNotFound
client = Lcsc()
# Search for capacitors — limit= caps total items fetched across pages.
for summary in client.productsummaries.search(query="NE555", limit=3):
print(summary.product_code, summary.brand_name_en, summary.stock_number)
# Drill into one result's full detail via the summary→detail navigation.
hit = client.productsummaries.search(query="capacitor", limit=1).first()
if hit:
full = hit.details()
print(full.title, full.product_desc_en, full.encap_standard)
# Fetch a known product directly by code and inspect sub-views.
product = client.products.get(product_code="C14663")
print(product.title, product.brand_name_en)
pricing = product.get_pricing()
for tier in pricing.pricing_ladder:
print(tier.ladder, tier.usd_price, tier.currency)
stock = product.get_stock()
print(stock.total_stock, stock.domestic_stock.ship_immediately)
specs = product.get_specifications()
for name, spec in specs.specs.items():
print(spec.name_en, spec.value_en, spec.is_main)
# Typed error handling: catch ProductNotFound on a bad code.
try:
client.products.get(product_code="C0000000")
except ProductNotFound as exc:
print(f"not found: {exc.product_code}")
# Browse top-level categories.
for cat in client.categories.list(limit=3):
print(cat.category_id, cat.category_name_en, cat.product_number)
print("exercised: search / details / get / get_pricing / get_stock / get_specifications / categories.list")Fetches complete product details for a given LCSC product code. Returns the full upstream record including pricing tiers, stock breakdown, specifications, images, PDF datasheet link, category path, and compliance data (ECCN, HTS codes). A single round-trip; no pagination.
| Param | Type | Description |
|---|---|---|
| product_coderequired | string | The LCSC product code (e.g., C14663). |
{
"type": "object",
"fields": {
"title": "string composite brand + MPN title",
"pdfUrl": "string datasheet PDF URL or null",
"reelPrice": "number reel price or null",
"brandNameEn": "string brand name",
"paramVOList": "array of specification parameter objects",
"productCode": "string LCSC product code",
"stockNumber": "integer total stock",
"productModel": "string manufacturer part number",
"productImages": "array of image URLs",
"productNameEn": "string English product name",
"domesticStockVO": "object with domestic stock breakdown",
"productPriceList": "array of pricing tier objects"
},
"sample": {
"data": {
"eccn": "EAR99",
"split": 100,
"title": "YAGEO CC0603KRX7R9BB104",
"pdfUrl": "https://datasheet.lcsc.com/datasheet/pdf/23ccee80ee542e7cf156a772bb589942.pdf?productCode=C14663",
"reelPrice": 3,
"brandNameEn": "YAGEO",
"catalogName": "Ceramic Capacitors",
"paramVOList": [
{
"isMain": true,
"paramNameEn": "Capacitance",
"paramValueEn": "100nF"
}
],
"productCode": "C14663",
"stockNumber": 0,
"minBuyNumber": 100,
"productModel": "CC0603KRX7R9BB104",
"encapStandard": "0603",
"isEnvironment": true,
"productDescEn": "100nF ±10% 50V Ceramic Capacitor X7R 0603",
"productImages": [
"https://assets.lcsc.com/images/lcsc/900x900/20250715_YAGEO-CC0603KRX7R9BB104_C14663_front.jpg"
],
"productNameEn": "CAP CER 100nF 50V X7R 0603",
"domesticStockVO": {
"total": 0,
"ship3Days": 0,
"shipImmediately": 0
},
"productPriceList": [
{
"ladder": 100,
"usdPrice": 0.0107,
"discountRate": "1",
"currencyPrice": 0.0107,
"currencySymbol": "$"
}
]
},
"status": "success"
}
}About the LCSC API
Product Lookup and Search
The get_product_detail endpoint accepts a single product_code (e.g., C14663) and returns the complete product record: pricing tiers, current stock, technical parameters, images, and compliance data in one call. For open-ended discovery, search_products takes a query string and an optional page integer, returning totalCount plus a productList array where each item carries productCode, productModel, brandNameEn, stockNumber, and a productPriceList.
Focused Parse Endpoints
Four dedicated endpoints parse specific slices of a product record without fetching the full detail payload. parse_product_pricing returns a pricingLadder array — each tier includes ladder (minimum quantity), unitPrice, usdPrice, currency, and discountRate — plus a reelPrice for full-reel orders. parse_product_stock breaks availability into totalStock and a domesticStock object with total, shipImmediately, and ship3Days counts. parse_product_specifications returns a specs object keyed by parameter name, each entry containing nameEn, valueEn, and an isMain flag that indicates whether the parameter is a primary specification. parse_product_identification surfaces core identity fields: mpn, title, productCode, and productName.
Category Hierarchy
The get_categories endpoint requires no inputs and returns the full 3-level category tree. Each node exposes categoryId, categoryNameEn, productNumber, and a childCategoryList for nesting. This is useful for building browse interfaces or filtering search results by category segment.
Coverage Notes
All product-code-based endpoints operate on the same LCSC code format (prefixed with C). Stock figures reflect LCSC's own warehouse breakdown between immediate-ship and 3-day-ship inventory, which is useful for lead-time estimation in BOM tooling.
The LCSC API is a managed, monitored endpoint for wmsc.lcsc.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when wmsc.lcsc.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official wmsc.lcsc.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- BOM (bill of materials) cost estimation using tiered pricing from
parse_product_pricing - Real-time stock monitoring for critical components using
parse_product_stockshipment breakdowns - Component cross-reference tools that resolve an LCSC code to MPN and brand via
parse_product_identification - Parametric search and filtering by querying
get_categoriesto map category IDs to product segments - Automated datasheet and spec ingestion pipelines using
parse_product_specificationsparameter values - Distributor comparison tools that pull LCSC pricing and stock alongside other supplier feeds
- Inventory alerting systems that poll
totalStockandshipImmediatelycounts for supply chain risk signals
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does LCSC have an official developer API?+
What does `parse_product_stock` return beyond a total stock number?+
totalStock as an integer and a domesticStock object with three sub-fields: total (domestic warehouse total), shipImmediately (units ready for same-day dispatch), and ship3Days (units available within three days). This breakdown is useful for distinguishing lead times when building procurement logic.Can I filter `search_products` results by category, package type, or other parameters?+
search_products endpoint currently accepts a query keyword and a page number. Filtering by category ID, package, or other technical attributes is not supported in the current endpoint. You can fork the API on Parse and revise it to add a category- or parameter-filtered search endpoint.