{"openapi":"3.1.0","info":{"title":"Glutwerk Katalog-API","version":"1.0.0","description":"Öffentliche, schreibgeschützte Katalogdaten. Keine Kunden-, Bestell- oder Einkaufsdaten. Preise in EUR inkl. 20 % USt.; nur bestätigte Preise werden ausgegeben."},"servers":[{"url":"https://glutwerk.shop/api/public/catalog/v1"}],"paths":{"/products":{"get":{"summary":"Produktliste","parameters":[{"name":"category","in":"query","schema":{"type":"string"}},{"name":"brand","in":"query","schema":{"type":"string"}},{"name":"limit","in":"query","schema":{"type":"integer","maximum":200,"default":100}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"total":{"type":"integer"},"limit":{"type":"integer"},"offset":{"type":"integer"},"items":{"type":"array","items":{"$ref":"#/components/schemas/Product"}}}}}}},"429":{"description":"Ratenlimit (120/min je IP)"}}}},"/products/{slug}":{"get":{"summary":"Einzelnes Produkt","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Product"}}}},"404":{"description":"Nicht gefunden"},"429":{"description":"Ratenlimit (120/min je IP)"}}}},"/categories":{"get":{"summary":"Kategorien","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Ratenlimit (120/min je IP)"}}}},"/brands":{"get":{"summary":"Marken","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Ratenlimit (120/min je IP)"}}}},"/search":{"get":{"summary":"Suche über Name, Marke, SKU, MPN, EAN, Merkmale","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":2}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"q zu kurz"},"429":{"description":"Ratenlimit (120/min je IP)"}}}},"/shipping-payment-info":{"get":{"summary":"Versand- und Zahlungsinformationen","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Ratenlimit (120/min je IP)"}}}}},"components":{"schemas":{"Product":{"type":"object","properties":{"id":{"type":"string"},"slug":{"type":"string"},"url":{"type":"string","format":"uri","description":"Kanonische Produkt-URL"},"name":{"type":"string"},"manufacturer":{"type":"string"},"brand_slug":{"type":"string"},"category":{"type":"object","properties":{"slug":{"type":"string"},"name":{"type":"string"},"url":{"type":"string"}}},"short_description":{"type":"string","nullable":true},"description":{"type":"string","nullable":true},"box_contents":{"type":"string","nullable":true},"specifications":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"label":{"type":"string"},"value":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"boolean"}]},"unit":{"type":"string","nullable":true},"display":{"type":"string"}}}},"images":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"alt":{"type":"string"},"illustrative":{"type":"boolean","description":"true = eigene Symbolgrafik (Platzhalter), kein Foto des Originalprodukts"}}}},"documents":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"kind":{"type":"string"},"url":{"type":"string"},"language":{"type":"string"}}}},"offer":{"type":"object","properties":{"sku":{"type":"string"},"mpn":{"type":"string","nullable":true},"gtin":{"type":"string","nullable":true},"variant_name":{"type":"string","nullable":true},"price":{"type":"object","nullable":true,"properties":{"amount":{"type":"string","example":"100.80"},"currency":{"type":"string","example":"EUR"},"vat_included":{"type":"boolean"},"vat_rate_percent":{"type":"number"}},"description":"Nur gesetzt, wenn der Preis vom Betreiber bestätigt ist."},"price_status":{"type":"string","enum":["confirmed","under_review","not_set"]},"availability":{"type":"string","enum":["in_stock","low_stock","out_of_stock","on_request","unknown"]},"purchasable":{"type":"boolean"},"updated_at":{"type":"string","format":"date-time"}}},"variants":{"type":"array","items":{"type":"object","properties":{"sku":{"type":"string"},"mpn":{"type":"string","nullable":true},"gtin":{"type":"string","nullable":true},"variant_name":{"type":"string","nullable":true},"price":{"type":"object","nullable":true,"properties":{"amount":{"type":"string","example":"100.80"},"currency":{"type":"string","example":"EUR"},"vat_included":{"type":"boolean"},"vat_rate_percent":{"type":"number"}},"description":"Nur gesetzt, wenn der Preis vom Betreiber bestätigt ist."},"price_status":{"type":"string","enum":["confirmed","under_review","not_set"]},"availability":{"type":"string","enum":["in_stock","low_stock","out_of_stock","on_request","unknown"]},"purchasable":{"type":"boolean"},"updated_at":{"type":"string","format":"date-time"}}}},"updated_at":{"type":"string","format":"date-time"}}}}}}