Specialist and channel recommender

Please note that the /recommend_specialist endpoint is an optional feature and its logic is linked with the /triage endpoint.

The /recommend_specialist endpoint extends the /triage recommendation by providing the most appropriate specialist and channel as a part of next step advice. Similar to the /triage endpoint, the /recommend_specialist takes into account not only the severity of the most likely conditions, but also a presence of alarming symptoms or risk factors. This allows the inference engine to guide patients to a specialist who may help in differentiating potentially serious diagnoses.

Specialist and channel recommendations are not available in cases of “emergency” or “emergency ambulance” triage levels.

Request

The /recommend_specialist endpoint responds to POST requests and accepts the same JSON object as the /diagnosis and /triage endpoints.

curl "https://api.infermedica.com/v3/recommend_specialist" \
  -X "POST" \
  -H "App-Id: XXXXXXXX" -H "App-Key: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
  -H "Content-Type: application/json" -d '{
        "sex" : "male",
        "age" : {"value": 30},
        "evidence" : [ 
                {"id": "s_1193", "choice_id": "present"},
                {"id": "s_488", "choice_id": "present"},
                {"id": "s_418", "choice_id": "present"}
        ]
}'

Response

The response contains the following items:

  • the id of the recommended specialty
  • a recommended specialist
  • a channel recommendation
{
        "recommended_specialist": {
          "id": "sp_17",
          "name": "Neurologist"
        },
        "recommended_channel": "personal_visit"
}

Specialty mapping

The /recommend_specialist allows for the remapping of specified specialties in a many-to-one fashion. This is useful when some specialties are not appropriate for the regional, regulatory or clinical setting (or unwanted for any other reason).

The specialty mapping functionality does more than just replacing specialties with other specialties: the mapping is taken into account in the specialist recommender algorithm to provide the best possible experience.

Please note that adding new specialties or changing the names of existing ones is not supported.

Below is an example of mapping two categories to another single one:

curl "https://api.infermedica.com/v3/recommend_specialist" \
  -X "POST" \
  -H "App-Id: XXXXXXXX" -H "App-Key: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
  -H "Content-Type: application/json" -d '{
        "sex" : "male",
        "age" : {"value": 30},
        "evidence" : [ 
                {"id": "s_1193", "choice_id": "present"},
                {"id": "s_488", "choice_id": "present"},
                {"id": "s_418", "choice_id": "present"}
        ],
        "extras": { 
          "specialist_mapping": {
            "sp_17": "sp_1",
            "sp_14": "sp_1"
          }
        }
}'
{
        "recommended_specialist": {
            "id": "sp_1",
            "name": "General Practitioner"
        },
        "recommended_channel": "personal_visit"
}'

Specialty list for conditions

The /conditions endpoint allows additional parameter of “include_specialists=true” which expands the response for that endpoint with a specialists list. This expansion is helpful for identifying the default mapping of specialties to available conditions.

curl "https://api.infermedica.com/v3/conditions?age.value=20&include_specialists=true" \
  -X "GET" \
  -H "App-Id: XXXXXXXX" -H "App-Key: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
  -H "Content-Type: application/json" -d
[
    {
        "id": "c_926",
        "name": "ACE inhibitor-induced cough",
        "common_name": "ACE inhibitor-induced cough",
        "sex_filter": "both",
        "categories": [
            "Cardiology"
        ],
        "specialists": [
            {
                "id": "sp_1",
                "name": "General Practitioner"
            }
        ],
        "prevalence": "very_rare",
        "acuteness": "chronic",
        "severity": "mild",
        "extras": {
            "icd10_code": "R05, T88.7, Y52.4",
            "hint": "Your symptoms may be due to medications you have used. Please report this symptom to your GP."
        },
        "triage_level": "consultation",
        "recommended_channel": "audio_teleconsultation"
    },

...

List of channel recommendation types

  • Personal visit (In-person visit)
  • Video teleconsultation (Video consultation)
  • Audio teleconsultation (Telephone or any other consultation with audio only)
  • Text teleconsultation (Chat)

List of specialists

  • Allergologist
  • Angiologist
  • Cardiologist
  • Dentist
  • Dermatologist
  • Diabetologist
  • Endocrinologist
  • ENT doctor
  • Gastroenterologist
  • General Practitioner
  • Gynecologist
  • Hematologist
  • Infectiologist
  • Internal Diseases Specialist
  • Neonatologist
  • Nephrologist
  • Neurologist
  • Oncologist
  • Ophthalmologist
  • Orthopedist
  • Pediatrician
  • Psychiatrist
  • Pulmonologist
  • Rheumatologist
  • Surgeon
  • Toxicologist
  • Urologist