> **For coding agents and LLMs:** This is one Social Fetch marketing page (markdown export). For API orientation start with [`/llms.txt`](https://www.socialfetch.dev/llms.txt); for auth and crawl rules use [`/agents.txt`](https://www.socialfetch.dev/agents.txt); for every operation use [`/llms-endpoints.txt`](https://www.socialfetch.dev/llms-endpoints.txt).

## This page

- **On-site (HTML):** <https://www.socialfetch.dev/platforms/linkedin/posts-transcript>
- **Markdown (.mdx) URL:** <https://www.socialfetch.dev/platforms/linkedin/posts-transcript.mdx>

---

# LinkedIn transcript API

Transcribe spoken audio from a public LinkedIn post video — billed only when a non-empty transcript comes back.

`GET /v1/linkedin/posts/transcript` takes a public post `url`. On a completed 200, branch on `data.lookupStatus` (`found` / `not_found` / `lookup_failed`). Unlike Instagram or X, `found` here means a non-empty plain string in `data.transcript` plus `data.post.url`. When speech is missing, the API returns `not_found` with `transcript: null` (and may still echo `post.url`) — that outcome charges 0 credits.

Videos over the supported transcription length return HTTP 400 `video_too_long_for_transcription` instead of a null string on 200. There is no `useAiFallback` and no timed-segment payload. Pricing is 1 credit when a transcript is found, 0 when unavailable; confirm with `meta.creditsCharged`.

## Request

- **Endpoint:** `GET /v1/linkedin/posts/transcript`
- **Credits:** 1 credit when a transcript is found
Free when a transcript is unavailable
- **Input:** by post URL
- **Full reference:** [docs](https://www.socialfetch.dev/docs/api/v1/linkedin/posts/transcript/get)
- **Platform page:** [/platforms/linkedin](https://www.socialfetch.dev/platforms/linkedin)

## FAQ

### How do I get a LinkedIn post video transcript via API?

Call `GET /v1/linkedin/posts/transcript` with your Social Fetch API key (`x-api-key`) and a public LinkedIn post `url`. Read `data.lookupStatus`, then `data.post` and `data.transcript`. See the API docs for parameters and examples.

### How much does the LinkedIn transcript endpoint cost?

1 credit when a transcript is found; 0 credits when a transcript is unavailable, as documented on this page. Confirm every response with meta.creditsCharged — that field is the billing source of truth.

### What URL formats does the LinkedIn transcript API accept?

A public LinkedIn post permalink whose video you want transcribed. Pass the full link as `url`. Person `/in/…` pages belong on `GET /v2/linkedin/profiles`. Company pages belong on `GET /v1/linkedin/companies`.

### What format is the LinkedIn transcript response?

When status is `found`, `data.transcript` is a non-empty plain string and `data.post` includes the requested URL. This is not WebVTT and not timed segments. Always check `data.lookupStatus` before assuming text is present.

### How does LinkedIn define found vs no transcript?

`found` means a non-empty transcript was returned. When speech is unavailable, the API returns `not_found` (or `lookup_failed`) with `transcript: null` and charges 0 credits — even if `post.url` is still present. Persist `meta.requestId` when you need to debug a miss.

### What happens if a LinkedIn video is too long to transcribe?

The API returns HTTP 400 with `video_too_long_for_transcription`. That is not the same as a 200 with `transcript: null`. Persist `meta.requestId` / `error.requestId` if you need support on a rejected clip.

### LinkedIn transcript vs LinkedIn post detail?

Use `GET /v1/linkedin/posts/transcript` for spoken text from post video. Use `GET /v1/linkedin/posts` for post or article metadata, author, and engagement. They are different paths on the LinkedIn hub.
