Evaluación de severidad manual
POST /severity-assessment/manual calcula una puntuación de severidad a partir de respuestas de cuestionarios suministradas por clínicos o pacientes únicamente no se requiere imagen. Úsalo para sistemas de puntuación que son intrínsecamente basados en cuestionarios o cuando una imagen no está disponible. Los sistemas de puntuación compatibles con manual se señalan en la respuesta de GET /questionnaires.
Petición
- Python
- JavaScript
- cURL
import requests
base_url = "<base_url>"
url = f"{base_url}/severity-assessment/manual"
# bodySite, scoringSystem code, and questionnaireResponse.item are discovered from
# helper endpoints at integration time see "Shared schema".
json_payload = {
"bodySite": "<body_site_code>",
"knownCondition": {
"conclusion": { "text": "<plain-text condition>" }
},
"scoringSystem": {
"<scoring_system_code>": {
"questionnaireResponse": {
"item": { "<item_code>": "<answer_value>" }
}
}
}
}
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer <access_token>"
}
response = requests.post(url, json=json_payload, headers=headers)
result = response.json()
const baseUrl = "<base_url>";
// bodySite, scoringSystem code, and questionnaireResponse.item are discovered from
// helper endpoints at integration time see "Shared schema".
const json_payload = {
bodySite: "<body_site_code>",
knownCondition: { conclusion: { text: "<plain-text condition>" } },
scoringSystem: {
"<scoring_system_code>": {
questionnaireResponse: {
item: { "<item_code>": "<answer_value>" },
},
},
},
};
const response = await fetch(`${baseUrl}/severity-assessment/manual`, {
method: "POST",
headers: {
"Content-Type": "application/json",
Authorization: "Bearer <access_token>",
},
body: JSON.stringify(json_payload),
});
const result = await response.json();
# Replace placeholders with values discovered from the helper endpoints
# (see "Shared schema" for body-site, scoring-system, and item).
curl -X POST "<base_url>/severity-assessment/manual" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <access_token>" \
-d '{
"bodySite": "<body_site_code>",
"knownCondition": { "conclusion": { "text": "<plain-text condition>" } },
"scoringSystem": {
"<scoring_system_code>": {
"questionnaireResponse": {
"item": { "<item_code>": "<answer_value>" }
}
}
}
}'
Campos de la petición
bodySite(requerido para algunos sistemas de puntuación) véase Sitio corporal.knownCondition.conclusion.text(requerido) véase Condición conocida.scoringSystem.<code>.questionnaireResponse.itemvéase Sistema de puntuación (scoringSystemyquestionnaireResponse). Tenga en cuenta queGET /questionnairesseñala qué sistemas de puntuación admiten envío manual.
La cabecera Authorization es el token de portador estándar; véase Cabecera de autenticación.
Respuesta
La respuesta sigue el sobre de respuesta FHIR compartido; la carga útil específica del manual se encuentra bajo patientEvolution:
{
"patientEvolution": {
"<scoring_system_code>": {
"score": {
"value": 2,
"severity": {
"value": 1,
"interpretations": [
// Bucket boundaries and labels are defined per scoring system;
// see GET /questionnaires?code=<scoring_system_code> for the full table.
{ "min": 0.0, "max": 2.0, "text": "<bucket_label>", "coding": [{ "code": 1, "display": "low" }] },
{ "min": 2.0, "max": 4.0, "text": "<bucket_label>", "coding": [{ "code": 2, "display": "moderate" }] }
]
}
}
}
}
}
Campo por campo
patientEvolution.<scoring_system_code>.score.valuepuntuación total calculada a partir de las respuestas del cuestionario.patientEvolution.<scoring_system_code>.score.severity.valuecategoría de intensidad de severidad:1(baja),2(moderada),3(alta).patientEvolution.<scoring_system_code>.score.severity.interpretations[]la tabla de búsqueda que utilizó la API para derivarseverity.value. Cada entrada define un rango[min, max), eltextlegible por humanos (la etiqueta de la categoría tal como la define el sistema de puntuación) y un array decodingque vincula la categoría al código de intensidad.