Skip to content

Datasets Service

Service
URL: https://demo-datasets.datasafe.dev

REST API serving medication, treatment, and procedure datasets from multiple sources, with full-text search.

  • WHO-ATC — ~6K medications from WHO Anatomical Therapeutic Chemical classification
  • RxNorm — ~20K medications (SCD+SBD) from NLM
  • SNOMED CT — ~24.7K medication concepts
  • Cross-references — ATC codes added to RxNorm / SNOMED drugs by ingredient (combination codes, route and dose rules)

The products people buy, under the name on the box, each linked to its coded medicine:

  • Swissmedic OGD (CH) — ~9.7K authorised human products, GTIN per pack
  • BDPM (FR) — ~12.2K commercialised specialties, CIP13 per pack, ATC from ANSM

A search whose first word starts a brand (“dafalgan”, “doliprane”) returns the products first: the result is the product’s coded medicine, labelled with the brand, plus a product object (name as on the box, country, Swissmedic or CIS code). Data-model 3.47.0 stores it as drug.product. Substance searches (“paracetamol”) are unchanged.

  • SNOMED-CT-STORMM — curated SNOMED-CT subset for clinical treatments (8 fertility regimens) and procedures (15 fertility procedures), driven by the STORMM intake.
  • GET /medication?search=aspirin — full-text search across all sources
  • GET /medication/sources — list available data sources
  • GET /treatment?search=ivf, GET /procedure?search=laparoscopy — search curated treatment / procedure subsets
  • GET /treatment/sources, GET /procedure/sources — entry counts per source key
  • Source filtering on /medication via system parameter
  • country (CH, FR) filters national products (default: all, CH first); lang (de, fr, it, en) picks the product label’s language
  • GET /medication/sources also lists each product source’s attribution (licence, last update), which the BDPM licence asks to display
  • Node.js, Express, SQLite + FTS5
  • Deployed on Dokku (dev: demo-datasets.datasafe.dev, prod: datasets.datasafe.dev)