Paste a link
A video link.
Paste a link to an X post with a video. 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/twitter/tweet/transcript" \2 -H "x-api-key: $SOCIALSCRAPE_API_KEY" \3 --data-urlencode "url=https://x.com/coinbase/status/2066970874016645585"1import os2import requests34params = {5 "url": "https://x.com/coinbase/status/2066970874016645585",6}7res = requests.get(8 "https://api.socialscrape.dev/v1/twitter/tweet/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/twitter/tweet/transcript");2url.search = new URLSearchParams({3 "url": "https://x.com/coinbase/status/2066970874016645585"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_41c6a270e7acc13d323bdbae", "data": { "object": "transcript", "platform": "twitter", "video_id": "2111731581702598777", "url": "https://x.com/yashsrivasta7a/status/2111731581702598777", "language": "en", "source": "ai", "duration_seconds": 45, "text": "Example transcript text. This is illustrative, not the video's real speech.", "segments": [ { "start": 0, "end": 45, "text": "Example transcript text. This is illustrative, not the video's real speech." } ], "available_languages": null, "extra": null }, "cursor": null, "has_more": null }
Posts with no video, GIFs and videos over two minutes are not transcribed here. The API can do longer videos when you ask for them.
Yes, and links to the post's video page.
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/twitter/tweet/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.