Paste a link
A video link.
Paste an Instagram reel link. Get the speech as text.
A video link.
Each line comes back with its start time.
Copy the text, or save it as .txt or .srt.
Paste a link and get the text. No signup and nothing to install.
Each line keeps its start time.
.txt or .srt.Give an agent the words in a video, with times attached.
Download an .srt file and load it into a player.
Search a talk as text and cite the time.
Start from what was actually said.
1curl -G "https://api.socialscrape.dev/v1/transcript" \2 -H "x-api-key: $SOCIALSCRAPE_API_KEY" \3 --data-urlencode "url=https://www.youtube.com/watch?v=dQw4w9WgXcQ"1import os2import requests34params = {5 "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",6}7res = requests.get(8 "https://api.socialscrape.dev/v1/transcript",9 headers={"x-api-key": os.environ["SOCIALSCRAPE_API_KEY"]},10 params=params,11)12body = res.json()1314if body["ok"]:15 print(body["data"])16else:17 print(body["error"]["code"], body["error"]["message"])1const url = new URL("https://api.socialscrape.dev/v1/transcript");2url.search = new URLSearchParams({3 "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"4}).toString();5const res = await fetch(url, {6 headers: { "x-api-key": process.env.SOCIALSCRAPE_API_KEY! },7});8const body = await res.json();910if (body.ok) {11 console.log(body.data);12} else {13 console.error(body.error.code, body.error.message);14}{ "ok": true, "credits_charged": 1, "credits_remaining": 4999, "cached": false, "cached_at": null, "request_id": "req_54e6289e14c7b0e7ad9acc2d", "data": { "object": "transcript", "platform": "youtube", "video_id": "dQw4w9WgXcQ", "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ", "language": "en", "source": "captions", "duration_seconds": 213, "text": "Example transcript text. This is illustrative, not the video's real captions.", "segments": [ { "start": 0, "end": 4, "text": "Example transcript text." }, { "start": 4, "end": 9, "text": "This is illustrative, not the video's real captions." } ], "available_languages": [ "en" ], "extra": null }, "cursor": null, "has_more": null }
Short reels work best. Long videos take longer, and in the API they cost one credit per started minute after the first two minutes.
No. It returns the spoken words. The post caption is in the Instagram post endpoint.
Yes. No account and no card. Each visitor gets a limited number of lookups an hour, so it stays free for everyone.
Send GET /v1/transcript with your key in the x-api-key header. A request costs 1 credit for captions; AI transcription 1 up to 2 minutes, then 5 per started minute of the whole video. A repeat of something fetched recently costs 0 credits, and failed requests are free. See the reference.