Search products on idealo
idealo_searchFull Description
Search idealo catalog and display results in a carousel. IMPORTANT: Search results include comprehensive filter information to enable refinement:
- "availableCategories" (category IDs and names)
- "availableManufacturers" (brand IDs and names)
- "availableFilters" (attribute filters like color, material grouped by type
- NOT sizes)
- "sizeAttributes" (size-specific filters like shoe sizes, clothing sizes)
- "suggestedFilters" (recommended filters to apply based on search)
Use these IDs from the search response to refine subsequent searches - no separate lookups needed!
CRITICAL CONSTRAINT: Search filters (includeSearchFilters) and Size filters (includeSizeFilters) can ONLY be used together with at least one category ID (includeCategories). Never use includeSearchFilters or includeSizeFilters without includeCategories! This will cause an error.
WRONG (will fail with error):
- {"query": "oled tv", "filters": {"includeSearchFilters": ["123"]}} // Missing includeCategories!
- {"query": "shoes", "filters": {"includeSizeFilters": ["456"]}} // Missing includeCategories!
CORRECT (two-step workflow): Step 1: Search without attribute filters to discover category IDs {"query": "oled tv"} → response includes availableCategories like [{"categoryId": "789", "categoryName": "4K-Fernseher"}] Step 2: Refine with BOTH category AND attribute filters {"query": "oled tv", "filters": {"includeCategories": ["789"], "includeSearchFilters": ["123"]}}
Examples:
- First search for "headset"
→ get availableCategories with IDs like "789": "Gaming Headsets" → get availableFilters with IDs like "123456": "Color: Black" → refine with includeCategories: ["789"], includeSearchFilters: ["123456"].
- First search for "stiefel" (boots)
→ get availableCategories with IDs like "123": "Stiefel" → get sizeAttributes with IDs (attributeKeyValue) like "456_789": "39" → refine with includeCategories: ["123"], includeSizeFilters: ["456_789"].
- First search for "macbook"
→ get availableManufacturers with IDs like "456": "Apple" → get availableCategories with IDs like "7890": "Laptops" → get availableFilters with IDs like "123456": "Color: Himmelblau" → refine with includeManufacturers: ["456"], includeCategories: ["7890"], includeSearchFilters: ["123456"].
- First search for "laptops"
→ get availableCategories with IDs like "12345": "Notebooks" → refine with includeCategories: ["12345"].
Be strict if you put search filter you should not include it into query anymore. e.g. if user says "blue gaming headset home console" you should set category filter to "gaming headset" and search filter to "blue" and search filter to "home console", so the query only contains "headset".
Parameters (1 required, 2 optional)
querystringSearch query
countrystringOptional country code for manual marketplace selection. Available marketplaces: DE (Germany), AT (Austria), GB (United Kingdom), FR (France), IT (Italy), ES (Spain). If not provided, marketplace is automatically determined from user location. Unsupported countries default to Germany.
filtersobjectOptional search filters to refine product results. Use filters when the user specifies: price ranges (minPrice/maxPrice), availability requirements (availableOnly), deals (bargainsOnly), categories (includeCategories), brands (includeManufacturers), standard attributes (includeSearchFilters), or sizes (includeSizeFilters). All filters are optional - only include the ones relevant to the user's request. Filter IDs come from the search results themselves.