Concepts

The goal of this endpoint is to return basic data like name, common_name, and type about all concepts stored in the content database.

Concepts are composed of:

  • conditions
  • symptoms
  • risk factors
  • lab tests

Filtering

There is a possibility to display only concepts with expected ids and types.

Filtering by ids

Example: /concepts?ids=c_1,s_1

Output:

              
                {
                  "id": "c_1",
                  "type": "condition",
                  "name": "Achalasia",
                  "common_name": "Achalasia"
                },
                {
                  "id": "s_1",
                  "type": "symptom",
                  "name": "Mouth ulcers",
                  "common_name": "Mouth ulcers"
                }
              
            

Filtering by types

Supported types:

  • condition
  • symptom
  • risk_factor
  • lab_test

Example: /concepts?types=symptom,condition would return all symptoms and conditions.

Filtering by types and ids

Example: /concepts?ids=c_1,c_2,s_3&types=condition would return only list with concepts c_1, c_2.

Output:

              
                {
                  "id": "c_1",
                  "type": "condition",
                  "name": "Achalasia",
                  "common_name": "Achalasia"
                },
                {
                  "id": "c_2",
                  "type": "condition",
                  "name": "Atopic dermatitis",
                  "common_name": "Eczema"
                }
              
            

Getting a single concept by id

Similar as in endpoints /symptoms, /conditions, /risk_factors, and /lab_tests there is a possibility to get exactly one concept by providing the id in the URL path.

Example: /concepts/c_1 would return concept with id c_1

Output:

              
                {
                  "id": "c_1",
                  "type": "condition",
                  "name": "Achalasia",
                  "common_name": "Achalasia"
                }