API ReferenceapiclinicalPOST /v1/protocol-engine/evaluate

POST /v1/protocol-engine/evaluate

Service: clinical · operationId: (none)

Required scopes

(no scope declared — review service config)

Request body

{
  "type": "object",
  "properties": {
    "patient_id": {
      "type": "string",
      "minLength": 1
    },
    "brand_id": {
      "type": "string",
      "minLength": 1
    },
    "protocol_id": {
      "type": "string",
      "minLength": 1
    },
    "medications": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "current_week": {
      "type": "integer",
      "minimum": 1,
      "maximum": 8
    }
  },
  "required": [
    "patient_id",
    "brand_id",
    "protocol_id"
  ]
}

Responses

200 Protocol eligibility evaluation result

{
  "type": "object",
  "properties": {
    "protocol_id": {
      "type": "string"
    },
    "protocol_name": {
      "type": "string"
    },
    "eligible": {
      "type": "boolean"
    },
    "match_score": {
      "type": "number"
    },
    "matched_biomarkers": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "missing_biomarkers": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "contraindication_hits": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "rule_id": {
            "type": "string"
          },
          "medication_code": {
            "type": "string"
          },
          "medication_name": {
            "type": "string"
          },
          "protocol_category": {
            "type": "string"
          },
          "severity": {
            "type": "string",
            "enum": [
              "absolute",
              "relative",
              "caution"
            ]
          },
          "reason": {
            "type": "string"
          },
          "alternatives": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "rule_id",
          "medication_code",
          "medication_name",
          "protocol_category",
          "severity",
          "reason",
          "alternatives"
        ]
      }
    },
    "phase": {
      "type": "object",
      "properties": {
        "week": {
          "type": "number"
        },
        "total_weeks": {
          "type": "number"
        },
        "name": {
          "type": "string"
        },
        "description": {
          "type": "string"
        }
      },
      "required": [
        "week",
        "total_weeks",
        "name",
        "description"
      ]
    },
    "parameters": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "value": {
            "type": "number"
          },
          "unit": {
            "type": "string"
          },
          "derived_from": {
            "type": "string"
          },
          "rationale": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "value",
          "unit",
          "derived_from",
          "rationale"
        ]
      }
    }
  },
  "required": [
    "protocol_id",
    "protocol_name",
    "eligible",
    "match_score",
    "matched_biomarkers",
    "missing_biomarkers",
    "contraindication_hits",
    "phase",
    "parameters"
  ]
}

404 Protocol not found

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    },
    "message": {
      "type": "string"
    }
  },
  "required": [
    "error",
    "message"
  ]
}

412 Precondition failed (no biomarkers for patient)

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    },
    "message": {
      "type": "string"
    }
  },
  "required": [
    "error",
    "message"
  ]
}

Example

curl -X POST https://clinical.platform.loop.health/v1/protocol-engine/evaluate \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'