Cropp APIcropp.com ↗
Access Cropp Hungary's clothing catalog via API. Search products, browse categories, get pricing, sizes, stock status, and active promotion codes.
What is the Cropp API?
The Cropp Hungary API covers the full shopping experience across 6 endpoints, returning product listings, category trees, per-size stock status, and live promotion codes from cropp.com/hu. Use search_products to query the catalog by keyword with pagination, get_product_details to retrieve material composition and per-variant inventory, and get_active_promotions to pull current discount codes in one call.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/623f3705-ffac-47c7-9714-2917d2e5a75f/get_homepage' \ -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 cropp-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: Cropp Hungary SDK — browse categories, search products, get details."""
from parse_apis.cropp_api import Cropp, CategoryPath, ProductNotFound
client = Cropp()
# List all product categories
for cat in client.categories.list(limit=5):
print(cat.name, cat.path)
# Search for polo shirts — bounded iteration
for product in client.products.search(query="polo", limit=3):
print(product.name, product.price, product.currency, product.is_sale)
# Browse women's category using the enum
for product in client.products.list_by_category(category_path=CategoryPath.WOMEN, limit=3):
print(product.name, product.sku, product.regular_price)
# Drill into one product for full details (sizes, material, images)
item = client.products.search(query="farmer", limit=1).first()
if item:
detail = item.details()
print(detail.name, detail.material, detail.color)
for size in detail.sizes:
print(size.name, size.in_stock, size.quantity)
# Typed error handling: attempt to fetch a non-existent product
try:
bogus = client.product(sku="nonexistent-sku-000").details()
except ProductNotFound as exc:
print(f"Product not found: {exc.product_slug}")
# Get current active promotions
promos = client.promotionlists.get()
print(promos.country)
for p in promos.promotions:
print(p.code, p.text)
print("exercised: categories.list / products.search / products.list_by_category / product.details / promotionlists.get")
Retrieve homepage data including active promotions, discount codes, and banner images. Returns the current site title, promotional codes with descriptions, and banner image URLs from the Cropp Hungary homepage.
No input parameters required.
{
"type": "object",
"fields": {
"url": "string, the homepage URL",
"title": "string, site title",
"banners": "array of objects each with an 'image' URL string",
"promotions": "array of objects each with 'code', 'text', and 'type' strings"
},
"sample": {
"data": {
"url": "https://www.cropp.com/hu/hu/",
"title": "Cropp Hungary",
"banners": [
{
"image": "https://media.cropp.com/media/x/w/t/b34262fcf9-allheadertshirtsweek24desktop.jpg?impolicy=banner"
}
],
"promotions": [
{
"code": "SUN25",
"text": "-25% kedvezmény egyes termékekre legalább 2 termék vásárlása esetén 03.06 - 23.06",
"type": "STANDARD_COUPON"
}
]
},
"status": "success"
}
}About the Cropp API
Product Search and Category Browsing
The search_products endpoint accepts a required query string (Hungarian or English keywords such as polo or farmer) plus optional page (0-indexed) and limit (1–100) parameters. It returns a paginated result set with total, pages, and a products array. Each product object carries id, name, sku, price, regular_price, currency (HUF), url, image, sizes, color, and an is_sale flag. The list_products_by_category endpoint mirrors this shape but filters by category_path — accepted values are noi (Women), ferfi (Men), learazas (Sale), and utos-ujdonsag (New arrivals).
Product Detail and Inventory
get_product_details accepts a product_slug — the URL slug from the url field of any search or category result, or a full product URL. The response adds fields not present in listing results: a material string with fabric composition, an images array of high-resolution URLs, and a sizes array where each size object includes name, in_stock, quantity, and its own sku. This makes it the right endpoint when you need to check per-size availability rather than just the top-level availability flag.
Promotions and Homepage Data
get_active_promotions returns a country field fixed to HU and a promotions array where each entry has a code, text, and type string — suitable for surfacing current discount codes without loading the full homepage. get_homepage covers the same promotion data but also includes the site title and a banners array of image URLs from the current homepage carousel. list_categories returns a static list of top-level categories with name, id, and path fields, useful for building navigation or validating inputs to list_products_by_category.
The Cropp API is a managed, monitored endpoint for cropp.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when cropp.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 cropp.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?+
- Monitor Cropp Hungary sale prices and
is_saleflags to track markdowns over time - Build a size-availability checker using per-variant
quantityandin_stockfields from get_product_details - Aggregate active discount codes from get_active_promotions for a coupon aggregator site
- Populate a product feed with names, prices, images, and color details from search_products
- Sync the Women's or Men's category inventory using list_products_by_category with the
noiorferfipath - Compare
pricevsregular_priceacross the catalog to identify the deepest discounts - Display current homepage banner images and promotions in a third-party storefront integration
| 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 Cropp have an official public developer API?+
What does get_product_details return that listing endpoints don't?+
sizes array and an is_sale flag. get_product_details adds per-size quantity and individual size sku codes, a material string with fabric composition, and a full images array with multiple high-resolution image URLs.Are product reviews or ratings available through this API?+
Does the API cover Cropp stores in other countries besides Hungary?+
country field in get_active_promotions is fixed to HU, and category paths and pricing are Hungary-specific. You can fork it on Parse and revise the base URL and locale parameters to target another regional Cropp storefront.How does pagination work in search_products and list_products_by_category?+
page numbers. The response includes page (current index), pages (total page count), and total (total matching items). Set limit between 1 and 100 to control results per page. Request page 0 first, then iterate up to pages - 1.