# STOP-Bang OSA Screening Score (Chung 2008)

> STOP-Bang OSA Screening Score (Chung 2008) is a paid API for AI agents from api.magentlab.com, paid per call via x402, $0.005/call, status unknown (last checked 2026-09-15).

Computes the Chung 2008 Appendix 2 STOP-Bang obstructive sleep apnea screening score (0–8) from four caller-assigned STOP flags and four calculated BANG items, returning low-risk (0–2) or elevated-risk (≥3) bands.

## Facts

- Endpoint: GET https://api.magentlab.com/api/calc/stop_bang
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/stop-bang-osa-screening-score-chung-2008-f167453f
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_n0DwZNfvbaM1ErvnU9rFm

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability stop-bang-osa-screening-score-chung-2008-f167453f
```

Example prompt: Score my patient on the Chung 2008 STOP-Bang: he snores loudly through closed doors, reports daytime tiredness, no observed apnea, no hypertension, BMI 38, age 55, neck circumference 43 cm, male — what's his risk band?

## When to prefer this

Use this endpoint when you need a fast, deterministic STOP-Bang score following exactly the Chung 2008 Appendix 2 two-band classification (low ≤2, elevated ≥3) for clinical triage, pre-operative screening, or prior-authorization workflows. Prefer it over manual calculation to avoid boundary-condition errors (e.g., BMI exactly 35 does not score). Note: this is not the Chung 2012 three-tier variant and is not a medical device or a sleep-study order generator.

## Known failure modes

- Missing required query parameters (snoring, tired, observed_apnea, hypertension, bmi_kg_m2, age, neck_cm, sex) → 400 bad request
- Age out of range 18–120 → validation error
- BMI out of range 10–80 → validation error
- Neck circumference out of range 20–80 → validation error
- Invalid sex enum (not 'male' or 'female') → validation error
- Payment not provided or insufficient → 402 Payment Required

## How this service works

Chung 2008 Appendix 2 STOP-Bang OSA screen. Four caller-assigned STOP flags (loud snoring heard through closed doors, daytime tiredness, observed stop-breathing, hypertension) plus computed BANG: BMI >35, age >50, neck >40 cm, male; each 1; max 8. BMI 35, age 50, and neck 40 cm do not score. Returns bands 0-2 and >=3. Not Chung 2012 three-tier, not a medical device, and not a sleep-study order.

## Output

Returns the integer STOP-Bang total score (0–8) and the corresponding risk band: low risk (score 0–2) or elevated risk (score ≥3), following Chung 2008 Appendix 2 thresholds. BANG items are computed server-side from BMI, age, neck, and sex using strict greater-than cutoffs (>35, >50, >40 cm); STOP items are caller-supplied booleans.

## Request schema (JSON Schema)

```json
{
 "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": [
      "snoring",
      "tired",
      "observed_apnea",
      "hypertension",
      "bmi_kg_m2",
      "age",
      "neck_cm",
      "sex"
     ],
     "properties": {
      "age": {
       "type": "integer",
       "description": "Age in years (18-120). Chung 2008 Appendix 2 BANG: scores 1 when >50. Age 50 does not score."
      },
      "sex": {
       "enum": [
        "female",
        "male"
       ],
       "type": "string",
       "description": "female or male. Chung 2008 Appendix 2 BANG: male scores 1. Female scores 0."
      },
      "tired": {
       "type": "boolean",
       "description": "Daytime tiredness, fatigue, or sleepiness (Chung 2008 Appendix 2 STOP). true or false. Caller-assigned. 1 point if true."
      },
      "neck_cm": {
       "type": "number",
       "description": "Neck circumference in cm (20-80). Chung 2008 Appendix 2 BANG: scores 1 when >40. Neck 40 does not score."
      },
      "snoring": {
       "type": "boolean",
       "description": "Loud snoring heard through closed doors (Chung 2008 Appendix 2 STOP). true or false. Caller-assigned. 1 point if true."
      },
      "bmi_kg_m2": {
       "type": "number",
       "description": "Body-mass index in kg/m^2 (10-80). Chung 2008 Appendix 2 BANG: scores 1 when >35. BMI 35 does not score. Caller-supplied; magent does not compute BMI from height and weight."
      },
      "hypertension": {
       "type": "boolean",
       "description": "Has or is being treated for high blood pressure (Chung 2008 Appendix 2 STOP). true or false. Caller-assigned. 1 point if true."
      },
      "observed_apnea": {
       "type": "boolean",
       "description": "Anyone observed the patient stop breathing during sleep (Chung 2008 Appendix 2 STOP). true or false. Caller-assigned. 1 point if true."
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ]
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "path": "/api/calc/stop_bang",
  "count": 2,
  "items": [
   {
    "sex": "female",
    "score": 0,
    "tired": false,
    "formula": "stop_bang",
    "neck_cm": 38,
    "snoring": false,
    "citation": {
     "id": "chung-2008",
     "doi": "10.1097/ALN.0b013e31816d83e4",
     "pmid": "18431116",
     "title": "STOP questionnaire: a tool to screen patients for obstructive sleep apnea",
     "source": "Anesthesiology. 2008;108(5):812-821",
     "authors": "Chung F, Yegneswaran B, Liao P, et al."
    },
    "age_years": 40,
    "bmi_kg_m2": 30,
    "max_score": 8,
    "components": [
     {
      "factor": "snoring",
      "points": 0,
      "present": false
     },
     {
      "factor": "tired",
      "points": 0,
      "present": false
     },
     {
      "factor": "observed_apnea",
      "points": 0,
      "present": false
     },
     {
      "factor": "hypertension",
      "points": 0,
      "present": false
     },
     {
      "value": 30,
      "factor": "bmi_gt_35",
      "points": 0,
      "present": false
     },
     {
      "value": 40,
      "factor": "age_gt_50",
      "points": 0,
      "present": false
     },
     {
      "value": 38,
      "factor": "neck_gt_40",
      "points": 0,
      "present": false
     },
     {
      "factor": "male",
      "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.",
    "hypertension": false,
    "observed_apnea": false,
    "stop_bang_band": "0-2",
    "formula_expression": "STOP-Bang = snoring + tired + observed_apnea + hypertension + (bmi_kg_m2>35) + (age>50) + (neck_cm>40) + male; each 1 if true; max 8; bands 0-2 / >=3"
   },
   {
    "sex": "female",
    "score": 0,
    "tired": false,
    "formula": "stop_bang",
    "neck_cm": 38,
    "snoring": false,
    "citation": {
     "id": "chung-2008",
     "doi": "10.1097/ALN.0b013e31816d83e4",
     "pmid": "18431116",
     "title": "STOP questionnaire: a tool to screen patients for obstructive sleep apnea",
     "source": "Anesthesiology. 2008;108(5):812-821",
     "authors": "Chung F, Yegneswaran B, Liao P, et al."
    },
    "age_years": 40,
    "bmi_kg_m2": 30,
    "max_score": 8,
    "components": [
     {
      "factor": "snoring",
      "points": 0,
      "present": false
     },
     {
      "factor": "tired",
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/stop-bang-osa-screening-score-chung-2008-f167453f/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.magentlab.com](https://www.zero.xyz/host/api.magentlab.com/llms.txt)
