Skip to Content
ServicesAPI GatewayAPI Endpoints

API Endpoints

Health Checks

GET /healthy

Simple health check returning {"status": "healthy"}.

Response:

{ "status": "healthy" }

GET /health

Detailed health check with database connectivity status.

Response:

{ "status": "healthy", "database": "connected" }

AI/Diagnosis Endpoints

All AI endpoints accept AnamnesisRequest (patient data) and return structured predictions. These endpoints proxy requests to the AI Service.

POST /api/ai/predict_diagnosis

Get disease diagnosis predictions with probabilities.

Request Body: AnamnesisRequest

Response: DiagnosisPrediction

{ "diagnoses": [ { "disease": "Psoriasis", "probability": 0.85, "confidence": "high" } ] }

Error Responses:

  • 400 Bad Request - Validation errors in request data
  • 502 Bad Gateway - AI service unavailable or error

POST /api/ai/red_flags

Check for urgent medical conditions requiring immediate attention.

Request Body: AnamnesisRequest

Response: RedFlags

{ "hasRedFlags": true, "flags": ["rapid_growth", "bleeding"], "urgency": "high" }

POST /api/ai/image_validity

Validate image quality and suitability for diagnosis.

Request Body: ImageValidityRequest

{ "imageUrl": "https://storage.blob.core.windows.net/...", "imageData": "base64_encoded_image" }

Response: ImageValidityResponse

{ "isValid": true, "score": 0.92, "issues": [] }

POST /api/ai/triage

Assess patient urgency and priority level.

Request Body: AnamnesisRequest

Response: TriageResponse

{ "priority": "high", "urgencyScore": 8.5, "recommendedAction": "physician_review_within_24h" }

POST /api/ai/next_question

Get next adaptive questionnaire question based on previous answers.

Request Body: AnamnesisRequest

Response: NextQuestionResponse

{ "questionId": "symptom_duration", "questionText": "How long have you had this symptom?", "questionType": "multiple_choice", "options": ["<1 week", "1-4 weeks", ">1 month"] }

Common Endpoints

POST /api/common/store_images

Upload base64-encoded images to Azure Blob Storage.

Request Parameters:

  • image (string, required): Base64-encoded image data
  • filetype (string, optional): MIME type (e.g., ā€œimage/jpegā€)
  • tenant (string, optional): Tenant identifier (default: ā€œdefaultā€)

Request Example:

{ "image": "data:image/jpeg;base64,/9j/4AAQSkZJRg...", "filetype": "image/jpeg", "tenant": "maccabi" }

Response: ImageUploadResponse

{ "imageName": "maccabi1697123456.789", "url": "https://dermadetect.blob.core.windows.net/dermadetect-images/maccabi1697123456.789" }

Error Responses:

  • 400 Bad Request - Invalid file type
  • 500 Internal Server Error - Azure storage not configured or upload failed
Last updated on