Loading documentation

Access required

Your account doesn't have access to the documentation. Contact your administrator.

Sign out
Skip to main content

Fear-Avoidance Beliefs

Status: stable Category: fear_avoidance Added: 2026-04-20 Last reviewed: 2026-04-21

Summary

Trinity exposes the work subscale of the Fear-Avoidance Beliefs Questionnaire (FABQ-W). Seven items, each scored 06, summing to a 0–42 total. Higher scores indicate stronger fear-avoidance beliefs about work and a greater risk of work-related disability and delayed return to work.

⚠ Work subscale only

The published FABQ has two subscales: physical activity (FABQ-PA) and work (FABQ-W). Trinity implements only the work subscale despite the resource being named fear_avoidance_beliefs. If your integration expects physical- activity items (lifting, bending, exercise), they are not part of this endpoint.

To confirm: the /questions response for this resource contains seven items covering work-related beliefs only. There is no separate endpoint for FABQ-PA today.

Resource identity

FieldValue
Categoryfear_avoidance
Resourcefear_avoidance_beliefs
Instrument IDfear_avoidance_beliefs
Rubric version1.0.0
Path prefix/api/fear_avoidance/fear_avoidance_beliefs

Operations

OperationMethodPathContract
QuestionsGET/api/fear_avoidance/fear_avoidance_beliefs/questionspatterns-questions.md
ScorePOST/api/fear_avoidance/fear_avoidance_beliefs/scorepatterns-score.md

Items

Seven items from the work subscale, each on a 06 scale.

IDPrompt (paraphrased)
item_1My pain was caused by my work.
item_2My work aggravated my pain.
item_3I should not do my normal work with my present pain.
item_4My normal work makes or would make my pain worse.
item_5My work might harm my back.
item_6I should not do my normal work until my pain is treated.
item_7I do not think that I will be back to my normal work within 3 months.

Answer choices per item:

ValueLabel
0Completely disagree
1Disagree
2Slightly disagree
3Unsure
4Slightly agree
5Agree
6Completely agree

Note: Trinity's item IDs (item_1item_7) are flat; they do not preserve the original FABQ numbering (items 6, 7, 9, 10, 11, 12, and 15 in the full FABQ).

Scoring

FieldValue
Methodsimple_sum over all seven items.
Score range042.

Bands

BandRange (inclusive)Clinical meaning
low028Low fear-avoidance beliefs about work.
high2942Elevated fear-avoidance beliefs about work.

The 29 cutoff is the widely-cited FABQ-W threshold predicting extended work disability in musculoskeletal pain populations.

Required items

All seven items are required for a strict /score call.

Worked example

Every item answered with 4 ("slightly agree"). See quickstart.md for per-language scaffolding and patterns-score.md for the shared /score contract.

Send:

POST /api/fear_avoidance/fear_avoidance_beliefs/score HTTP/1.1
Host: engine.tripod-health.com
apikey: $ENGINE_API_KEY
Content-Type: application/json
X-Request-ID: docs-fear_avoidance_beliefs-score-basic

{
"responses": {
"item_1": 4, "item_2": 4, "item_3": 4, "item_4": 4,
"item_5": 4, "item_6": 4, "item_7": 4
}
}

Receive (200 OK):

{
"instrument": "fear_avoidance_beliefs",
"category": "fear_avoidance",
"finding": {
"algorithm_id": "fear_avoidance_beliefs",
"algorithm_version": "1.0.0",
"score": 28,
"band": "low",
"raw": {
"rubric_version": "1.0.0",
"responded_items": 7
},
"context": null,
"imputed": false,
"sd": null,
"prior_source": null
},
"confidence": {
"overall": 1,
"tier": "high",
"breakdown": {
"input_completeness": 1,
"imputation_variance": null,
"model_certainty": null
}
},
"recommendations": null,
"depth": "basic",
"catalog_version": "0.13.0",
"request_id": "docs-fear_avoidance_beliefs-score-basic",
"timestamp": "2026-04-21T23:14:59.255789+00:00"
}

Computation: 7 × 4 = 28low band at the upper edge (0–28). Shift every answer to 5: 7 × 5 = 35high band (29–42) — illustrating how close to the cutoff a common response pattern can sit.

Calling in your language

curl

curl -sS -X POST "https://engine.tripod-health.com/api/fear_avoidance/fear_avoidance_beliefs/score" \
-H "apikey: $ENGINE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"responses":{"item_1":4,"item_2":4,"item_3":4,"item_4":4,"item_5":4,"item_6":4,"item_7":4}}'

Python (requests)

# Uses the call() helper from quickstart.md.
responses = {f"item_{i}": 4 for i in range(1, 8)}
result = call("POST",
"/api/fear_avoidance/fear_avoidance_beliefs/score",
{"responses": responses})
print(result["finding"]["score"], result["finding"]["band"])

Node.js (native fetch)

// Uses the call() helper from quickstart.md.
const responses = Object.fromEntries(
Array.from({ length: 7 }, (_, i) => [`item_${i + 1}`, 4]),
);
const result = await call("POST",
"/api/fear_avoidance/fear_avoidance_beliefs/score", { responses });
console.log(result.finding.score, result.finding.band);

TypeScript

// Uses the typed call<T>() helper from quickstart.md.
const responses = Object.fromEntries(
Array.from({ length: 7 }, (_, i) => [`item_${i + 1}`, 4]),
);
const result = await call<ScoreResponse>(
"POST",
"/api/fear_avoidance/fear_avoidance_beliefs/score",
{ responses },
);

Go

// Uses the call() helper from quickstart.md.
responses := make(map[string]int, 7)
for i := 1; i <= 7; i++ {
responses[fmt.Sprintf("item_%d", i)] = 4
}
result, err := call("POST",
"/api/fear_avoidance/fear_avoidance_beliefs/score",
map[string]any{"responses": responses}, 3)
if err != nil {
panic(err)
}
finding := result["finding"].(map[string]any)
fmt.Printf("FABQ-W: %v (%v)\n", finding["score"], finding["band"])

Java

// Uses the call() helper from quickstart.md.
StringBuilder body = new StringBuilder("{\"responses\":{");
for (int i = 1; i <= 7; i++) {
if (i > 1) body.append(",");
body.append("\"item_").append(i).append("\":4");
}
body.append("}}");
String result = call("POST",
"/api/fear_avoidance/fear_avoidance_beliefs/score",
body.toString(), 3);
System.out.println(result);

C# (.NET HttpClient)

// Uses the Call() helper from quickstart.md.
var responses = Enumerable.Range(1, 7)
.ToDictionary(i => $"item_{i}", _ => 4);
var result = await Call(HttpMethod.Post,
"/api/fear_avoidance/fear_avoidance_beliefs/score",
new { responses });
var finding = result.GetProperty("finding");
Console.WriteLine($"FABQ-W: {finding.GetProperty("score").GetDouble()} ({finding.GetProperty("band").GetString()})");

PowerShell

# Uses the Invoke-Engine helper from quickstart.md.
$responses = @{}
1..7 | ForEach-Object { $responses["item_$_"] = 4 }
$result = Invoke-Engine -Method Post -Path "/api/fear_avoidance/fear_avoidance_beliefs/score" -Body @{ responses = $responses }
"FABQ-W: $($result.finding.score) ($($result.finding.band))"

Clinical interpretation

  • What it measures. Beliefs that work causes or worsens pain, and that return to work is inadvisable or unlikely.
  • Predictive value. High FABQ-W scores are among the stronger predictors of prolonged work disability in musculoskeletal-pain populations.
  • Treatment implication. Elevated FABQ-W suggests that graded-activity, reassurance, and cognitive-functional approaches may outperform pure symptom-targeted interventions.

Intended use

  • Return-to-work risk stratification in musculoskeletal complaints.
  • Targeting cognitive-functional therapy — high FABQ-W often flags candidates for such approaches.
  • Tracking belief change over time during a rehabilitation course.
  • Feeding the CDRI composite as a fear-avoidance signal specific to work.

Mistaken use

  • Do not interpret FABQ-W as general fear of movement. Use kinesiophobia (TSK-11) for general kinesiophobia not tied to work.
  • Do not expect the FABQ physical-activity subscale. It is not in Trinity. Do not paste FABQ-PA item responses into the FABQ-W item_1item_7 slots; the scoring is subscale-specific and the result would be meaningless.
  • Do not compare raw scores across rubric versions without checking version — item sets, weights, and cutoffs can change.
  • Do not infer "willingness to work" from a low FABQ-W. It measures beliefs, not intent or ability. A low band does not mean a subject will return to work quickly; it only indicates that fear-avoidance beliefs about work are not the bottleneck.

Debugging

  1. Capture request_id. Present in every response body.
  2. Subject reported fear-related physical-activity responses that do not match your items. You are probably thinking of FABQ-PA. Check the item text against the /questions response; all items here are work-related.
  3. 400 ValidationError with missing_items. Send all seven items.

Change history

DateChange
2026-04-20Initial publication.