Ripley APIripley.com ↗
Search Ripley.cl's product catalog and retrieve prices, specs, availability, and images for any SKU via two structured JSON endpoints.
What is the Ripley API?
The Ripley.cl API gives developers structured access to Chile's major retail platform through 2 endpoints. Use search_products to query the catalog by keyword and receive up to 48 product summaries per request — each including list price, offer price, Ripley card price, brand, and a SKU. Pass that SKU to get_product_details to retrieve full specifications, color variants, category breadcrumbs, availability, shipping methods, and an HTML product description.
curl -X GET 'https://api.parse.bot/scraper/494f7d69-d0b5-4931-8535-8e23dc9e40ee/search_products?query=televisores' \ -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 ripley-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.ripley_cl_api import Ripley, Product, ProductSummary, ProductNotFound
# Initialize the client
ripley = Ripley()
# Search for TVs
for product in ripley.productsummaries.search(query="televisores", limit=5):
print(product.name, product.brand, product.offer_price, product.is_available)
# Get full details for a product found in search
detailed = ripley.productsummaries.search(query="laptop", limit=1)
for summary in detailed:
full_product = summary.details()
print(full_product.name, full_product.brand)
print(full_product.prices.formatted_offer_price, full_product.prices.discount_percentage)
print(full_product.short_description)
for spec in full_product.specifications[:3]:
print(spec.name, spec.value)
print(full_product.availability.in_stock, full_product.availability.shipping_methods)
for img in full_product.images[:2]:
print(img.src)
# Fetch a product directly by SKU
tv = ripley.products.get(sku="2000410378872")
print(tv.name, tv.brand, tv.categories, tv.colors)
Search for products on Ripley.cl by keyword. Returns up to 48 products per request sorted by relevance. Each product includes pricing, brand, availability, and a SKU that can be used with get_product_details for full specifications.
| Param | Type | Description |
|---|---|---|
| queryrequired | string | Search keyword (e.g., 'televisores', 'laptop', 'Samsung') |
{
"type": "object",
"fields": {
"count": "integer total number of matching products",
"products": "array of product summaries with name, sku, part_number, brand, url, image, list_price, offer_price, card_price, discount_percentage, and is_available"
},
"sample": {
"data": {
"count": 100,
"products": [
{
"sku": "2000410378872",
"url": "https://simple.ripley.cl/smart-tv-hisense-qled-full-hd-43-43q4sv-2000410378872p",
"name": "SMART TV HISENSE QLED FULL HD 43” 43Q4SV",
"brand": "HISENSE",
"image": "https://rimage.ripley.cl/home.ripley/Attachment/WOP/1/2000410378872/full_image-2000410378872",
"card_price": null,
"list_price": 239990,
"offer_price": 199990,
"part_number": "2000410378872P",
"is_available": true,
"discount_percentage": 17
}
]
},
"status": "success"
}
}About the Ripley API
Product Search
The search_products endpoint accepts a single required query parameter — a keyword string such as 'televisores', 'laptop', or a brand name like 'Samsung'. It returns a count integer alongside an array of up to 48 product summaries. Each summary includes name, sku, part_number, brand, url, image, and three price tiers: list_price, offer_price, and card_price (the Ripley card discount price), plus a discount_percentage. Results are ordered by relevance.
Product Detail
The get_product_details endpoint takes a sku string — obtainable directly from search_products results — and returns a full product record. The prices object provides both raw numeric values and pre-formatted Chilean peso strings (formatted_list_price, formatted_offer_price). The availability object includes an in_stock boolean and a shipping_methods array. Additional fields cover colors (array of available color name strings), images (array of objects with a src field), categories (breadcrumb path as an array of strings), and description (HTML markup for the product description).
Coverage & Limitations
Both endpoints cover the Ripley.cl Chile catalog. The search endpoint returns a maximum of 48 products per request and does not support offset or page-based pagination, so deep catalog traversal requires multiple targeted queries. Product reviews and seller ratings are not part of the response shape for either endpoint.
The Ripley API is a managed, monitored endpoint for ripley.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when ripley.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 ripley.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 price changes across list, offer, and Ripley card tiers for a set of SKUs
- Build a product comparison tool for Chilean electronics and appliances using
get_product_detailsspecs - Monitor
in_stockstatus andshipping_methodsfor inventory alerting workflows - Aggregate category breadcrumb data from
categoriesto map Ripley's taxonomy - Sync Ripley product names, images, and prices into a local e-commerce database
- Identify discount depth by comparing
list_pricetocard_priceacross search results
| 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 Ripley.cl have an official developer API?+
What price fields does `get_product_details` return and how do they differ?+
prices object returns three price tiers: list_price (the regular retail price), offer_price (a promotional or sale price), and card_price (the price available to Ripley card holders). Each has both a raw numeric value and a formatted Chilean peso string. A discount_percentage field shows the proportional reduction from list to offer price.Can I paginate through more than 48 search results?+
search_products returns up to 48 products per request and does not support offset or page parameters. The count field tells you the total number of matching products, but only the first 48 by relevance are returned. You can fork this API on Parse and revise it to add pagination support if deeper catalog traversal is needed.