Zum Inhalt

Topic Spectrum

GET /portfolio/topic/{id}/spectrum

Returns the aggregated OpenAlex research spectrum for one topic.

Parameters

Parameter Type Description
id (path) string Institutional topic ID, not an OpenAlex topic ID.
apikey string Portfolio API key, if configured; alternatively use X-API-Key.
limit integer Maximum list rows. A positive value enables shared pagination.
offset integer List rows to skip with limit. Defaults to 0; negative values become 0.

Authentication, pagination, and error envelopes are described in Portfolio API Basics. Parameters such as json, filter, columns[], full, and aggregate are not supported unless listed here.

Example Request

1
GET /portfolio/topic/biology/spectrum?apikey=YOUR_PORTFOLIO_API_KEY

Example Response

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
{
  "status": 200,
  "count": 1,
  "data": [
    {
      "_id": "T12345",
      "count": 4,
      "sumScore": 3.2,
      "topic": {
        "id": "T12345",
        "name": "Example Biology Topic",
        "score": 0.8
      },
      "total": 8,
      "avg_score": 0.8,
      "share": 0.5,
      "weight": 0.2
    }
  ]
}

The example uses illustrative values. Optional stored or rendered fields may be omitted. Response count is the number of returned list rows before shared pagination.

Returned Fields

Field Description
_id OpenAlex topic ID, e.g. T12345.
count Number of assigned topic occurrences in matching publications.
sumScore Sum of stored topic scores.
topic First stored OpenAlex topic object for this group, including available ID/name/score/hierarchy metadata.
total Number of matching publications with non-empty assigned OpenAlex topics.
avg_score sumScore / count.
share count / total.
weight (count / total) * (sumScore / total).

Response Behavior

Matches publication topics by exact institutional topic ID.

Requires publication type=publication and non-empty openalex.topics. The spectrum helper does not add hide, affiliation, or workflow restrictions. Topics below 5% share are discarded; remaining topics are sorted by weight descending and capped at 25 before shared pagination. Response count is the retained number of topics, not source publications.

When portfolio-spectrum is disabled, or no matching assignments exist, returns a successful empty array. The local data contained no spectrum rows; the non-empty example follows the helper implementation.