{ "timestamp": "2025-07-08T21:48:47.163Z", "summary": { "totalApiEndpoints": 187, "totalCurrentEndpoints": 318, "totalMissingEndpoints": 2, "byAuthType": { "PUBLIC": { "apiEndpoints": 37, "currentEndpoints": 77, "missingEndpoints": 1, "coverage": "208.1%" }, "PROVIDER": { "apiEndpoints": 136, "currentEndpoints": 199, "missingEndpoints": 1, "coverage": "146.3%" }, "PATIENT": { "apiEndpoints": 13, "currentEndpoints": 25, "missingEndpoints": 0, "coverage": "192.3%" }, "PARTNER": { "apiEndpoints": 0, "currentEndpoints": 6, "missingEndpoints": 0, "coverage": "Infinity%" }, "AFFILIATE": { "apiEndpoints": 1, "currentEndpoints": 6, "missingEndpoints": 0, "coverage": "600.0%" }, "NETWORK": { "apiEndpoints": 0, "currentEndpoints": 5, "missingEndpoints": 0, "coverage": "Infinity%" } } }, "missingEndpoints": { "PUBLIC": [ { "path": "/api/refresh-token", "method": "POST", "operationId": "refresh", "summary": "Refresh authentication token", "description": "Refresh an existing authentication token using a refresh token", "tags": [ "Authentication" ], "security": [], "requiresAuth": false, "parameters": { "path": [], "query": [], "body": [ { "name": "refresh_token", "type": "string", "format": null, "required": true, "description": "", "enum": null, "example": "eyJ0eXAiOiJKV1QiLCJhbGc...", "items": null, "properties": null } ], "header": [] }, "requestBody": { "required": true, "description": "", "content": { "application/json": { "schema": { "required": [ "refresh_token" ], "properties": { "refresh_token": { "type": "string", "example": "eyJ0eXAiOiJKV1QiLCJhbGc..." } }, "type": "object" }, "examples": {} } } }, "responses": { "200": { "description": "Token refreshed successfully", "content": { "application/json": { "schema": { "properties": { "accessToken": { "type": "string", "example": "eyJ0eXAiOiJKV1QiLCJhbGc..." }, "refreshToken": { "type": "string", "example": "eyJ0eXAiOiJKV1QiLCJhbGc..." }, "tokenType": { "type": "string", "example": "Bearer" } }, "type": "object" } } } }, "401": { "description": "Invalid refresh token", "content": { "application/json": { "schema": { "properties": { "message": { "type": "string", "example": "Invalid refresh token" } }, "type": "object" } } } } } } ], "PROVIDER": [ { "path": "/api/change-password", "method": "POST", "operationId": "updatePasswordAuth", "summary": "Update patient password", "description": "Update the password for an authenticated patient", "tags": [ "Patient Authentication" ], "security": [ { "bearerAuth": [] } ], "requiresAuth": true, "parameters": { "path": [], "query": [], "body": [ { "name": "current_password", "type": "string", "format": null, "required": true, "description": "", "enum": null, "example": "currentpassword", "items": null, "properties": null }, { "name": "new_password", "type": "string", "format": null, "required": true, "description": "", "enum": null, "example": "newpassword123", "items": null, "properties": null } ], "header": [] }, "requestBody": { "required": true, "description": "", "content": { "application/json": { "schema": { "required": [ "current_password", "new_password" ], "properties": { "current_password": { "type": "string", "example": "currentpassword" }, "new_password": { "type": "string", "example": "newpassword123" } }, "type": "object" }, "examples": {} } } }, "responses": { "200": { "description": "Password updated successfully", "content": { "application/json": { "schema": { "properties": { "message": { "type": "string", "example": "Password updated successfully" } }, "type": "object" } } } }, "400": { "description": "Current password is incorrect", "content": { "application/json": { "schema": { "properties": { "message": { "type": "string", "example": "Current password is incorrect" } }, "type": "object" } } } }, "401": { "description": "Unauthenticated" }, "422": { "description": "Validation error" } } } ], "PATIENT": [], "PARTNER": [], "AFFILIATE": [], "NETWORK": [] }, "recommendations": [ { "authType": "PUBLIC", "action": "Implement 1 missing PUBLIC endpoints", "priority": "MEDIUM" }, { "authType": "PROVIDER", "action": "Implement 1 missing PROVIDER endpoints", "priority": "HIGH" } ] }