{"message":"E-commerce API with Flight PHP","version":"1.0","status":"running","timestamp":"2026-05-08 10:12:00","endpoints":{"GET \/":"API information","GET \/health":"Health check","POST \/auth\/login":"Admin login","POST \/auth\/user-login":"User login","POST \/auth\/vendor-login":"Vendor login","GET \/auth\/verify":"Verify token","POST \/auth\/refresh":"Refresh token","GET \/users\/me":"Get current user (auth required)","POST \/users":"Create user (public)","GET \/users":"List users (admin)","GET \/users\/{id}":"Get user (admin)","PUT \/users\/{id}":"Update user (admin)","DELETE \/users\/{id}":"Delete user (admin)","PUT \/users\/{id}\/deactivate":"Deactivate user (admin)","POST \/vendors":"Create vendor (admin)","GET \/vendors":"List vendors (auth required)","GET \/vendors\/{id}":"Get vendor (auth required)","PUT \/vendors\/{id}":"Update vendor (auth required)","DELETE \/vendors\/{id}":"Delete vendor (admin)","GET \/vendors\/{id}\/stores":"Get vendor stores (auth required)","GET \/vendors\/{id}\/stores\/{storeId}\/access":"Check store access (auth required)","GET \/categories":"List categories (public)","GET \/categories\/{id}":"Get category (public)","POST \/categories":"Create category (admin)","PUT \/categories\/{id}":"Update category (admin)","DELETE \/categories\/{id}":"Delete category (admin)","GET \/subcategories":"List subcategories (public)","GET \/subcategories\/{id}":"Get subcategory (public)","POST \/subcategories":"Create subcategory (admin)","PUT \/subcategories\/{id}":"Update subcategory (admin)","DELETE \/subcategories\/{id}":"Delete subcategory (admin)","GET \/products":"List products (auth required)","GET \/products\/{id}":"Get product (public)","POST \/products":"Create product (vendor\/admin)","PUT \/products\/{id}":"Update product (vendor\/admin)","DELETE \/products\/{id}":"Delete product (vendor\/admin)","GET \/products\/{id}\/photos":"Get product photos (public)","POST \/products\/{id}\/photos":"Upload product photos (vendor\/admin)","PUT \/products\/{productId}\/photos\/{photoId}":"Update product photo (vendor\/admin)","DELETE \/products\/{productId}\/photos\/{photoId}":"Delete product photo (vendor\/admin)","POST \/products\/{productId}\/variants":"Create product variant (vendor\/admin)","GET \/variants":"List variants with filters (auth required)","GET \/variants\/{id}":"Get variant details (auth required)","PUT \/variants\/{id}":"Update variant (vendor\/admin)","DELETE \/variants\/{id}":"Delete variant (vendor\/admin)","GET \/stores":"List stores (auth required)","GET \/stores\/{id}":"Get store details (auth required)","POST \/stores":"Create store (admin)","PUT \/stores\/{id}":"Update store (admin)","DELETE \/stores\/{id}":"Delete store (admin)","GET \/inventory":"List inventory with filters (auth required)","GET \/inventory\/{id}":"Get inventory record (auth required)","POST \/inventory":"Create inventory record (admin\/vendor)","PUT \/inventory\/{id}":"Update inventory record (admin\/vendor)","DELETE \/inventory\/{id}":"Delete inventory record (admin)","POST \/inventory\/{id}\/adjust":"Adjust inventory quantity (store manager+)","GET \/stores\/{storeId}\/inventory":"Get store inventory (auth required)","GET \/stores\/{storeId}\/available-variants":"Get available variants for store (auth required)","POST \/cart\/items":"Add item to cart (user)","GET \/cart":"Get cart contents (user)","PUT \/cart\/items\/{id}":"Update cart item quantity (user)","DELETE \/cart\/items\/{id}":"Remove item from cart (user)","DELETE \/cart":"Clear entire cart (user)","POST \/cart\/checkout":"Checkout cart (user)","POST \/orders\/place":"Place order from cart (user)","GET \/orders":"List orders with filters (auth required)","GET \/orders\/{id}":"Get order details (auth required)","PUT \/orders\/{id}\/status":"Update order status (admin\/vendor)","POST \/orders\/{id}\/cancel":"Cancel order (auth required)","DELETE \/orders\/{id}":"Delete order (superadmin only)","GET \/orders\/inventory-status":"Check inventory status before ordering","POST \/orders\/ensure-inventory":"Create missing inventory records","POST \/coupons":"Create coupon (admin)","GET \/coupons":"List all coupons with filters (admin)","GET \/coupons\/active":"Get active valid coupons (public)","GET \/coupons\/search":"Search coupons (admin)","GET \/coupons\/stats":"Get coupon statistics (admin)","GET \/coupons\/{id}":"Get coupon details (admin)","PUT \/coupons\/{id}":"Update coupon (admin)","DELETE \/coupons\/{id}":"Delete coupon (admin)","POST \/coupons\/validate":"Validate coupon code (public)","POST \/coupons\/{id}\/activate":"Activate coupon (admin)","POST \/coupons\/{id}\/deactivate":"Deactivate coupon (admin)","GET \/dashboard":"Get dashboard data (role-based)","GET \/dashboard\/quick-stats":"Get quick statistics (role-based)","GET \/analytics\/sales":"Get sales analytics with date filtering","POST \/banners":"Create banner (admin)","GET \/banners":"List all banners (public)","GET \/banners\/active":"Get active banners for frontend (public)","GET \/banners\/{id}":"Get single banner (public)","PUT \/banners\/{id}":"Update banner (admin)","DELETE \/banners\/{id}":"Delete banner (admin)"}}