Native transcripts
- Manual and automatic captions
- Language selection
- Millisecond timestamps
- Plain text or structured segments
Retrieve captions from public YouTube videos or generate a transcript when captions are missing. One API with timestamped results, explicit jobs and workspace quotas.
No credit card required. Read the documentation
Built and used at Webba

Gems, our video product at Webba, uses Capslane for transcript analysis and footage search. Its migration kept timestamped segments and added generated fallback for videos without captions.
Read the Gems implementation or inspect the dated 200-video benchmark and its limits.
Create an API key in the dashboard, send a video URL and receive the transcript as text or timestamped segments.
Read the transcript guideGET /v1/transcriptcurl 'https://capslane.com/v1/transcript?url=VIDEO_ID' \
-H 'x-api-key: vxl_live_...'{
"lang": "en",
"content": [
{ "text": "...", "offset": 18800, "duration": 1000, "lang": "en" }
],
"source": "native",
"cached": true
}A REST endpoint, familiar JSON and a complete OpenAPI schema.
Inspect request status, latency, cache use and recent failures.
Server-side keys, isolated workspaces and enforced monthly limits.
Every plan includes native extraction, AI fallback and the shared transcript cache.
For testing an integration or a small personal project.
No payment required
50 requests per month
For products moving from prototype to regular usage.
Billed monthly
3,000 requests per month
For production workloads with steady monthly volume.
Billed monthly
30,000 requests per month
For teams processing video at higher volume.
Billed monthly
300,000 requests per month
Prices exclude VAT. Usage limits reset monthly. Annual billing includes two months free.
Auto mode starts a transcription job and returns a job ID. Poll the job endpoint until the transcript is ready.
Yes. Pass an ISO language code. If that track is unavailable, Capslane returns the first available transcript and lists the other languages.
Yes. Native, generated and cached transcripts use the same response structure. The cached field tells you when no extraction was needed.
Keep it on your server and send it through the x-api-key header. Never expose a production key in browser code.
Create a workspace and get 50 requests each month.