Reasoning
Reasoning explains what the assistant knew at a turn boundary and why it asked what it asked. It is a clinician- and audit-facing view, not something to show a patient mid-conversation.
GET /conversations/{conversation_id}/turns/{turn_id}/reasoningAvailable for completed turns. Response: 200 OK with a Reasoning object.
cURL
curl "https://api.infermedica.com/api/ct/v2/conversations/68d9a84d-711c-4a55-a9dd-da6363e58e38/turns/a1b2c3d4-0000-0000-0000-000000000000/reasoning" \
-H "Authorization: Bearer <token>"JSON
{
"turn_id": "a1b2c3d4-0000-0000-0000-000000000000",
"conditions": [
{
"id": "c_123",
"probability": 0.42,
"name": "Migraine",
"common_name": "Migraine"
}
],
"evidence": [
{ "name": "Headache", "state": "present" }
],
"summary": "Headache is currently the strongest reported evidence, so the next question focuses on duration."
}| Field | Type | Description |
|---|---|---|
turn_id | UUID | The turn this reasoning describes. |
conditions | ReasoningCondition[] | Conditions considered at the turn boundary, with the probability held at that moment. |
evidence | ReasoningEvidence[] | Evidence — matched or unmatched — visible at the turn boundary. |
summary | string or null | Free-text rationale summary when available. |
Because the values are snapshots taken at the turn boundary, comparing reasoning across consecutive turns shows how the differential moved as evidence accumulated — useful for review screens and for explaining an assessment after the fact.
evidence here is deliberately lighter than assessment evidence: a label and a state, covering both matched and unmatched items.