ToolAssay

Ottawa Heart Failure Risk Scale (OHFRS; Stiell 2013 derivation)

Ottawa Heart Failure Risk Scale (OHFRS; Stiell 2013 derivation). Ten caller-assigned flags (stroke/TIA 1, intubation 2, arrival HR >=110 2, arrival SaO2 <90% 1, walk-test HR >=110 or unable 1, new ischemic ECG 2, urea >=12 mmol/L 1, CO2 >=35 mmol/L 2, troponin at MI level 2, NT-proBNP >=5000 ng/L 1); integer points, max 15. Derivation SAE risk 2.8% to 89.0%. Not a medical device, not a disposition or discharge order, not EHMRG. magent does not walk the patient or read the ECG.

Asked 1.4x its listed price for its own exampleour last check, 2026-09-28
1 of 1checks answered this week
467 msmedian answer time
$0.005listed price per call
$0.007price it asked us

Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.

Endpoint

POST https://api.magentlab.com/api/calc/ohfrs

CategoryEverything else
Provider hostapi.magentlab.com
Networkseip155:8453
Payment schemesexact
Self-reported calls, 30 days0 from 0 payers (the provider's figure, not ours)

Our checks, last 30 days

DayResultHTTPAskedTime
2026-09-28 valid payment request 402$0.007 467 ms

Example input (from the provider)

{
  "body": {
    "items": [
      {
        "co2_ge_35_mmol_l": false,
        "history_stroke_or_tia": false,
        "hr_arrival_ge_110": false,
        "intubation_respiratory_distress": false,
        "new_ischemic_ecg": false,
        "ntprobnp_ge_5000": false,
        "sao2_lt_90_arrival": false,
        "troponin_mi_level": false,
        "urea_ge_12_mmol_l": false,
        "walk_test_hr_ge_110_or_unable": false
      },
      {
        "co2_ge_35_mmol_l": false,
        "history_stroke_or_tia": false,
        "hr_arrival_ge_110": false,
        "intubation_respiratory_distress": false,
        "new_ischemic_ecg": false,
        "ntprobnp_ge_5000": false,
        "sao2_lt_90_arrival": false,
        "troponin_mi_level": false,
        "urea_ge_12_mmol_l": false,
        "walk_test_hr_ge_110_or_unable": false
      }
    ]
  },
  "method": "POST",
  "type": "http"
}

Promised output schema (from the provider)

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "body": {
          "additionalProperties": false,
          "properties": {
            "items": {
              "items": {
                "properties": {
                  "co2_ge_35_mmol_l": {
                    "description": "Serum CO2 >=35 mmol/L as assigned by the caller after applying the Stiell 2013 cutoff (2 points if true). true or false. magent does not assay CO2.",
                    "type": "boolean"
                  },
                  "history_stroke_or_tia": {
                    "description": "History of stroke or TIA as assigned by the caller (Stiell 2013; 1 point if true). true or false. magent does not take the history.",
                    "type": "boolean"
                  },
                  "hr_arrival_ge_110": {
                    "description": "Heart rate on ED arrival >=110 as assigned by the caller after applying the Stiell 2013 cutoff (2 points if true). true or false. magent does not measure heart rate.",
                    "type": "boolean"
                  },
                  "intubation_respiratory_distress": {
                    "description": "Intubation for respiratory distress as assigned by the caller (Stiell 2013; 2 points if true). true or false.",
                    "type": "boolean"
                  },
                  "new_ischemic_ecg": {
                    "description": "New ischemic ECG changes as assigned by the caller (Stiell 2013 derivation; 2 points if true). true or false. magent does not interpret the ECG.",
                    "type": "boolean"
                  },
                  "ntprobnp_ge_5000": {
                    "description": "NT-proBNP >=5000 ng/L as assigned by the caller after applying the Stiell 2013 cutoff (1 point if true). true or false. magent does not assay NT-proBNP.",
                    "type": "boolean"
                  },
                  "sao2_lt_90_arrival": {
                    "description": "Oxygen saturation <90% on ED arrival as assigned by the caller after applying the Stiell 2013 cutoff (1 point if true). true or false. magent does not measure saturation.",
                    "type": "boolean"
                  },
                  "troponin_mi_level": {
                    "description": "Troponin I or T elevated to MI level as assigned by the caller (Stiell 2013; 2 points if true). true or false. magent does not assay troponin.",
                    "type": "boolean"
                  },
                  "urea_ge_12_mmol_l": {
                    "description": "Urea >=12 mmol/L as assigned by the caller after applying the Stiell 2013 cutoff (1 point if true). true or false. magent does not assay urea.",
                    "type": "boolean"
                  },
                  "walk_test_hr_ge_110_or_unable": {
                    "description": "Heart rate >=110 during the 3-minute walk test, or unable to perform the walk test, as assigned by the caller after ED intervention (Stiell 2013; 1 point if true). true or false. magent does not walk the patient.",
                    "type": "boolean"
                  }
                },
                "required": [
                  "history_stroke_or_tia",
                  "intubation_respiratory_distress",
                  "hr_arrival_ge_110",
                  "sao2_lt_90_arrival",
                  "walk_test_hr_ge_110_or_unable",
                  "new_ischemic_ecg",
                  "urea_ge_12_mmol_l",
                  "co2_ge_35_mmol_l",
                  "troponin_mi_level",
                  "ntprobnp_ge_5000"
                ],
                "type": "object"
              },
              "maxItems": 25,
              "minItems": 1,
              "type": "array"
            }
          },
          "required": [
            "items"
          ],
          "type": "object"
        },
        "headers": {
          "additionalProperties": {
            "type": "string"
          },
          "type": "object"
        },
        "method": {
          "const": "POST",
          "type": "string"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method"
      ],
      "type": "object"
    },
    "output": {
      "properties": {
        "example": {
          "type": "object"
        },
        "type": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}

This page as JSON