---
title: "How a company's call themes move quarter over quarter: each theme's mention count and tone on each of the last scored calls, oldest call first, plus its status on the latest call. Verifier-approved reads only."
method: GET
path: "/v1/stocks/{ticker}/call-themes/history"
tags: ["EarningsCalls"]
---

# How a company's call themes move quarter over quarter: each theme's mention count and tone on each of the last scored calls, oldest call first, plus its status on the latest call. Verifier-approved reads only.

`GET /v1/stocks/{ticker}/call-themes/history`

## Request

- Base URL: `https://api.equibles.com`
- URL: `https://api.equibles.com/v1/stocks/{ticker}/call-themes/history`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/equibles/apis/equibles-api/docs/v1/stocks/:ticker/call-themes/history/get.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `ticker` string, required

## Query parameters

- `calls` integer

## Response `200`

OK

- CallThemeHistoryResponse
  - `ticker` string, nullable
  - `calls` CallThemeHistoryCallDto[], nullable
    - `fiscalYear` integer: The company's own fiscal year.
    - `fiscalQuarter` integer: The fiscal quarter, 1-4.
    - `callDate` string, date-time
    - `unscoredQuartersBefore` integer: Fiscal quarters with no approved insights between the previous returned call and this one; 0 for the oldest call. New and dropped are never claimed across such a gap.
  - `themes` CallThemeHistoryThemeDto[], nullable: Themes raised on the latest call first, by mention count; then earlier themes by when they were last seen.
    - `name` string, nullable: The theme's name on the most recent call that raised it.
    - `status` string, nullable: Status on the latest call: "new" (raised on the latest call only, absent from the previous quarter's call), "recurring" (raised on the latest call and an earlier one), "dropped" (not raised on the latest call, and absent from the call in the quarter right after it was last seen) or "unknown" (that comparison would reach across an unscored quarter, or only one call is scored).
    - `firstSeen` CallThemeHistoryPeriodDto
      - `fiscalYear` integer
      - `fiscalQuarter` integer
    - `lastSeen` CallThemeHistoryPeriodDto
      - `fiscalYear` integer
      - `fiscalQuarter` integer
    - `entries` CallThemeHistoryEntryDto[], nullable: One entry per returned call, in the same order as calls.
      - `fiscalYear` integer
      - `fiscalQuarter` integer
      - `mentionCount` integer, nullable: Computed mention count on this call; null when the call did not raise the theme.
      - `tone` string, nullable: "positive", "neutral" or "risk" on this call; null when the call did not raise the theme.
  - `hasMoreCalls` boolean: True when older scored calls exist beyond the returned window; raise calls (max 12) to include them.
  - `note` string, nullable: Why calls is empty; null when it is not.

## Other responses

- `400`: Bad Request
- `404`: Not Found

## Changes

- **2026-11-06** `666e06778588`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/equibles/apis/equibles-api/changes/v1/stocks/:ticker/call-themes/history/get.md)

---

[API](https://skmtc.dev/equibles/apis/equibles-api.md) - [All operations](https://skmtc.dev/equibles/apis/equibles-api/llms.txt) - [OpenAPI document](https://skmtc.dev/equibles/apis/equibles-api/revisions/83f13ba1a993?raw)
