{"code":200,"message":"success","data":{"service":"kiosk-x","version":"v1","uptimeSeconds":23305,"mode":"sandbox (mock data)","overall":"fail","dataset":{"operators":245,"machines":90,"aisles":921,"orders":127},"auth":{"apiKeys":7,"oauthClients":3,"cognitoIssuer":"https://cognito-idp.us-east-1.amazonaws.com/us-east-1_ah4qbr3Qv"},"selfTest":[{"check":"GET /health","target":"GET /health","status":200,"expected":200,"latencyMs":1.0,"pass":true},{"check":"POST /oauth/token","target":"POST /oauth/token","status":200,"expected":200,"latencyMs":1.5,"pass":true},{"check":"POST /api/v1/auth/login","target":"POST /api/v1/auth/login","status":200,"expected":200,"latencyMs":3.4,"pass":true},{"check":"401 bad login","target":"POST /api/v1/auth/login (bad password)","status":401,"expected":401,"latencyMs":237.4,"pass":true},{"check":"409 duplicate machine registration","target":"POST /api/v1/machines/register (dup)","status":409,"expected":409,"latencyMs":4.1,"pass":true},{"check":"GET /api/v1/machines","target":"GET /api/v1/machines","status":200,"expected":200,"latencyMs":6.6,"pass":true},{"check":"GET /api/v1/machines/{machineNo}","target":"GET /api/v1/machines/{machineNo}","status":200,"expected":200,"latencyMs":3.8,"pass":true},{"check":"PATCH /api/v1/machines/{machineNo}","target":"PATCH /api/v1/machines/{machineNo}","status":200,"expected":200,"latencyMs":5.6,"pass":true},{"check":"GET /api/v1/inventory","target":"GET /api/v1/inventory","status":200,"expected":200,"latencyMs":5.5,"pass":true},{"check":"GET /api/v1/inventory/machines/{machineNo}","target":"GET /api/v1/inventory/machines/{machineNo}","status":200,"expected":200,"latencyMs":2.7,"pass":true},{"check":"POST /api/v1/inventory/machines/{machineNo}/restock","target":"POST .../restock","status":200,"expected":200,"latencyMs":19.2,"pass":true},{"check":"PUT /api/v1/inventory/machines/{machineNo}/aisles/{aisleNo}","target":"PUT .../aisles/{aisleNo}","status":200,"expected":200,"latencyMs":3.8,"pass":true},{"check":"GET /api/v1/orders","target":"GET /api/v1/orders","status":200,"expected":200,"latencyMs":2.7,"pass":true},{"check":"GET /api/v1/orders/{orderNumber}","target":"GET /api/v1/orders/{orderNumber}","status":200,"expected":200,"latencyMs":28.9,"pass":true},{"check":"GET /api/v1/orders/summary","target":"GET /api/v1/orders/summary","status":200,"expected":200,"latencyMs":3.7,"pass":true},{"check":"GET /api/v1/payments","target":"GET /api/v1/payments","status":200,"expected":200,"latencyMs":1.8,"pass":true},{"check":"GET /api/v1/payments/summary","target":"GET /api/v1/payments/summary","status":200,"expected":200,"latencyMs":1.7,"pass":true},{"check":"GET /api/v1/payments/nayax/terminals","target":"GET .../nayax/terminals","status":200,"expected":200,"latencyMs":2.8,"pass":true},{"check":"401 unsigned Nayax webhook","target":"POST /api/v1/payments/nayax/webhook","status":401,"expected":401,"latencyMs":1.6,"pass":true},{"check":"GET /api/v1/rollouts","target":"GET /api/v1/rollouts","status":200,"expected":200,"latencyMs":18.0,"pass":true},{"check":"POST /api/v1/fulfill walkup","target":"POST /api/v1/fulfill","status":200,"expected":200,"latencyMs":2.6,"pass":true},{"check":"GET /api/v1/machines/{machineNo}/commands/pending","target":"GET .../commands/pending","status":200,"expected":200,"latencyMs":2.0,"pass":true},{"check":"POST /api/v1/accounts","target":"POST /api/v1/accounts","status":401,"expected":200,"latencyMs":1.9,"pass":false},{"check":"GET /sandbox/audit","target":"GET /sandbox/audit","status":401,"expected":200,"latencyMs":1.2,"pass":false},{"check":"401 missing key","target":"GET /api/v1/machines","status":401,"expected":401,"latencyMs":1.1,"pass":true},{"check":"403 insufficient scope","target":"GET /sandbox/audit","status":403,"expected":403,"latencyMs":1.1,"pass":true},{"check":"404 foreign machine","target":"GET /api/v1/machines/{machineNo}","status":404,"expected":404,"latencyMs":1.4,"pass":true}]}}