curl -X GET "https://api.omophub.com/v1/mappings/coverage?source_vocabulary=SNOMED&target_vocabulary=ICD10CM" \
-H "Authorization: Bearer YOUR_API_KEY"
import { OMOPHub } from '@omophub/omophub-node';
// Not yet exposed as a dedicated SDK method - use the typed low-level helper.
const client = new OMOPHub();
interface CoverageResult {
overall_coverage: number;
domain_coverage: Array<{
domain_name: string;
coverage_percentage: number;
mapped_concepts: number;
source_concepts: number;
}>;
}
const { data } = await client.get<CoverageResult>('/mappings/coverage', {
query: { source_vocabulary: 'SNOMED', target_vocabulary: 'ICD10CM' },
});
console.log(`Overall coverage: ${data?.overall_coverage}%`);
data?.domain_coverage.forEach(domain => {
console.log(`${domain.domain_name}: ${domain.coverage_percentage}% (${domain.mapped_concepts}/${domain.source_concepts})`);
});
import requests
response = requests.get(
"https://api.omophub.com/v1/mappings/coverage",
params={
"source_vocabulary": "SNOMED",
"target_vocabulary": "ICD10CM"
},
headers={"Authorization": "Bearer YOUR_API_KEY"}
)
result = response.json()
print(f"Overall coverage: {result['data']['overall_coverage']}%")
for domain in result['data']['domain_coverage']:
print(f"{domain['domain_name']}: {domain['coverage_percentage']}%")
{
"success": true,
"data": {
"source_vocabulary": "SNOMED",
"target_vocabulary": "ICD10CM",
"domain_coverage": [
{
"domain_id": "Condition",
"domain_name": "Condition",
"source_concepts": 234567,
"mapped_concepts": 178234,
"coverage_percentage": 75.9
},
{
"domain_id": "Procedure",
"domain_name": "Procedure",
"source_concepts": 89234,
"mapped_concepts": 45678,
"coverage_percentage": 51.2
},
{
"domain_id": "Observation",
"domain_name": "Observation",
"source_concepts": 45678,
"mapped_concepts": 12345,
"coverage_percentage": 27.0
}
],
"overall_coverage": 65.5,
"unmapped_concepts": [
{
"concept_id": 4087682,
"concept_name": "Finding related to ability to move",
"domain_id": "Condition",
"reason": "No direct mapping"
},
{
"concept_id": 4273391,
"concept_name": "Coronary artery bypass graft",
"domain_id": "Procedure",
"reason": "No direct mapping"
}
]
},
"meta": {
"request_id": "req_coverage_abc123",
"timestamp": "2024-12-22T10:00:00Z",
"vocab_release": "2025.2"
}
}
Get Mapping Coverage
Analyze mapping coverage between a source and target OMOP vocabulary - quantify how many concepts translate across SNOMED, ICD-10, LOINC, and RxNorm.
curl -X GET "https://api.omophub.com/v1/mappings/coverage?source_vocabulary=SNOMED&target_vocabulary=ICD10CM" \
-H "Authorization: Bearer YOUR_API_KEY"
import { OMOPHub } from '@omophub/omophub-node';
// Not yet exposed as a dedicated SDK method - use the typed low-level helper.
const client = new OMOPHub();
interface CoverageResult {
overall_coverage: number;
domain_coverage: Array<{
domain_name: string;
coverage_percentage: number;
mapped_concepts: number;
source_concepts: number;
}>;
}
const { data } = await client.get<CoverageResult>('/mappings/coverage', {
query: { source_vocabulary: 'SNOMED', target_vocabulary: 'ICD10CM' },
});
console.log(`Overall coverage: ${data?.overall_coverage}%`);
data?.domain_coverage.forEach(domain => {
console.log(`${domain.domain_name}: ${domain.coverage_percentage}% (${domain.mapped_concepts}/${domain.source_concepts})`);
});
import requests
response = requests.get(
"https://api.omophub.com/v1/mappings/coverage",
params={
"source_vocabulary": "SNOMED",
"target_vocabulary": "ICD10CM"
},
headers={"Authorization": "Bearer YOUR_API_KEY"}
)
result = response.json()
print(f"Overall coverage: {result['data']['overall_coverage']}%")
for domain in result['data']['domain_coverage']:
print(f"{domain['domain_name']}: {domain['coverage_percentage']}%")
{
"success": true,
"data": {
"source_vocabulary": "SNOMED",
"target_vocabulary": "ICD10CM",
"domain_coverage": [
{
"domain_id": "Condition",
"domain_name": "Condition",
"source_concepts": 234567,
"mapped_concepts": 178234,
"coverage_percentage": 75.9
},
{
"domain_id": "Procedure",
"domain_name": "Procedure",
"source_concepts": 89234,
"mapped_concepts": 45678,
"coverage_percentage": 51.2
},
{
"domain_id": "Observation",
"domain_name": "Observation",
"source_concepts": 45678,
"mapped_concepts": 12345,
"coverage_percentage": 27.0
}
],
"overall_coverage": 65.5,
"unmapped_concepts": [
{
"concept_id": 4087682,
"concept_name": "Finding related to ability to move",
"domain_id": "Condition",
"reason": "No direct mapping"
},
{
"concept_id": 4273391,
"concept_name": "Coronary artery bypass graft",
"domain_id": "Procedure",
"reason": "No direct mapping"
}
]
},
"meta": {
"request_id": "req_coverage_abc123",
"timestamp": "2024-12-22T10:00:00Z",
"vocab_release": "2025.2"
}
}
Overview
This endpoint analyzes mapping coverage between two vocabularies, providing domain-level breakdown and identifying unmapped concepts. Useful for understanding interoperability between vocabulary pairs.Query Parameters
string
required
Source vocabulary ID to analyze mappings from
Example:
Example:
SNOMEDstring
required
Target vocabulary ID to analyze mappings to
Example:
Example:
ICD10CMstring
Comma-separated domain IDs to filter the analysis
Example:
Example:
Condition,Drugstring
Specific vocabulary release version (e.g., “2025.1”)
Response
boolean
required
Indicates if the request was successful
object
required
Coverage analysis results
Show data
Show data
string
Source vocabulary ID analyzed
string
Target vocabulary ID analyzed
array
number
Overall coverage percentage across all domains (0-100)
object
required
curl -X GET "https://api.omophub.com/v1/mappings/coverage?source_vocabulary=SNOMED&target_vocabulary=ICD10CM" \
-H "Authorization: Bearer YOUR_API_KEY"
import { OMOPHub } from '@omophub/omophub-node';
// Not yet exposed as a dedicated SDK method - use the typed low-level helper.
const client = new OMOPHub();
interface CoverageResult {
overall_coverage: number;
domain_coverage: Array<{
domain_name: string;
coverage_percentage: number;
mapped_concepts: number;
source_concepts: number;
}>;
}
const { data } = await client.get<CoverageResult>('/mappings/coverage', {
query: { source_vocabulary: 'SNOMED', target_vocabulary: 'ICD10CM' },
});
console.log(`Overall coverage: ${data?.overall_coverage}%`);
data?.domain_coverage.forEach(domain => {
console.log(`${domain.domain_name}: ${domain.coverage_percentage}% (${domain.mapped_concepts}/${domain.source_concepts})`);
});
import requests
response = requests.get(
"https://api.omophub.com/v1/mappings/coverage",
params={
"source_vocabulary": "SNOMED",
"target_vocabulary": "ICD10CM"
},
headers={"Authorization": "Bearer YOUR_API_KEY"}
)
result = response.json()
print(f"Overall coverage: {result['data']['overall_coverage']}%")
for domain in result['data']['domain_coverage']:
print(f"{domain['domain_name']}: {domain['coverage_percentage']}%")
{
"success": true,
"data": {
"source_vocabulary": "SNOMED",
"target_vocabulary": "ICD10CM",
"domain_coverage": [
{
"domain_id": "Condition",
"domain_name": "Condition",
"source_concepts": 234567,
"mapped_concepts": 178234,
"coverage_percentage": 75.9
},
{
"domain_id": "Procedure",
"domain_name": "Procedure",
"source_concepts": 89234,
"mapped_concepts": 45678,
"coverage_percentage": 51.2
},
{
"domain_id": "Observation",
"domain_name": "Observation",
"source_concepts": 45678,
"mapped_concepts": 12345,
"coverage_percentage": 27.0
}
],
"overall_coverage": 65.5,
"unmapped_concepts": [
{
"concept_id": 4087682,
"concept_name": "Finding related to ability to move",
"domain_id": "Condition",
"reason": "No direct mapping"
},
{
"concept_id": 4273391,
"concept_name": "Coronary artery bypass graft",
"domain_id": "Procedure",
"reason": "No direct mapping"
}
]
},
"meta": {
"request_id": "req_coverage_abc123",
"timestamp": "2024-12-22T10:00:00Z",
"vocab_release": "2025.2"
}
}
Usage Examples
Basic Coverage Analysis
Analyze coverage from SNOMED to ICD-10-CM:TypeScript
const { data: coverage } = await client.get('/mappings/coverage', {
query: { source_vocabulary: 'SNOMED', target_vocabulary: 'ICD10CM' },
});
Filter by Domain
Analyze coverage for specific domains only:TypeScript
const { data: conditionCoverage } = await client.get('/mappings/coverage', {
query: {
source_vocabulary: 'SNOMED',
target_vocabulary: 'ICD10CM',
domain_ids: 'Condition,Procedure',
},
});
Use Specific Vocabulary Version
Analyze coverage for a specific vocabulary release:TypeScript
const { data: coverage } = await client.get('/mappings/coverage', {
query: {
source_vocabulary: 'SNOMED',
target_vocabulary: 'ICD10CM',
vocab_release: '2025.1',
},
});
Related Endpoints
- Get Concept Mappings - Mappings for specific concepts
- Get Mapping Quality - Quality metrics between vocabularies
- Map Concepts - Map concepts to a target vocabulary
Notes
- Both
source_vocabularyandtarget_vocabularyare required parameters - The
unmapped_conceptsarray contains a sample of up to 100 unmapped concepts - Coverage percentages are calculated based on valid, non-deprecated concepts
- Use
domain_idsto focus analysis on specific medical domains
Was this page helpful?