Skip to main content
curl -X GET "https://api.omophub.com/v1/concepts/201826/relations/any" \
  -H "Authorization: Bearer YOUR_API_KEY"
{
  "success": true,
  "data": {
    "concept_id": 201826,
    "has_relations": true,
    "relation_summary": {
      "total_count": 15,
      "outbound_count": 8,
      "inbound_count": 7,
      "relationship_types": ["Maps to", "Is a", "Has finding site", "May be a"],
      "connected_vocabularies": ["SNOMED", "ICD10CM", "ICD9CM"],
      "has_standard_mappings": true
    },
    "checks_performed": {
      "included_relationship_types": ["all"],
      "included_vocabularies": ["all"],
      "included_reverse_relations": true,
      "included_invalid_relations": false
    }
  },
  "meta": {
    "request_id": "req_check_relations_123",
    "timestamp": "2024-12-22T10:00:00Z",
    "vocab_release": "2025.2"
  }
}

Overview

This lightweight endpoint quickly determines whether a concept has any relationships to other concepts. This is useful for UI components, validation logic, or filtering concepts that are isolated vs. connected in the terminology network.

Path Parameters

conceptId
integer
required
The unique OMOP concept ID to check for relationships

Query Parameters

relationship_types
string
Comma-separated list of relationship types to check (e.g., “Maps to”, “Is a”)
vocabulary_ids
string
Comma-separated list of vocabulary IDs to limit relationship check
include_reverse
boolean
default:"true"
Include reverse relationships (concepts that relate to this concept)
include_invalid
boolean
default:"false"
Include relationships to invalid/deprecated concepts
vocab_release
string
Specific vocabulary release version (e.g., “2024.1”)

Response

success
boolean
required
Indicates whether the request was successful
data
object
required
Response data containing relationship check results
meta
object
required
Response metadata and API information
curl -X GET "https://api.omophub.com/v1/concepts/201826/relations/any" \
  -H "Authorization: Bearer YOUR_API_KEY"
{
  "success": true,
  "data": {
    "concept_id": 201826,
    "has_relations": true,
    "relation_summary": {
      "total_count": 15,
      "outbound_count": 8,
      "inbound_count": 7,
      "relationship_types": ["Maps to", "Is a", "Has finding site", "May be a"],
      "connected_vocabularies": ["SNOMED", "ICD10CM", "ICD9CM"],
      "has_standard_mappings": true
    },
    "checks_performed": {
      "included_relationship_types": ["all"],
      "included_vocabularies": ["all"],
      "included_reverse_relations": true,
      "included_invalid_relations": false
    }
  },
  "meta": {
    "request_id": "req_check_relations_123",
    "timestamp": "2024-12-22T10:00:00Z",
    "vocab_release": "2025.2"
  }
}

Usage Examples

Simple Relationship Check

Check if a concept has any relationships:
curl -X GET "https://api.omophub.com/v1/concepts/201826/relations/any" \
  -H "Authorization: Bearer YOUR_API_KEY"

Check for Standard Mappings

Check if concept has “Maps to” relationships:
curl -G "https://api.omophub.com/v1/concepts/201826/relations/any" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  --data-urlencode "relationship_types=Maps to"

Check Cross-Vocabulary Relations

Check relationships to specific vocabularies:
curl -X GET "https://api.omophub.com/v1/concepts/201826/relations/any?vocabulary_ids=ICD10CM,ICD9CM" \
  -H "Authorization: Bearer YOUR_API_KEY"

Batch Checking in Applications

Use in loops or batch processing to filter connected concepts:
const conceptIds = [201826, 4182210, 313217];
const connectedConcepts = [];

for (const id of conceptIds) {
  const response = await fetch(`/v1/concepts/${id}/relations/any`);
  const result = await response.json();
  const data = result.data;

  if (data.has_relations && data.relation_summary.has_standard_mappings) {
    connectedConcepts.push({
      concept_id: id,
      relation_count: data.relation_summary.total_count
    });
  }
}

Important Notes

  • Performance optimized - Much faster than fetching full relationship data
  • Filtering support - All the same filters as the full relations endpoint
  • UI integration - Perfect for showing relationship icons or badges
  • Batch processing - Ideal for filtering large concept lists
  • Standard mappings - The has_standard_mappings flag is useful for data quality checks
I