{"openapi":"3.1.0","info":{"title":"Le maket API","version":"0.1.0","description":"Routes HTTP du MVP, conçues pour le web et une future application mobile."},"servers":[{"url":"/api"}],"paths":{"/health":{"get":{"summary":"Liveness","responses":{"200":{"description":"Application active"}}}},"/ready":{"get":{"summary":"Readiness PostgreSQL","responses":{"200":{"description":"Prêt"},"503":{"description":"Base indisponible"}}}},"/products":{"get":{"summary":"Recherche publique","parameters":[{"name":"q","in":"query"},{"name":"city","in":"query"},{"name":"category","in":"query"},{"name":"minPrice","in":"query"},{"name":"maxPrice","in":"query"},{"name":"kind","in":"query"},{"name":"sort","in":"query"},{"name":"page","in":"query"}],"responses":{"200":{"description":"Produits publiés"}}}},"/leads":{"post":{"summary":"Créer un lead avant WhatsApp","responses":{"201":{"description":"Lead enregistré et URL WhatsApp générée"}}}},"/merchant/products":{"post":{"summary":"Créer un produit vendeur","security":[{"cookieSession":[]}],"responses":{"201":{"description":"Produit créé"},"403":{"description":"Boutique non autorisée"}}}},"/orders":{"post":{"summary":"Créer une commande","security":[{"cookieSession":[]}],"responses":{"201":{"description":"Commande créée et total recalculé côté serveur"}}}},"/orders/{id}/payments":{"post":{"summary":"Enregistrer un paiement manuel","security":[{"cookieSession":[]}],"responses":{"201":{"description":"Paiement déclaré"}}}},"/orders/{id}/status":{"patch":{"summary":"Faire progresser une commande","security":[{"cookieSession":[]}],"responses":{"200":{"description":"Statut modifié"},"409":{"description":"Transition interdite"}}}}},"components":{"securitySchemes":{"cookieSession":{"type":"apiKey","in":"cookie","name":"le_maket_session"}}}}