{"service":"PulseHealth API Gateway","version":"2.0.0","environment":"development","debug":true,"description":"Service-specific GraphQL endpoints with Pulse Core (Primary) and Legacy (Fallback). All endpoints support introspection for automatic codegen.","note":"All business endpoints contain only business logic queries/mutations/subscriptions. Health checks are available at /health endpoint.","endpoints":{"auth":{"url":"/graphql/auth","method":"POST","description":"Common Authentication endpoint - Shared by ALL frontend applications","backend":"Pulse Core (Primary) | Legacy (Fallback)","playground":"/graphql/auth (GET)","introspection":"Enabled (for codegen)","resolvers":"resolvers/pulse_core/auth.py (Primary)","schema":"schemas/pulse_core/auth.graphql","availableOperations":{"queries":["me"],"mutations":["login","register","logout","refreshToken","sendOtp","verifyOtp","forgotPassword","resetPassword","updateProfile"]},"usage":"Use this endpoint in ALL frontend apps for authentication operations"},"b2b-b2c":{"url":"/graphql/b2b-b2c","method":"POST","description":"B2B/B2C Customer App - Products, Orders, Cart, Payments (Business logic only)","backend":"Pulse Core (Primary) | Legacy (Fallback)","playground":"/graphql/b2b-b2c (GET)","introspection":"Enabled (for codegen)","resolvers":["resolvers/pulse_core/products.py (Primary)","resolvers/pulse_core/orders.py (Primary)","resolvers/pulse_core/payments.py (Primary)","resolvers/services/cart_resolvers.py (Legacy)"],"schema":"schemas/services/b2b-b2c-complete.graphql","authEndpoint":"/graphql/auth (use for authentication)","availableOperations":{"queries":["products","product","categories","brands","searchProducts","orders","order","myOrders","cart","me","myProfile","calculateBulkPrice","checkAvailability","calculateOrderTotals","validateOrderStock","assignWarehouseForOrder","orderStats"],"mutations":["createOrder","updateOrderStatus","cancelOrder","addToCart","updateCartItem","removeFromCart","clearCart","createPaymentIntent","verifyPaymentStatus","updateOrderPayment","addTrackingInfo","applyPromoCode","generateTrackingInfo","calculateOrderRefund"]},"note":"For authentication, use /graphql/auth endpoint"},"warehouse":{"url":"/graphql/warehouse","method":"POST","description":"Warehouse & Logistics - Warehouse management and inventory (Business logic only)","backend":"Pulse Core (Primary) | Legacy (Fallback)","playground":"/graphql/warehouse (GET)","introspection":"Enabled (for codegen)","resolvers":"resolvers/pulse_core/warehouses.py (Primary)","schema":"schemas/services/warehouse-complete.graphql","authEndpoint":"/graphql/auth (use for authentication)","availableOperations":{"queries":["warehouses","warehouse","warehouseInventory","pendingOrders","inventory","transfers","cycleCounts"],"mutations":["createWarehouse","updateWarehouse","createTransfer","updateTransfer","createCycleCount","updateCycleCount"]},"note":"For authentication, use /graphql/auth endpoint"},"picker":{"url":"/graphql/picker","method":"POST","description":"Picker Mobile App - Picking tasks and order fulfillment (Business logic only)","backend":"Pulse Core (Primary) | Legacy (Fallback)","playground":"/graphql/picker (GET)","introspection":"Enabled (for codegen)","resolvers":"resolvers/pulse_core/pickers.py (Primary)","schema":"schemas/services/picker-complete.graphql","authEndpoint":"/graphql/auth (use for authentication)","availableOperations":{"queries":["pickTasks","myDashboard","todaysAssignments","pickTask"],"mutations":["assignPickTask","startPicking","scanItem","completePicking","updatePickTask"]},"note":"For authentication, use /graphql/auth endpoint"},"admin":{"url":"/graphql/admin","method":"POST","description":"Admin Dashboard - Comprehensive admin operations (Business logic only)","backend":"Pulse Core (Primary) | Legacy (Fallback)","playground":"/graphql/admin (GET)","introspection":"Enabled (for codegen)","resolvers":"resolvers/services/admin_dashboard.py (Legacy) + Pulse Core products/orders","schema":"schemas/pulse_core/admin.graphql","authEndpoint":"/graphql/auth (use for authentication)","availableOperations":{"queries":["users","user","orders","order","allOrders","products","product","allProducts","analytics","topCustomers","inventoryOverview","salesStats","topProducts"],"mutations":["createUser","updateUser","deleteUser","createProduct","updateProduct","deleteProduct","updateOrderStatus","cancelOrder","updateInventoryLevel"]},"note":"For authentication, use /graphql/auth endpoint"},"legacy":{"url":"/services/graphql","method":"POST","description":"Legacy Microservices GraphQL API (Deprecated)","status":"deprecated","playground":"/services/graphql (GET)"},"health":{"url":"/health","method":"GET","description":"Health check endpoint"},"documentation":{"architecture":"See ARCHITECTURE.md","endpoints":"See ENDPOINTS.md","migration":"See MIGRATION_GUIDE.md"}},"serviceStatus":{"auth":true,"admin":true,"warehouse":true,"picker":true,"b2b-b2c":true,"sales-reports":true},"quickLinks":{"playgrounds":{"auth":"http://localhost:8000/graphql/auth","admin":"http://localhost:8000/graphql/admin","warehouse":"http://localhost:8000/graphql/warehouse","picker":"http://localhost:8000/graphql/picker","b2b-b2c":"http://localhost:8000/graphql/b2b-b2c","sales-reports":"http://localhost:8000/graphql/sales-reports"},"note":"Click the links above to open GraphQL Playgrounds (debug mode only). Use POST requests for production."}}