wearfigs APIwearfigs.com ↗
Access FIGS medical apparel data: collections, product details, colors, sizes, reviews, and variant lookups across women's and men's scrub lines.
What is the wearfigs API?
The FIGS API covers 13 endpoints for browsing and querying wearfigs.com medical apparel data, including full collection listings, color and size breakdowns, customer reviews, and SKU-level variant details. Endpoints like get_product_reviews return paginated review scores and reviewer metadata per Shopify product ID, while get_available_colors breaks out Core versus Limited Edition swatches with hex codes and accent colors for any product group handle.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/c274231f-7601-4772-8c4f-1a0085c69511/get_womens_scrubs_collection' \ -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 wearfigs-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: FIGS Scrubs API — browse collections, search products, inspect details and reviews."""
from parse_apis.figs_scrubs_api import Figs, Gender, Fabric, ProductNotFound
client = Figs()
# Browse women's best sellers collection
best = client.collections.best_sellers(gender=Gender.WOMENS)
print(f"Collection: {best.name} ({best.items.numItems} products)")
for product in best.items.nodes[:3]:
print(f" {product.title} - {product.colorInfo.name} [{product.category}]")
# Search for jogger pants across the catalog
results = client.searchresults.search(query="jogger pants")
print(f"\nSearch results: {results.items.numItems} matches")
first_node = results.items.nodes[0]
print(f" Top hit: {first_node.product.title} ({first_node.product.productGroup.handle})")
# Get product detail for a specific product group
product_handle = first_node.product.productGroup.handle
try:
detail = client.productdetails.get(handle=product_handle)
catalog = detail.productCatalogStandardProduct
if catalog:
print(f"\nProduct: {catalog.handle} (id={catalog.id})")
print(f" Colors: {len(catalog.options.colors)}, Sizes: {len(catalog.options.sizes)}")
except ProductNotFound as exc:
print(f"Product not found: {exc}")
# Fetch colors grouped by core vs limited edition
colors = client.productcolorses.get(handle="womens-catarina-scrub-top")
print(f"\nColors for Catarina: {len(colors.core_colors)} core, {len(colors.limited_edition_colors)} limited edition")
for c in colors.core_colors[:3]:
print(f" {c.name}: {c.hex}")
# Get product reviews
reviews_resp = client.reviewsresponses.get(product_id="6999109206192", limit=3)
print(f"\nReviews: {reviews_resp.totalReviews} total, avg score {reviews_resp.averageScore:.1f}")
for review in reviews_resp.reviews[:3]:
print(f" [{review.score}/5] {review.title} — {review.reviewer}")
# Look up fabric-specific products
fabric_results = client.searchresults.by_fabric(fabric=Fabric.FIONX_WOMENS)
print(f"\nFIONx Women's: {fabric_results.items.numItems} products")
print("\nExercised: collections.best_sellers / searchresults.search / productdetails.get / productcolorses.get / reviewsresponses.get / searchresults.by_fabric")
Fetch all women's scrub products from the 'all-scrubs-womens' collection. Returns every product in the collection with color and category metadata. No pagination — a single request returns all items.
No input parameters required.
{
"type": "object",
"fields": {
"name": "string, collection display name",
"items": "object containing nodes (array of product objects) and numItems (total count)",
"handle": "string, collection handle slug"
},
"sample": {
"data": {
"name": "All Women's Scrubs",
"items": {
"nodes": [
{
"title": "Catarina Scrub Top™",
"handle": "womens-catarina-one-pocket-scrub-top-black",
"category": "Scrub Top",
"colorInfo": {
"name": "Black",
"rawName": "Black",
"hexCodes": [
"#000000"
]
},
"productGroup": {
"title": "Catarina Scrub Top™",
"handle": "womens-catarina-scrub-top",
"genderCategory": "women"
}
}
],
"numItems": 474
},
"handle": "all-scrubs-womens"
},
"status": "success"
}
}About the wearfigs API
Collections and Product Browsing
Two collection endpoints — get_womens_scrubs_collection and get_mens_scrubs_collection — return every product in the respective all-scrubs collection in a single request, with no pagination required. Each response includes a name, a handle slug, and an items object containing a nodes array of product objects and a numItems count. For narrower browsing, get_collection_by_category accepts a category handle (e.g. scrub-tops-womens, scrub-pants-mens) to fetch a specific slice of the catalog. get_new_arrivals, get_best_sellers, and get_sale_products each accept an optional gender parameter (womens or mens) and return the same collection shape.
Product Detail and Options
get_product_detail accepts a handle — either a color-specific slug like womens-catarina-one-pocket-scrub-top-black or a product group slug — and returns a product object with fields including title, category, description, whyWeLove, careInstructions, colorInfo, productGroup, and priceRange, alongside a productCatalogStandardProduct object that lists available colors, sizes, and fits. When only a group handle is used, the product field may be null while productCatalogStandardProduct remains populated. For dedicated option queries, get_available_colors returns core_colors and limited_edition_colors arrays — each entry carrying name, id, hex, swatch, and accent_color — and get_available_sizes returns fits and sizes label arrays for a given product group handle.
Search and Fabric Filtering
search_products accepts a query string and an optional limit integer, returning an items object with matching product nodes plus a suggestions array. get_collection_by_fabric accepts a fabric parameter that combines fabric name and optional gender suffix (e.g. fionx-womens, formx-mens) and returns products matching that fabric technology, also with a suggestions array.
Reviews and Variant Data
get_product_reviews takes a numeric Shopify product_id string and supports page and limit pagination parameters. Responses include a reviews array with title, content, score, createdAt, and reviewer fields, plus a pagination object with numPages, numPerPage, and pageNum, and top-level averageScore and totalReviews values. The get_complete_the_set POST endpoint accepts a JSON array of SKU strings in the format product-code:size-fit and returns productCatalogVariants entries with id, sku, shopifyId, shopifyProductId, price, compareAtPrice, and group fields.
The wearfigs API is a managed, monitored endpoint for wearfigs.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when wearfigs.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 wearfigs.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 scrub recommendation tool that filters by gender and fabric using get_collection_by_fabric with handles like 'fionx-womens'
- Display real-time FIGS sale items in a healthcare employee discount portal using get_sale_products
- Populate a size and fit guide by pulling fits and sizes arrays from get_available_sizes for each product group
- Render color swatches including hex codes and accent colors in a custom product configurator via get_available_colors
- Aggregate customer review scores and review text per product using get_product_reviews with Shopify product IDs
- Look up pricing and Shopify variant IDs for specific SKUs to sync with an ordering or inventory system via get_complete_the_set
- Surface new arrivals by gender in a medical staff apparel newsletter using get_new_arrivals
| 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.