pub struct Topic {Show 14 fields
pub id: String,
pub display_name: Option<String>,
pub description: Option<String>,
pub keywords: Option<Vec<String>>,
pub ids: Option<TopicIds>,
pub subfield: Option<TopicHierarchyLevel>,
pub field: Option<TopicHierarchyLevel>,
pub domain: Option<TopicHierarchyLevel>,
pub siblings: Option<Vec<TopicSibling>>,
pub works_count: Option<i64>,
pub cited_by_count: Option<i64>,
pub works_api_url: Option<String>,
pub updated_date: Option<String>,
pub created_date: Option<String>,
}Expand description
A research topic in OpenAlex’s 3-level topic hierarchy.
Topics are organized as: domain > field > subfield > topic. There are ~4,500 topics. Each topic has an AI-generated description and keywords. Works are assigned up to 3 topics with relevance scores.
§Example
{
"id": "https://openalex.org/T10001",
"display_name": "Malaria Control and Epidemiology",
"description": "This cluster of papers focuses on...",
"keywords": ["malaria", "plasmodium falciparum", "antimalarial drugs", ...],
"subfield": {"id": 2725, "display_name": "Infectious Diseases"},
"field": {"id": 27, "display_name": "Medicine"},
"domain": {"id": 4, "display_name": "Health Sciences"},
"works_count": 143562
}§ID formats
Topics can only be retrieved by OpenAlex ID (T...).
§Note
Within Topic entities, the hierarchy level id fields are integers. When
topics appear nested in Work entities, these same fields are strings. The
TopicHierarchyLevel::id field uses serde_json::Value to handle this.
Fields§
§id: StringOpenAlex ID URI (e.g. "https://openalex.org/T10001").
display_name: Option<String>Human-readable topic name (e.g. "Malaria Control and Epidemiology").
description: Option<String>AI-generated description of this research topic.
keywords: Option<Vec<String>>Keywords associated with this topic, useful for understanding its scope.
ids: Option<TopicIds>External identifiers (OpenAlex, Wikipedia).
subfield: Option<TopicHierarchyLevel>The subfield this topic belongs to in the hierarchy.
field: Option<TopicHierarchyLevel>The field this topic belongs to in the hierarchy.
domain: Option<TopicHierarchyLevel>The domain this topic belongs to in the hierarchy.
siblings: Option<Vec<TopicSibling>>Other topics at the same level in the hierarchy (siblings under the same subfield).
works_count: Option<i64>Total number of works assigned to this topic.
cited_by_count: Option<i64>Total number of citations received by works in this topic.
works_api_url: Option<String>API URL to retrieve works in this topic.
updated_date: Option<String>ISO 8601 timestamp of the last update to this record.
created_date: Option<String>ISO 8601 date when this record was first created.