SNOMED CT Browser API
SNOMED International · Health
SNOMED CT Browser REST API (Snowstorm server). Provides concept lookup, description search, hierarchy traversal, and relationship queries for the global clinical terminology standard. Used in EHR systems and FHIR clinical data exchange.
Authentication
Sample Requests
Search SNOMED CT concepts by term
Hover any highlighted part to learn what it does
curl -X GET "https://browser.ihtsdotools.org/snowstorm/snomed-ct?term=myocardial%20infarction&limit=10&activeFilter=true"
import requests
params = {
"term": "myocardial infarction",
"limit": "10",
"activeFilter": "true"
}
response = requests.get(
"https://browser.ihtsdotools.org/snowstorm/snomed-ct",
params=params,
)
print(response.json())const url = new URL('https://browser.ihtsdotools.org/snowstorm/snomed-ct');
url.searchParams.set('term', 'myocardial infarction');
url.searchParams.set('limit', '10');
url.searchParams.set('activeFilter', 'true');
const response = await fetch(url);
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://browser.ihtsdotools.org/snowstorm/snomed-ct")
q := baseURL.Query()
q.Set("term", "myocardial infarction")
q.Set("limit", "10")
q.Set("activeFilter", "true")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("GET", targetURL, nil)
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://browser.ihtsdotools.org/snowstorm/snomed-ct")
uri.query = URI.encode_www_form({
"term" => "myocardial infarction",
"limit" => "10",
"activeFilter" => "true"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://browser.ihtsdotools.org/snowstorm/snomed-ct?" . http_build_query([
"term" => "myocardial infarction",
"limit" => "10",
"activeFilter" => "true"
]);
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Postman Setup Guide
- No authentication required for the public IHTSDO browser API
- In Postman, GET https://browser.ihtsdotools.org/snowstorm/snomed-ct/MAIN/concepts
- Add params: term={search term} and activeFilter=true and limit=10
- Each concept returns a conceptId (SCTID), preferredSynonym, and definitionStatus
- Use conceptId to fetch full concept: GET /MAIN/concepts/{conceptId}
What can you build with SNOMED CT Browser API?
SNOMED CT Browser API is a Health API. Developers commonly use health APIs for:
- accessing medical reference data and drug information
- building patient-facing health tracking apps
- integrating with EHR and telemedicine platforms
- looking up ICD codes and clinical terminology
- powering wellness and fitness applications
No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. SNOMED CT Browser API is free to use, making it a low-risk choice to experiment with.
New to APIs? Read our beginner's guide · Learn about API keys · What is REST?