Anthropologie APIanthropologie.com ↗
Access Anthropologie sale listings, product details, search results, and discount stats via API. Covers prices, colors, ratings, availability, and more.
What is the Anthropologie API?
The Anthropologie API exposes 5 endpoints covering sale inventory, product search, and detailed product data from anthropologie.com. The get_product_details endpoint returns up to 10 structured fields per product — including current and original price, available colors, average star rating, review count, and stock availability — while get_sale_products and calculate_discount_stats let you paginate and aggregate across Anthropologie's current promotions.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/8670912f-8c8b-41c1-af3f-70e3e4439536/get_sale_product_count' \ -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 anthropologie-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: Anthropologie SDK — browse sales, search, and get product details."""
from parse_apis.anthropologie_api import Anthropologie, ProductNotFound
client = Anthropologie()
# Get the total sale catalog size.
sale_count = client.salecounts.get()
print(f"Total sale products: {sale_count.total_products}")
# Browse sale products — limit= caps total items fetched across pages.
for item in client.saleproducts.list(limit=5):
print(item.name, item.current_price, item.discount_percent)
# Drill into the first sale product's full details via the sub-resource.
sale_item = client.saleproducts.list(limit=1).first()
if sale_item:
detail = sale_item.details.get()
print(detail.name, detail.brand, detail.category, detail.is_available)
# Search for products by keyword.
for result in client.searchresults.search(query="candle", limit=3):
print(result.name, result.price)
# Get full product details by URL with typed-error handling.
try:
product = client.products.get(url="https://www.anthropologie.com/shop/maeve-satin-asymmetric-midi-skirt2")
print(product.name, product.current_price, product.original_price, product.colors)
except ProductNotFound as exc:
print(f"Product not found: {exc.url}")
# Calculate discount statistics across sale pages.
stats = client.discountstatses.calculate(max_pages=2)
print(stats.average_discount_percentage, stats.total_products_analyzed)
print("exercised: salecounts.get / saleproducts.list / details.get / searchresults.search / products.get / discountstatses.calculate")
Get the total number of products currently on sale at Anthropologie. Returns a single integer count reflecting the live sale catalog size.
No input parameters required.
{
"type": "object",
"fields": {
"total_products": "integer total number of sale products"
},
"sample": {
"data": {
"total_products": 3091
},
"status": "success"
}
}About the Anthropologie API
Sale Inventory and Discount Analysis
The get_sale_product_count endpoint returns a single integer representing the total number of products currently marked down on Anthropologie's site — useful for knowing how many pages to expect before you start paginating. get_sale_products accepts a 1-based page parameter and returns up to 72 products per page, each with name, url, current_price, original_price, and discount_percent. To aggregate across multiple pages, calculate_discount_stats accepts a max_pages parameter and returns total_products_analyzed and average_discount_percentage — handy for benchmarking markdown depth across a sale event.
Product Search and Detail
search_products accepts a query string (e.g. 'linen dress' or 'wide-leg pants') and returns matching products from the first page of results, each with name, url, and price. For deeper data on any item, pass its full URL or /shop/ path to get_product_details, which returns brand, category, description (including materials and care), colors as an array of strings, is_available as a boolean, review_count, current_price, and average_rating out of 5.
Coverage Notes
All sale endpoints reflect Anthropologie's current live promotions, so product counts and discount percentages will vary over time. The calculate_discount_stats endpoint only analyzes products with valid discount data — items missing a price comparison are excluded from the average_discount_percentage calculation. Search results are limited to the first page of results, typically up to 72 items.
The Anthropologie API is a managed, monitored endpoint for anthropologie.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when anthropologie.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 anthropologie.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?+
- Track average markdown depth during Anthropologie sale events using
calculate_discount_stats - Build a discount alert tool that monitors
get_sale_product_countfor spikes in sale inventory - Aggregate sale product listings with
get_sale_productsto compare pricing across clothing categories - Search for specific item types (e.g. 'sweater') and retrieve full details including color options and ratings
- Monitor in-stock status of specific products using the
is_availablefield fromget_product_details - Collect review counts and average ratings across product lines for trend or sentiment analysis
| 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 Anthropologie offer an official public developer API?+
What does `get_product_details` return beyond price?+
/shop/ path, the endpoint returns name, brand, category, description (covering materials and care instructions), a colors array, is_available as a boolean, review_count, current_price, and average_rating out of 5. The average_rating field is null if the product has no reviews.How does pagination work for sale products?+
get_sale_products uses a 1-based page parameter and returns up to 72 products per page. Use get_sale_product_count first to determine the total number of sale items, then divide by 72 to calculate how many pages to request. calculate_discount_stats accepts a max_pages parameter to limit how many pages are analyzed.Does the API return size availability or inventory by size?+
get_product_details returns an is_available boolean and a colors array, but does not break down stock by individual size. You can fork this API on Parse and revise it to add per-size inventory fields if that granularity is needed.Are non-sale products accessible through the search endpoint?+
search_products returns results for any keyword query and is not limited to sale items — it reflects the first page of results from Anthropologie's full catalog, including full-price products. The dedicated sale endpoints (get_sale_products, get_sale_product_count) are scoped to currently discounted items only.