Американское общество гирудотерапии

API Schema Reference

Every public endpoint, its response fields, exposure level, and per-endpoint safety context.

Последнее обновление: June 2, 2026Рецензент: ASH Editorial Board
Developer / infrastructure referencePublic open-data documentation

ASH publishes a read-only research API for researchers, developers, and dashboard integrations. Every endpoint is public, CORS-enabled, and CDN-cached no authentication and no PII. This page documents the true response shape of each endpoint and tags every field by exposure level, so consumers know which data is patient-safe versus gated behind an audience parameter.

Exposure levels

  • Patient-safeReturned to anonymous consumers and the default audience=patient payload. Plain-language, governance, and safety-scaffolding fields.
  • Clinician-gatedGated behind ?audience=clinician. Protocol-like depth (leech counts, durations, contraindications, trial intervention detail). Returning it requires an explicit acknowledgement that it is educational, not institutional protocol.
  • Researcher-gatedGated behind ?audience=researcher. Citation depth (key-trial lists, full citation arrays) for literature-graph and academic integrations.
  • AlwaysPresent for every audience identifiers, citation identifiers, governance status, and hypermedia _links.
  • Citation-integrityCitation-integrity status. Every citation-bearing object carries citationIntegrityStatus one of verified_pubmed, unverified_pending, verified_doi, or identifier_absent per the Cycle 11 PMID-quarantine model. Treat unverified_pending entries as suspect until the PMID audit completes.

Endpoints

GET/api/research-articles

Research-article library

PubMed-verified bibliographic metadata for the imported research-article library (1,000+ entries). Bibliographic only — no clinical protocol detail.

Query parameters: limit (1–100, default 25), offset (≥0), organ_system (substring), year_min, year_max, tier (very-low | low | moderate | high).

Response fields

FieldExposureMeaning
slugAlwaysStable identifier for the article entry.
pmidAlwaysPubMed identifier, or null when absent.
titleAlwaysArticle title.
authorsAlwaysAuthor string.
yearAlwaysPublication year.
journalAlwaysSource journal.
citationIntegrityStatusCitation-integrityverified_pubmed | unverified_pending | verified_doi | identifier_absent. Carried by every citation-bearing object.
pmidVerifiedCitation-integrityISO date the PMID was resolved against PubMed E-utilities (present only when verified).
organSystemPatient-safeOrgan-system tag, emitted only when present on the entry.
evidenceTierPatient-safeGRADE tier mirrored from hirudopedia evidenceGrade when present.
studyTypePatient-safeStudy design tag, when present.
safetyDomainPatient-safeSafety-domain tag, when present.
dateAddedPatient-safeISO date the entry was added.

Safety / exposure note

All fields are bibliographic metadata — no protocol detail, leech counts, or dosing. Each article carries citationIntegrityStatus per the Cycle 11 PMID-quarantine model; treat unverified_pending entries as suspect until the PMID Integrity Sprint completes (see /pmid-audit-status). FDA cleared leeches for one indication only (K040187, 2004); all other indexed uses are off-label or investigational.

GET/api/conditions

Condition registry

Audience-routed condition registry. Defaults to patient-safe; clinical protocol depth and citation depth are gated behind the audience parameter.

Default audience: patient (default)

Query parameters: limit (1–100, default 25), offset (≥0), tier (A-FDA-cleared | B-clinical-evidence | C-investigational), category (12 organ-system enum values), audience (patient | clinician | researcher).

Response fields

FieldExposureMeaning
slug, name, tagline, tier, categoryPatient-safeCore identity and classification, present for all audiences.
patientName, laymanDescriptionPatient-safePlain-language naming and description.
icd10CodesPatient-safeICD-10 code array, when present.
regulatoryStatus, evidenceLevel, safetyTier, safetyDomains, scopeStatementPatient-safeGovernance and safety metadata — always safe to expose.
patientSummary, whatThisDoesNotMean, askClinicianQuestions, redFlagsUrgentCare, limitationsPatient-safePatient-facing safety scaffolding.
evidenceSummaryClinician-gatedFull evidence summary. Returned for audience=clinician (and researcher).
protocolSummaryClinician-gatedProtocol summary — gated; only under audience=clinician.
typicalLeechCountClinician-gatedTypical leech count — gated clinical detail.
typicalDurationClinician-gatedTypical treatment duration — gated clinical detail.
contraindicationsClinician-gatedContraindication list — gated clinical decision content.
keyTrials[]Researcher-gatedKey-trial citation depth; only under audience=researcher.
keyTrials[].citationIntegrityStatusCitation-integrityPer-trial integrity status (verified_pubmed | unverified_pending | verified_doi | identifier_absent).
_linksAlwayscondition_page path and related_rcts count.

Safety / exposure note

Defaults to audience=patient and OMITS protocolSummary, typicalLeechCount, typicalDuration, contraindications, and keyTrials. These were reclassified as a P0 safety surface in Cycle 11 — protocol-like content (leech counts, frequencies, thresholds) is gated behind ?audience=clinician with an explicit acknowledgement that it is educational, not a substitute for institutional governance. _safetyContext documents exactly which fields were withheld for the active audience.

GET/api/compounds

Compound registry

Leech-derived bioactive-compound metadata (hirudin, hyaluronidase, eglins, etc.). Pharmacology / biochemistry reference — not clinical protocol detail.

Query parameters: limit (1–100, default 25), offset (≥0), category (anticoagulant | antiplatelet | fibrinolytic | proteinase-inhibitor | anti-inflammatory | antimicrobial | vasodilator | ecm-enzyme | analgesic | other).

Response fields

FieldExposureMeaning
slug, name, taglinePatient-safeIdentity and one-line description.
categoryPatient-safeCompound class enum.
evidenceTierPatient-safeEvidence tier for the compound.
molecularWeightDaPatient-safeMolecular weight in daltons, when numeric.
targetsPatient-safeMolecular-target array, when present.
_linksAlwayscompound_page path.

Safety / exposure note

Bioactive-compound metadata for educational reference — no clinical protocol detail. Drug-vs-leech distinction matters: FDA-approved hirudin-class drugs (lepirudin, desirudin, bivalirudin) are recombinant or synthetic analogs, NOT whole-leech therapy, and most leech salivary compounds remain preclinical.

GET/api/rcts

RCT registry

Randomized-controlled-trial registry. Research-oriented, so it defaults to audience=researcher; the patient audience strips intervention/protocol depth.

Default audience: researcher (default)

Query parameters: limit (1–100, default 25), offset (≥0), grade (high | moderate | low | very-low), status (completed | ongoing | preliminary), condition (registry slug), audience (researcher | clinician | patient).

Response fields

FieldExposureMeaning
slug, title, authors, year, journal, condition, grade, statusAlwaysTrial identity, GRADE certainty, and status — present for all audiences.
pmid, doiAlwaysCitation identifiers (research-citation, not clinical-actionable).
pmidVerifiedCitation-integrityISO verification date, when present.
citationIntegrityStatusCitation-integrityverified_pubmed | unverified_pending | verified_doi | identifier_absent, computed per entry.
design, n, intervention, comparator, primaryEndpoint, primaryResult, cohen_d, followUpDuration, phase, keyFindings, limitations, clinicalImplications, fundingSourceClinician-gatedTrial-design and intervention depth. Withheld from audience=patient; present for clinician and researcher.
citations[]Researcher-gatedFull citation list, each carrying its own citationIntegrityStatus. Only under audience=researcher.
_linksAlwaysrct_page, condition_page, and pubmed URL (or null).

Safety / exposure note

Default audience=researcher exposes trial-design depth; audience=patient strips intervention, comparator, primaryResult and similar protocol-adjacent fields, keeping only title/grade/year/status. Every entry and every nested citation carries citationIntegrityStatus, and _safetyContext lists which fields were filtered for the active audience.

GET/api/biographies

Biography registry

Historically- and contemporary-significant figures in hirudotherapy science (Haycraft 1884 → present). Public-domain biographical facts only.

Query parameters: limit (1–100, default 25), offset (≥0), era (ancient | medieval | 19th-century | early-20th | mid-20th | late-20th | contemporary).

Response fields

FieldExposureMeaning
slug, namePatient-safeIdentifier and full name.
lifeSpanPatient-safeLife-years string (registry lifeYears, e.g. "1857-1922").
eraPatient-safeEra enum value.
contributionPatient-safeOne-sentence contribution (mapped from registry tagline).
publicationCountPatient-safeCount of keyPublications (0 when none).
institutionalAffiliationsPatient-safeAffiliation array, when present.
_linksAlwaysbiography_page path.

Safety / exposure note

Public biographical metadata only — no clinical content. Inclusion in this registry does not imply ASH endorses any clinical claim made by the individual or any product associated with them.

GET/api/jurisdictions

Jurisdiction registry

Global regulatory survey — authorities governing medicinal leech therapy worldwide (FDA, EMA, PMDA, Health Canada, WHO, etc.).

Query parameters: limit (1–100, default 25), offset (≥0), region (north-america | europe | asia-pacific | latin-america | middle-east | africa | oceania).

Response fields

FieldExposureMeaning
slugPatient-safeStable identifier.
namePatient-safeCountry name (registry country field).
regulatoryAuthorityPatient-safeFull agency name (registry name field).
leechRegulatoryStatusPatient-safeHonest status marker; uses 'unregulated' where no leech-specific pathway is verified.
region, typePatient-safeRegion enum and jurisdiction type.
shortNamePatient-safeShort agency name, when present.
lastReviewedByASHPatient-safeISO date of ASH editorial review (closest analogue to a 'regulated since' date).
_linksAlwaysjurisdiction_page path.

Safety / exposure note

Regulatory reference, not medical or legal advice. Most jurisdictions have NO leech-specific authorization pathway; an 'unregulated' status means ASH has not verified a pathway — not that the country allows or prohibits the practice. Verify current status with the named authority before any clinical use.

GET/api/site-stats

Site statistics (hypermedia root)

Aggregate registry counts and cross-API discovery links. Public hypermedia root for programmatic consumers, dashboards, and structured data.

Query parameters: None. Static, CDN-cached.

Response fields

FieldExposureMeaning
asOfAlwaysISO timestamp of the response.
registriesAlwaysCounts: conditions, compounds, rcts, biographies, jurisdictions.
researchArticlesAlwaysResearch-article library size.
totalArtifactsAlwaysSum of all registry counts plus research articles.
longTermGoal, progressPctAlways10,000-article goal and percent progress.
conditionTiersAlwaysCondition counts by tier { A, B, C }.
links, apisAlwaysSite links and the sibling-endpoint discovery object.

Safety / exposure note

Aggregate statistics only — no clinical protocol detail and no per-entry data. conditionTiers.A counts only conditions within the FDA-cleared pathway (K040187, 2004); Tier B/C are off-label or investigational. progressPct measures library size against a 10,000-article goal and does NOT imply clinical recommendation. Each sibling endpoint reached via the apis object enforces its own audience model and citation integrity.

GET/api/changelog

Editorial changelog

Public editorial change history, hand-maintained from the merged-PR record. Companion to /api/site-stats for aggregators tracking editorial activity.

Query parameters: limit (1–50, default 20), category (architecture | content | translation | registry | correction | infrastructure, case-insensitive).

Response fields

FieldExposureMeaning
dateAlwaysEntry date (YYYY-MM-DD).
prRangeAlwaysAssociated PR reference (e.g. "PR #70").
title, summaryAlwaysChange title and summary.
categoryAlwaysOne of architecture | content | translation | registry | correction | infrastructure.
detailsAlwaysArray of detail strings.
categoriesAlwaysTop-level count of entries per category across the full log.

Safety / exposure note

Editorial change log for educational / audit reference — no clinical protocol detail. Inclusion reflects ASH editorial activity, not endorsement of any clinical claim referenced in an entry. The 'correction' category surfaces errata (e.g. fabricated-PMID removals) transparently rather than silently revising them.

Related pages

Open Data

The open-data principle, license, and how the registries are maintained.

Open data →

PMID Audit Status

Live status of the citation-integrity verification sprint.

Audit status →

How Evidence Is Graded

The Tier A/B/C framework and GRADE-aligned ratings behind the API fields.

Framework →

Этот сайт предоставляет образовательную информацию и не является медицинской консультацией, диагнозом или рекомендацией по лечению. Гирудотерапия сопряжена с клинически значимыми рисками и должна проводиться только квалифицированными клиницистами в рамках институционально утверждённых протоколов. Разрешение FDA 510(k) для медицинских пиявок ограничено определёнными показаниями; обсуждения исследовательского и нелицензионного применения отмечены соответствующим образом. Для индивидуальных медицинских рекомендаций обратитесь к квалифицированному медицинскому специалисту.