Uniqlo APIuniqlo.com ↗
Search Uniqlo US products, fetch full product details, and browse categories. Get pricing, colors, sizes, ratings, and images via 3 structured endpoints.
What is the Uniqlo API?
This API provides structured access to the Uniqlo US online store catalog across 3 endpoints, covering product search, product details, and category navigation. The search_products endpoint returns paginated results with pricing, available colors, sizes, and average ratings. The get_product_details endpoint exposes per-product data including composition, breadcrumbs, fit ratings, and multiple image URLs.
curl -X GET 'https://api.parse.bot/scraper/71e9d7ce-e5f0-47c7-94da-c7e2aa3ed1ad/search_products?limit=5&query=t-shirt&offset=0§ion=women' \ -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 uniqlo-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: Uniqlo US SDK — search products, get details, browse categories."""
from parse_apis.uniqlo_us_store_api import Uniqlo, Section, ProductNotFound
client = Uniqlo()
# Search for women's t-shirts, capped at 3 results
for product in client.products.search(query="t-shirt", section=Section.WOMEN, limit=3):
print(product.name, product.base_price, product.currency)
# Drill into the first result's full details
product = client.products.search(query="jacket", limit=1).first()
if product:
detail = client.products.get(product_id=product.product_id)
print(detail.name, detail.composition, detail.rating_average)
for color in detail.colors[:3]:
print(color.code, color.name)
# Handle a product that doesn't exist
try:
client.products.get(product_id="9999999")
except ProductNotFound as exc:
print(f"Product not found: {exc.product_id}")
# Browse the store category tree
catalog = client.catalogs.get()
for section_name, categories in catalog.sections.items():
for cat in categories[:2]:
print(section_name, cat.name, cat.url)
for sub in cat.subcategories[:2]:
print(f" {sub.name} -> {sub.url}")
print("exercised: products.search / products.get / catalogs.get / product.refresh")Full-text search over the Uniqlo US product catalog. Matches product names and descriptions against the query keyword. Results are paginated via offset; each product includes pricing, available colors/sizes, and rating. An optional section filter narrows results to a single gender department.
| Param | Type | Description |
|---|---|---|
| limit | integer | Number of results per page (max 100) |
| queryrequired | string | Search keyword (e.g., 't-shirt', 'jacket', 'jeans') |
| offset | integer | Offset for pagination (starts at 0) |
| section | string | Filter by section: 'women', 'men', 'kids', or 'baby'. Empty string returns all sections. |
{
"type": "object",
"fields": {
"count": "integer - items returned in this page",
"total": "integer - total matching products",
"offset": "integer - current offset",
"products": "array of ProductSummary objects"
},
"sample": {
"data": {
"count": 5,
"total": 620,
"offset": 0,
"products": [
{
"name": "AIRism Cotton T-Shirt | Long Sleeve",
"sizes": [
{
"code": "001",
"name": "XXS"
}
],
"colors": [
{
"code": "68",
"name": "BLUE"
}
],
"gender": "UNISEX",
"currency": "USD",
"base_price": 29.9,
"main_image": "https://image.uniqlo.com/UQ/ST3/us/imagesgoods/465193/item/usgoods_68_465193_3x4.jpg",
"product_id": "E465193-000",
"price_group": "00",
"product_url": "https://www.uniqlo.com/us/en/products/E465193-000/00",
"promo_price": null,
"rating_count": 621,
"rating_average": 4.8
}
]
},
"status": "success"
}
}About the Uniqlo API
Endpoints and Data Coverage
The API covers three areas of the Uniqlo US catalog. search_products accepts a required query string and optional section filter (women, men, kids, or baby), returning paginated results with total count, offset, and an array of product objects. Each product includes product_id, name, base_price, promo_price, currency, colors, sizes, gender, price_group, and rating_aver. Pagination is controlled via limit (up to 100) and offset.
Product Details
get_product_details accepts either a bare numeric ID like 465193 or a full-format ID like E479208-000 — the endpoint normalizes both forms to the canonical E{id}-000 format internally. The response adds fields not available in search results: sub_images (array of additional image URLs), breadcrumbs (gender, class, category, subcategory strings), fit_rating, and composition. The optional price_group parameter defaults to 00, which is the only reliably supported value; passing other values may result in a not-found error.
Category Navigation
get_categories takes no inputs and returns a sections object keyed by Women, Men, and Kids & Baby. Each section contains an array of category objects with name, url, and a subcategories array — useful for building navigation trees or seeding product searches with canonical category names. This endpoint reflects the top-level taxonomy of the Uniqlo US site as currently structured.
The Uniqlo API is a managed, monitored endpoint for uniqlo.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when uniqlo.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 uniqlo.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 cross-brand price comparison tool using
base_priceandpromo_pricefields fromsearch_products - Populate a product catalog page with images, colors, and sizes pulled from
get_product_details - Implement a Uniqlo-specific search interface filtered by section (
men,women,kids,baby) - Track promotional pricing changes over time by polling
promo_pricefor specific product IDs - Generate a structured category sitemap using the
sectionsandsubcategoriesdata fromget_categories - Filter apparel by size availability using the
sizesarray returned in search and detail endpoints - Display fit and satisfaction signals in a product UI using
fit_ratingandrating_averfields
| 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 Uniqlo offer an official public developer API?+
What does `get_product_details` return beyond what `search_products` provides?+
get_product_details adds several fields not present in search results: sub_images (additional product image URLs), breadcrumbs (structured category path with gender, class, category, and subcategory), fit_rating, and material composition. Search results include rating_aver but not the full image gallery or breadcrumb hierarchy.Does the API cover Uniqlo stores outside the US, such as the UK, Japan, or EU regions?+
Is stock availability or inventory level exposed for each product?+
How does pagination work in `search_products`?+
offset parameter to page through results, starting at 0. The limit parameter controls how many results are returned per page, up to a maximum of 100. The response includes total (the full matching product count) and count (items returned in the current page), so you can calculate how many additional pages exist.