Get Merchant Offers by Product ID
View all Idealo Product Search & Merchant Offers API endpoints →Submit one Idealo numeric listing ID with its country. Enter JSON text in body, for example {"country":"de","values":["204771161"]}; direct gateway clients provide that text as the string value of body. country accepts de or at, with Germany verified and Austria untested. values must contain exactly one ID string. Choose an ID from a matching-country listing; the documented validation rejects 0 and IDs with a leading zero when creating the job. No shop account, price update or offer submission is involved. The verified creation response contained error:false and job_id. Retrieve that job through get-job. The observed terminal result for 204771161 had status:completed, operation:search-by-id, done=1, total=1 and summary.found=1. Its found row echoed query and result.id=204771161, with name Apple iPhone 16, price_min, price_avg, price_max, offers_count, image_urls, country and fetched_at. Brand, description and review fields were null in this result. The result contained 20 offers. Observed offer fields included title, sellerId, shop_name, shop_url, shop_type, marketplace_name, shop_review_rating, shop_review_count, position, condition, currency, price, shipping, total, voucher, availability_code and availability_text. free_return and direct_sale could be null; classification and confidence were also present in this sample. Prices were in EUR. Some standalone shops used the string N/A for marketplace_name. Use delivered total alongside availability and condition rather than item price alone. The earlier search summary for this ID counted 82 offers, so the 20 returned rows do not establish complete merchant coverage.
API Features
Live API Demo
🔒 Sign in to try it live
Log in to call this API with your own API key. New accounts get 100 free credits — no card required.
Log in / Sign upNo active API key found. Create one in your Dashboard, then reload this page. Dashboard →
/api/project/idealo/search-by-id API Response (JSON)
{} curl -X POST 'https://api.opendata-api.com/api/project/idealo/search-by-id?key=<API_KEY>' \
-H 'Content-Type: application/json' \
-d '{"body":"<body>"}' Query Result
Use Cases
- Curated repricing watchlist: refresh approved country-and-ID pairs and keep fetched_at on each merchant-price observation.
- Selected-product comparison panel: show delivered totals and shop availability after a shopper chooses a particular listing.
- Merchant-position review: examine supplied positions, shop review signals and condition when assessing a product's competitive landscape.
- Availability-aware deal alert: notify only when a supplied offer meets an application's delivered-price and fulfillment criteria.
Frequently asked questions
Where should the product ID come from?
Use an Idealo listing ID selected from keyword results or a known product listing for the requested country. Keep the ID as a string and submit exactly one. The documented contract rejects 0 and IDs beginning with zero; do not reuse barcode formatting rules for listing IDs.
Which fields support a merchant-price comparison?
The observed offers supplied shop_name, shop_type, price, shipping, total, currency, condition and availability fields, plus shop review signals and position. Compare total in the returned currency and check condition and availability. Null flags and marketplace_name=N/A must not be converted into positive shop guarantees.
Will this return every merchant counted by keyword search?
Complete coverage is not established. Listing 204771161 showed offers_count=82 in discovery, while its detailed result contained 20 offers. Treat the received collection as an observation, not a guaranteed exhaustive list or a fixed 20-offer limit.
Does this endpoint update my shop's Idealo prices?
No. It creates a read-only product-data lookup job. It neither uploads your own offers nor changes a shop price, reserves stock or places an order. Use get-job to collect the result after submission.