---
title: "Api Earnings Transcript Summary"
method: GET
path: "/api/earnings-transcript/summary"
---

# Api Earnings Transcript Summary

`GET /api/earnings-transcript/summary`

## Request

- Base URL: `https://www.oxfordledge.com` (the document declares no server; this is the origin it was published from)
- URL: `https://www.oxfordledge.com/api/earnings-transcript/summary`
- Auth: none declared

AI-generated 3-5 bullet summary of an earnings transcript.

Tier-gated: Power User ('professional') and above. A lower tier gets a
402 with the structured {requiredTier, currentTier, upgrade_url} body.
The summary is generated on first call and cached — subsequent calls for
the same ticker/quarter/year return the cached version instantly.

If no transcript or press release is cached for the given ticker/quarter/year,
a 404 is returned. Use GET /api/earnings-transcript first to populate the
cache (which triggers the 8-K fallback automatically if FMP returns empty).

OWNER ruling 2026-10-04: the parental-consent gate runs first, before the
store is touched or a summary generated.

## Query parameters

- `ticker` string
- `quarter` string
- `year` string

## Response `200`

Successful Response

- EarningsTranscriptSummaryResponse: `GET /api/earnings-transcript/summary` — Power User tier-gated AI summary of an earnings transcript. The summary is plain text (3-5 bullets) generated on first call and cached for re-fetch.
  - `ticker` string, required: Resolved + uppercased ticker.
  - `quarter` string, required: Q1 | Q2 | Q3 | Q4.
  - `year` integer, required: Fiscal year of the transcript.
  - `summary` string, required: 3-5 bullet AI summary of the call.

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/oxfordledge/apis/oxford-ledge-api.md) · [All operations](https://skmtc.dev/oxfordledge/apis/oxford-ledge-api/llms.txt) · [OpenAPI document](https://skmtc.dev/oxfordledge/apis/oxford-ledge-api/revisions/e832a1260f0b?raw)
