/causal/interventionSimulate a Biological Intervention
Propagate an intervention through the causal graph and return downstream effects.
Only in Galen
Uses Breadth-First Search over a Structural Causal Model to compute genuine causal downstream effects — not statistical correlations or LLM reasoning. The model propagates interventions through experimentally-validated causal edges (L2 and L3 relationships) from 10+ databases.
Parameters
Request Body
Specify the target entity, intervention type, and optional propagation parameters.
| Field | Type | Description |
|---|---|---|
target | string | Entity to intervene on (gene, protein, or pathway). |
intervention_type | string | Type of intervention: "inhibit", "activate", "knockout", or "overexpress". |
max_hops | integer | Maximum propagation distance in the causal graph (1–6). Higher values capture more distant effects but increase computation time. |
min_effect | float | Minimum effect size threshold (0–1). Effects below this magnitude are pruned from results. |
Response Schema
targetstringThe intervened entity.intervention_typestringThe intervention applied.downstream_effectsarrayEntities causally affected by the intervention.entitystringAffected downstream entity.effect_sizefloatMagnitude of the causal effect (0–1, higher = stronger).directionstringWhether the entity is upregulated ("up") or downregulated ("down").path_lengthintegerNumber of causal edges between the intervention and this entity.mechanismstringBrief mechanistic description of the causal propagation path.effect_countintegerTotal number of downstream effects returned.computation_time_msintegerServer-side computation time in milliseconds.Example Request
import requests
resp = requests.post(
"https://research.usegalen.com/api/v1/causal/intervention",
headers={"X-API-Key": "YOUR_API_KEY"},
json={
"target": "BRAF",
"intervention_type": "inhibit",
"max_hops": 3,
"min_effect": 0.1
},
)
data = resp.json()
for effect in data["downstream_effects"]:
print(f"{effect['entity']}: {effect['direction']} ({effect['effect_size']:.2f})")Example Response
{
"target": "BRAF",
"intervention_type": "inhibit",
"downstream_effects": [
{
"entity": "MEK1",
"effect_size": 0.92,
"direction": "down",
"path_length": 1,
"mechanism": "BRAF directly phosphorylates MEK1; inhibition removes activating phosphorylation."
},
{
"entity": "ERK1/2",
"effect_size": 0.85,
"direction": "down",
"path_length": 2,
"mechanism": "MEK1 phosphorylates ERK1/2; reduced MEK1 activity decreases ERK signaling."
},
{
"entity": "cell_proliferation",
"effect_size": 0.71,
"direction": "down",
"path_length": 3,
"mechanism": "ERK1/2 drives transcription of proliferative genes (MYC, CCND1); reduced ERK dampens proliferation."
},
{
"entity": "RSK2",
"effect_size": 0.62,
"direction": "down",
"path_length": 3,
"mechanism": "ERK1/2 phosphorylates RSK2; downstream reduction in pro-survival signaling."
},
{
"entity": "DUSP6",
"effect_size": 0.48,
"direction": "down",
"path_length": 3,
"mechanism": "DUSP6 is an ERK-induced phosphatase; lower ERK reduces DUSP6 transcription."
}
],
"effect_count": 5,
"computation_time_ms": 847
}Try It
Request Body
Specify the target entity, intervention type, and optional propagation parameters.
POST https://research.usegalen.com/api/v1/causal/intervention