Spigen APIspigen.com ↗
Search Spigen's catalog, fetch product details, browse collections, and get best sellers. Covers pricing, variants, SKUs, availability, and images.
What is the Spigen API?
The Spigen API provides 4 endpoints covering product search, full product details, collection browsing, and best-seller lists from spigen.com. The get_product_details endpoint returns every variant with its SKU, price, compare-at price, and availability status, plus up to 20 product images. The search_products endpoint accepts a keyword query and returns up to 50 matching items with titles, handles, and current pricing.
curl -X GET 'https://api.parse.bot/scraper/c9eb088a-049c-43ca-b536-6135667856df/search_products?limit=5&query=iPhone' \ -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 spigen-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.
from parse_apis.spigen_product_api import Spigen, Product, ProductSummary, CollectionProduct
spigen = Spigen()
# Search for iPhone 16 products
for item in spigen.products.search(query="iPhone 16", limit=5):
print(item.title, item.price, item.available)
# Get full product details
product = spigen.products.get(handle="iphone-16-series-case-ultra-hybrid")
print(product.title, product.vendor, product.product_type)
print(product.variants_count, product.images_count)
# Browse variants of a product
for variant in product.variants.list():
print(variant.title, variant.sku, variant.price)
# Browse a collection by handle
for item in spigen.collection("all-auto").products():
print(item.title, item.price, item.published_at)
# Get best sellers
for item in spigen.products.best_sellers(limit=10):
print(item.title, item.price, item.vendor)
Full-text predictive search across Spigen's product catalog. Matches against product titles and types. Returns lightweight product summaries with pricing, availability, and a featured image. Limited to 50 results per call; no pagination beyond that cap.
| Param | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return. Must be between 1 and 50. |
| queryrequired | string | Search query string (e.g. 'iPhone 16', 'Tesla', 'screen protector'). |
{
"type": "object",
"fields": {
"query": "the search query echoed back",
"products": "array of product summaries with id, title, handle, url, price, available, vendor, product_type, image, tags",
"results_count": "number of products returned"
},
"sample": {
"data": {
"query": "iPhone 16",
"products": [
{
"id": 7808850657327,
"url": "/products/iphone-16-series-glas-tr-ez-fit-privacy?_pos=1&_psq=iPhone+16&_ss=e&_v=1.0&variant=43188617969711",
"tags": [
"All iPhone",
"All Products"
],
"image": "https://cdn.shopify.com/s/files/1/0808/0067/files/example.jpg?v=1726206785",
"price": "39.99",
"title": "iPhone 16 Series - GLAS.tR EZ Fit | Privacy",
"handle": "iphone-16-series-glas-tr-ez-fit-privacy",
"vendor": "iPhone 16 Series",
"available": true,
"price_max": "39.99",
"price_min": "39.99",
"product_type": "Screen Protectors",
"compare_at_price_max": "0.00",
"compare_at_price_min": "0.00"
}
],
"results_count": 5
},
"status": "success"
}
}About the Spigen API
Product Search and Detail
The search_products endpoint accepts a query string — such as 'iPhone 16', 'Tesla', or 'screen protector' — and returns up to 50 matching product objects. Each result includes the product id, title, handle, url, price, available flag, vendor, product_type, and a primary image. The results_count field tells you how many items matched the query.
For a specific product, get_product_details takes a handle (the URL slug, e.g. 'iphone-16-series-case-ultra-hybrid') and returns the full record: all variants with individual sku, price, compare_at_price, available, and option1–option3 values; the options array listing each option dimension (like color or model) and its possible values; and up to 20 images with pixel dimensions. images_count tells you whether additional images exist beyond what's returned.
Collections and Best Sellers
get_collection_products takes a collection handle — for example 'all-auto', 'chargers', 'iphone-16-series', or 'tesla-model-y' — and returns a paginated list of products. Use the page and limit parameters (up to 250 products per page) to iterate through large collections. Each product in the list includes compare_at_price alongside price, so you can identify sale items.
get_best_sellers returns a ranked list of Spigen's top-selling products across all categories, also paginated. Response objects include id, title, handle, vendor, product_type, price, compare_at_price, available, image, and published_at. Use handles from either endpoint as input to get_product_details to retrieve full variant and SKU data.
The Spigen API is a managed, monitored endpoint for spigen.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when spigen.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 spigen.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?+
- Build a price-tracking tool that monitors
compare_at_pricevspriceacross collections to flag active discounts. - Populate a product comparison page by fetching variants from
get_product_detailsfor multiple phone case handles. - Index Spigen's full catalog by paginating through
get_collection_productswithcollection='all-products'. - Surface best-selling accessories in a gift recommendation widget using
get_best_sellerswithlimitandpage. - Auto-fill product metadata — SKU, title, images — for a retailer or affiliate database using the
variantsandimagesfields. - Filter the auto accessories category by querying
get_collection_productswithcollection='all-auto'to list car-specific gear. - Check real-time stock availability across iPhone 16 case variants using the
availablefield inget_product_details.
| 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 Spigen offer an official developer API?+
What does `get_product_details` return beyond basic pricing?+
variant the product has, each with its own sku, price, compare_at_price, available boolean, and up to three option values (option1, option2, option3). You also get the options array that names the option dimensions (e.g. model, color) and their full value lists, plus up to 20 images with width and height in pixels.Does the API return customer reviews or ratings for products?+
How do I find valid collection handles to use with `get_collection_products`?+
'all-auto', 'chargers', 'all-ipad-series', 'iphone-16-series', and 'tesla-model-y' are documented examples. You can also derive handles from product tags returned by search_products and get_product_details, which often include category references.