SMA Research Platform

Evidence graph for Spinal Muscular Atrophy

Biology-first target discovery
Christian Fischer / Bryzant Labs
13,058Targets
453Trials
84Drugs
7Datasets
42,617Sources
48,024Claims
55,019Evidence
29,646Hypotheses

API Guide for Researchers

Query our evidence graph programmatically. No authentication required for read access. All endpoints return JSON under /api/v2.

Quick Start — 3 Commands

# 1. Platform overview
curl -s https://sma-research.info/api/v2/stats | python3 -m json.tool

# 2. Ranked molecular targets
curl -s "https://sma-research.info/api/v2/scores?mode=discovery" | python3 -m json.tool

# 3. Search drug efficacy claims
curl -s "https://sma-research.info/api/v2/claims?claim_type=drug_efficacy&limit=10" | python3 -m json.tool

Core Data Endpoints

GET/stats
Platform overview counts for all major tables
curl -s https://sma-research.info/api/v2/stats
GET/targets
All molecular targets. Params: target_type, limit (1-2000), offset
curl -s ".../targets?target_type=gene&limit=200"
GET/targets/symbol/{symbol}
Single target by gene symbol (e.g., ROCK2, LIMK1, SMN2)
curl -s ".../targets/symbol/ROCK2"
GET/targets/{id}/deep-dive
Full target view: claims, hypotheses, drugs, trials, network edges
GET/claims
Search claims. Params: claim_type, confidence_min, target, q, enriched
curl -s ".../claims?claim_type=drug_efficacy&confidence_min=0.8&enriched=true"
GET/hypotheses
Ranked hypotheses. Params: status, limit, offset
curl -s ".../hypotheses?limit=20"
GET/scores
7-dimension target prioritization. Params: mode (discovery|clinical), min_score
curl -s ".../scores?mode=discovery"
GET/drugs
Drugs and therapies. Params: approval_status, drug_type
curl -s ".../drugs?approval_status=approved"
GET/trials
Clinical trials from ClinicalTrials.gov
GET/sources
PubMed literature sources. Params: source_type, limit, offset
GET/news
Research highlights and discoveries. Also: /news/rss for RSS feed
GET/search
Semantic + keyword hybrid search. Params: q, mode (semantic|keyword|hybrid)
curl -s ".../search?q=ROCK+inhibitor&mode=hybrid"

Computational Biology

GET/structures
Predicted protein structures with pLDDT scores. Params: symbol, min_plddt
GET/pockets, /pockets/druggable
Binding pockets from fpocket analysis. Filter by symbol
GET/splice/predict?variant=c.6T>C
SMN2 splice variant effect prediction. Also: /splice/known-variants, /splice/elements
GET/molecules/browser
AI-designed molecules (GenMol). Params: target, bbb_only, min_qed
GET/dock/score
Pharmacophore scoring against 7 binding pockets. Params: pocket, limit
GET/interactions/target/{symbol}
Protein-protein and drug-target interaction network for a gene
GET/cascade/predict
Predict downstream signaling cascade effects. Params: gene, perturbation
GET/screen/dual-target
Dual-target screening candidates and synergy predictions

Data Export

GET/export/{table}?fmt=csv
Bulk download as CSV or JSON. Tables: targets, drugs, trials, claims, hypotheses, graph_edges, drug_outcomes, cross_species_targets, target_scores, molecule_screenings
curl -s ".../export/claims?fmt=csv&limit=5000" -o sma_claims.csv
GET/export/target/{symbol}?fmt=bibtex
Export all evidence for a target as JSON, CSV, or BibTeX citations
curl -s ".../export/target/ROCK2?fmt=bibtex"
GET/molecules/browser/export?fmt=sdf
Download AI-designed molecules as SDF (for cheminformatics tools) or CSV

Claim Type Reference

gene_expressionprotein_interactionpathway_membershipdrug_targetdrug_efficacybiomarkersplicing_eventneuroprotectionmotor_functionsurvivalsafetyfunctional_interactionother

Python Example

import requests

BASE = "https://sma-research.info/api/v2"

# Get scored and ranked targets
scores = requests.get(f"{BASE}/scores", params={"mode": "discovery"}).json()

for t in scores[:10]:
    print(f"{t['symbol']:10s} score={t['composite_score']:.3f}")

# Search high-confidence drug efficacy claims
claims = requests.get(f"{BASE}/claims", params={
    "claim_type": "drug_efficacy",
    "confidence_min": 0.8,
    "enriched": True,
    "limit": 100
}).json()

for c in claims:
    print(f"[{c['confidence']:.2f}] {c['predicate'][:80]}")

# Deep-dive: full evidence for a target
target = requests.get(f"{BASE}/targets/symbol/ROCK2").json()
dive = requests.get(f"{BASE}/targets/{target['id']}/deep-dive").json()
print(f"Claims: {len(dive['claims'])}, Hypotheses: {len(dive['hypotheses'])}")

R Example

library(httr)
library(jsonlite)

base_url <- "https://sma-research.info/api/v2"

# All targets with discovery-mode scores
scores <- fromJSON(content(
  GET(paste0(base_url, "/scores"), query = list(mode = "discovery")),
  "text"
))

# Top 10 by composite score
top10 <- head(scores[order(-scores$composite_score), ], 10)
print(top10[, c("symbol", "composite_score")])

# Export as CSV
resp <- GET(paste0(base_url, "/export/targets"), query = list(fmt = "csv", limit = 5000))
writeLines(content(resp, "text"), "sma_targets.csv")

Rate Limits & Access

No authentication required for all GET endpoints.
No formal rate limiting — but please stay under ~10 req/sec sustained.
CORS is restricted to sma-research.info. Use server-side calls or curl from other domains.
Bulk downloads: Use /export endpoints instead of paginating through /claims.
Write access (POST/PUT) requires an admin API key. Contact christian@bryzant.com if needed.

Citation

If you use data from this platform, please cite:

Fischer, C. (2026). SMA Research Platform — Open Evidence Graph
for Spinal Muscular Atrophy. https://sma-research.info
Bryzant Labs. Accessed [date].
BibTeX
@misc{fischer2026sma,
  author = {Fischer, Christian},
  title = {{SMA Research Platform --- Open Evidence Graph for SMA}},
  year = {2026},
  url = {https://sma-research.info},
  note = {Accessed: 2026-03-25}
}

Try It Live

GET/api/v2/
Select an endpoint and click Send to try the API.
Login → Command Center