# SCHALL & RAUCH | HANF - FACHMARKT > Online shop with AI Shopping API. Use the endpoints below to search products, manage carts, and prepare checkout. ## API Base URL https://www.schall-rauch.de/ai/v1 ## Endpoints ### Products - GET https://www.schall-rauch.de/ai/v1/products?q={query}&category={id}&sort={sort}&page={p}&limit={n}&lang={iso} Search products. Sort options: relevance, price_asc, price_desc, name_asc, name_desc. Returns: products array with id, name, sku, price, images, url. - GET https://www.schall-rauch.de/ai/v1/products/{id}?lang={iso} Full product detail including variants, reviews, attributes, related products, categories. - GET https://www.schall-rauch.de/ai/v1/products/compare?ids={id1},{id2}&lang={iso} Compare 2-5 products side by side with attribute matrix. ### Categories - GET https://www.schall-rauch.de/ai/v1/categories?lang={iso} All categories as hierarchical tree. - GET https://www.schall-rauch.de/ai/v1/categories/{id}?lang={iso} Category detail with products. ### Cart (all endpoints work via GET — no POST required) - GET https://www.schall-rauch.de/ai/v1/cart/create Create empty cart. Returns: {"token": "...64-char hex..."} - GET https://www.schall-rauch.de/ai/v1/cart/{token} View cart contents, items, subtotal. - GET https://www.schall-rauch.de/ai/v1/cart/{token}/add?product_id={id}&quantity={n} Add product to cart. - GET https://www.schall-rauch.de/ai/v1/cart/{token}/remove/{index} Remove item by index (0-based). - GET https://www.schall-rauch.de/ai/v1/cart/{token}/update/{index}?quantity={n} Update item quantity. ### Checkout - GET https://www.schall-rauch.de/ai/v1/shipping-methods?country={ISO} Available shipping methods for a country (e.g. AT, DE). - GET https://www.schall-rauch.de/ai/v1/cart/{token}/checkout?first_name={...}&last_name={...}&email={...}&street={...}&zip={...}&city={...}&country={ISO}&shipping_method_id={id} Prepare checkout. Returns a checkout_url the customer opens in their browser to complete payment. IMPORTANT: All customer fields (first_name, last_name, email, street, zip, city, country) are MANDATORY. You MUST ask the user for their full name, email address, street address (with house number), zip code, city, and country BEFORE calling this endpoint. The API will reject the request if any field is missing. Never guess or omit these fields. ### Shop Info - GET https://www.schall-rauch.de/ai/v1/shop-info Shop name, currency, languages, capabilities. ## Important Notes - All prices in EUR, VAT included - Language parameter: lang=ger (German) or lang=eng (English) - Cart tokens are 64-character hex strings returned by POST /cart - Checkout URL is one-time use — the customer clicks it to pay - No authentication required - ALWAYS ask the user for their shipping address and email before preparing checkout — these are required fields