{"uid":"cap_gq3T8vzEj2d6GBM_iXyzU","slug":"ottawa-heart-failure-risk-scale-ohfrs-calculator-67a4b186","name":"Ottawa Heart Failure Risk Scale (OHFRS) Calculator","description":"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.","url":"https://api.magentlab.com/api/calc/ohfrs","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET","HEAD","DELETE"],"type":"string"},"headers":{"type":"object","additionalProperties":{"type":"string"}},"queryParams":{"type":"object","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"],"properties":{"co2_ge_35_mmol_l":{"type":"boolean","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."},"new_ischemic_ecg":{"type":"boolean","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."},"ntprobnp_ge_5000":{"type":"boolean","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."},"hr_arrival_ge_110":{"type":"boolean","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."},"troponin_mi_level":{"type":"boolean","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."},"urea_ge_12_mmol_l":{"type":"boolean","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."},"sao2_lt_90_arrival":{"type":"boolean","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."},"history_stroke_or_tia":{"type":"boolean","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."},"walk_test_hr_ge_110_or_unable":{"type":"boolean","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."},"intubation_respiratory_distress":{"type":"boolean","description":"Intubation for respiratory distress as assigned by the caller (Stiell 2013; 2 points if true). true or false."}}}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object"}}}}},"responseSchema":{"type":"json","example":{"path":"/api/calc/ohfrs","count":2,"items":[{"score":0,"formula":"ohfrs","citation":{"id":"stiell-2013","doi":"10.1111/acem.12056","pmid":"23570474","title":"A risk scoring system to identify emergency department patients with heart failure at high risk for serious adverse events","source":"Acad Emerg Med. 2013;20(1):17-26","authors":"Stiell IG, Clement CM, Brison RJ, et al."},"max_score":15,"components":[{"factor":"history_stroke_or_tia","points":0,"present":false},{"factor":"intubation_respiratory_distress","points":0,"present":false},{"factor":"hr_arrival_ge_110","points":0,"present":false},{"factor":"sao2_lt_90_arrival","points":0,"present":false},{"factor":"walk_test_hr_ge_110_or_unable","points":0,"present":false},{"factor":"new_ischemic_ecg","points":0,"present":false},{"factor":"urea_ge_12_mmol_l","points":0,"present":false},{"factor":"co2_ge_35_mmol_l","points":0,"present":false},{"factor":"troponin_mi_level","points":0,"present":false},{"factor":"ntprobnp_ge_5000","points":0,"present":false}],"disclaimer":"Not a medical device. Deterministic published-formula or published-code output for autonomous agents. A licensed clinician remains responsible for patient care and billing submissions.","formula_expression":"OHFRS = history_stroke_or_tia(1) + intubation_respiratory_distress(2) + hr_arrival_ge_110(2) + sao2_lt_90_arrival(1) + walk_test_hr_ge_110_or_unable(1) + new_ischemic_ecg(2) + urea_ge_12_mmol_l(1) + co2_ge_35_mmol_l(2) + troponin_mi_level(2) + ntprobnp_ge_5000(1); Stiell 2013 derivation; max 15; SAE risk varied from 2.8% to 89.0%; admission thresholds of total score 1, 2, or 3 had sensitivities 95.2 / 80.6 / 64.5%"},{"score":0,"formula":"ohfrs","citation":{"id":"stiell-2013","doi":"10.1111/acem.12056","pmid":"23570474","title":"A risk scoring system to identify emergency department patients with heart failure at high risk for serious adverse events","source":"Acad Emerg Med. 2013;20(1):17-26","authors":"Stiell IG, Clement CM, Brison RJ, et al."},"max_score":15,"components":[{"factor":"history_stroke_or_tia","points":0,"present":false},{"factor":"intubation_respiratory_distress","points":0,"present":false},{"factor":"hr_arrival_ge_110","points":0,"present":false},{"factor":"sao2_lt_90_arrival","points":0,"present":false},{"factor":"walk_test_hr_ge_110_or_unable","points":0,"present":false},{"factor":"new_ischemic_ecg","points":0,"present":false},{"factor":"urea_ge_12_mmol_l","points":0,"present":false},{"factor":"co2_ge_35_mmol_l","points":0,"present":false},{"factor":"troponin_mi_level","points":0,"present":false},{"factor":"ntprobnp_ge_5000","points":0,"present":false}],"disclaimer":"Not a medical device. Deterministic published-formula or published-code output for autonomous agents. A licensed clinician remains responsible for patient care and billing submissions.","formula_expression":"OHFRS = history_stroke_or_tia(1) + intubation_respiratory_distress(2) + hr_arrival_ge_110(2) + sao2_lt_90_arrival(1) + walk_test_hr_ge_110_or_unable(1) + new_ischemic_ecg(2) + urea_ge_12_mmol_l(1) + co2_ge_35_mmol_l(2) + troponin_mi_level(2) + ntprobnp_ge_5000(1); Stiell 2013 derivation; max 15; SAE risk varied from 2.8% to 89.0%; admission thresholds of total score 1, 2, or 3 had sensitivities 95.2 / 80.6 / 64.5%"}]}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.005","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.005/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.005","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.005","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_J3JGVrbBdx89QhpRRO5k5","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.005","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Computes the Ottawa Heart Failure Risk Scale (OHFRS; Stiell 2013) integer score and associated serious adverse event risk from ten caller-assigned clinical flags for ED heart failure patients.","exampleAgentPrompt":"Calculate the Ottawa Heart Failure Risk Scale score for a patient who has no prior stroke or TIA, no prior intubation, arrival heart rate not >=110, SaO2 not <90%, walk-test heart rate not >=110, no new ischemic ECG changes, urea not >=12, CO2 not >=35, troponin not at MI level, and NT-proBNP not >=5000 — what's their OHFRS score and SAE risk?","exampleUseCases":[{"title":"ED triage risk score for heart failure","prompt":"I have a heart failure patient in the ED: no stroke/TIA history, no prior intubation, arrival HR was 118 so that's a yes, SaO2 was 88% on arrival so yes, walk test HR went to 115 so yes, new ischemic ECG changes present, urea is 14 mmol/L so yes, CO2 is 32 so no, troponin is not at MI level, and NT-proBNP is 6200 ng/L so yes — what's their OHFRS score and estimated serious adverse event risk?"},{"title":"Low-risk heart failure discharge consideration","prompt":"My heart failure patient has all ten OHFRS flags negative — no stroke history, no prior intubation, HR under 110 on arrival, SaO2 fine, completed walk test under 110, no ischemic ECG changes, urea under 12, CO2 under 35, troponin normal, NT-proBNP under 5000. Can you compute their Ottawa Heart Failure Risk Scale score so I can see where they fall on the Stiell 2013 SAE risk range?"},{"title":"High-risk multilabel heart failure scoring","prompt":"Run the OHFRS on this patient: stroke history yes, prior intubation yes, arrival HR >=110 yes, SaO2 <90% yes, walk-test unable yes, new ischemic ECG yes, urea >=12 yes, CO2 <35 so no, troponin at MI level yes, NT-proBNP >=5000 yes — give me the total score and the corresponding serious adverse event risk percentage."}],"resultDescription":"Returns an integer OHFRS total score (0–15) and the corresponding Stiell 2013 derivation serious adverse event (SAE) risk percentage (ranging from approximately 2.8% to 89.0%), based on the ten Boolean clinical flags provided by the caller.","failureModes":["Missing any of the ten required Boolean query parameters returns a 400 or validation error","Non-boolean values for flag parameters cause schema validation failure","Network or service unavailability returns a 5xx error","Payment not included or insufficient USDC balance triggers x402 payment-required response"],"whenToPreferThis":"Use this endpoint when you need to compute the validated Stiell 2013 OHFRS integer score and SAE risk for an acute heart failure patient presenting to the emergency department. Prefer it over manual calculation to eliminate arithmetic errors. It is distinct from EHMRG and other heart failure tools. Requires that the calling system has already measured or interpreted each clinical parameter (vitals, labs, ECG, walk test) and can supply them as Boolean flags.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-15T01:19:00.805Z","isFirstParty":false}