Dokümantasyonİlk transkripsiyonunuzu oluşturun
İlk transkripsiyonunuzu oluşturun
API anahtarınızı alın; cURL, Python veya Node.js ile bir video bağlantısını ya da dosyayı yazıya çevirin.
Başlamak için bir API anahtarı oluşturun, ardından video bağlantınızı veya dosyanızı gönderin. Tüm isteklerde https://api.transcript1.com adresini kullanın ve API anahtarınızı Authorization başlığına ekleyin.
1. Hesabınızı ve API anahtarınızı hazırlayın
/signup sayfasında e-posta adresinizle, Google veya Microsoft hesabınızla kaydolun. E-postanızı doğruladığınızda 60 ücretsiz dakika hesabınıza eklenir. Google veya Microsoft ile kaydolursanız bu dakikaları hemen kullanabilirsiniz. Ücretsiz dakikalar yalnızca bir kez verilir; kart bilgisi gerekmez.
Panelde “API keys” sayfasını açın (/dashboard/account/tokens) ve bir anahtar oluşturun. Anahtarınız t1_ ile başlar. Yalnızca bir kez görebileceğiniz için hemen kopyalayın. Terminalde TRANSCRIPT1_API_KEY ortam değişkenini ayarlayın:
export TRANSCRIPT1_API_KEY="t1_..."2. Video bağlantısını gönderin
YouTube, X, TikTok, Instagram, Facebook, Bluesky, Twitch, Dailymotion, Pinterest, LinkedIn veya Snapchat bağlantısı gönderebilirsiniz. Hangi herkese açık kayıtların ve bağlantıların çalıştığını Kaynaklar ve seçenekler sayfasından kontrol edin. Platformu API bağlantıdan belirler; platform alanını doldurmanız gerekmez. Aşağıdaki örnek YouTube içindir.
Bağlantıyı POST /v1/transcriptions ile gönderin. Sorguya wait=60 eklediğinizde API, yanıt vermeden önce en fazla 60 saniye bekler. Bu yanıt transkript metnini içermez. Python örneği metni almak için ayrıca GET /v1/transcriptions/:id?wait=60 çağrısı yapar. Node.js SDK ise anahtarınızı TRANSCRIPT1_API_KEY üzerinden okur, transkripsiyonun bitmesini bekler ve transkripti alır.
cURL
curl -X POST "https://api.transcript1.com/v1/transcriptions?wait=60" \
-H "Authorization: Bearer $TRANSCRIPT1_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://www.youtube.com/watch?v=dQw4w9WgXcQ"}'Python
import os
import requests
headers = {"Authorization": f"Bearer {os.environ['TRANSCRIPT1_API_KEY']}"}
response = requests.post(
"https://api.transcript1.com/v1/transcriptions?wait=60",
headers=headers,
json={"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"},
)
response.raise_for_status()
transcription = response.json()
while True:
transcription = requests.get(
f"https://api.transcript1.com/v1/transcriptions/{transcription['id']}?wait=60",
headers=headers,
).json()
if transcription["status"] in ("completed", "failed", "canceled"):
break
if transcription["status"] == "completed":
print(transcription["transcript"]["text"])
else:
print(transcription["status"], transcription["error"])Node.js
Örneği index.mjs dosyasına kaydedip node index.mjs ile çalıştırın. .js uzantısını tercih ederseniz package.json dosyasında "type": "module" ayarını kullanın.
// npm i @transcript1/sdk
import { Transcript1 } from '@transcript1/sdk';
const t1 = new Transcript1();
const transcription = await t1.transcribe('https://www.youtube.com/watch?v=dQw4w9WgXcQ');
console.log(transcription.transcript.text);Varsayılan ayarda önce videonun kendi dilindeki altyazılara bakarız. Bu akış YouTube, X, TikTok, Bluesky, Dailymotion ve LinkedIn için geçerlidir; YouTube ve X'in mevcut altyazı desteği de aynı şekilde çalışır. Kullanılabilir altyazı bulamazsak sesi yapay zeka ile yazıya çeviririz. YouTube dışındaki altyazılarda zaman damgaları segment bazındadır; tek tek kelimelerin zamanları bulunmaz. Doğrudan ses üzerinden çalışmak için source=stt seçin veya konuşmacı ayırmayı açın. captions (yalnızca altyazı) modunda ise ses indirmeyiz ve STT kullanmayız. Ayrıntılar için Kaynaklar ve seçenekler sayfasına bakın.
3. Transkripti alın
HTTP durum kodu, beklemeye devam edip etmemeniz gerektiğini gösterir:
200: Transkripsiyon bekleme süresi içinde sona erdi.statusalanındacompleted,failedveyacanceledgörürsünüz.202: Transkripsiyon devam ediyor.GET /v1/transcriptions/:id?wait=60ile tekrar sorgulayın. Her çağrı en fazla 60 saniye bekler.statusyukarıdaki durumlardan birine gelene kadar aynı işlemi tekrarlayın.
Tamamlanan bir transkripsiyonun kısaltılmış JSON örneği:
{
"id": "tr_8fK2Lm0PqRsTuVwXyZaBcD",
"object": "transcription",
"status": "completed",
"transcript_source": "youtube_captions",
"language": "en",
"billed_minutes": 4,
"transcript": {
"text": "Welcome back to the channel. Today we are looking at how transcripts are made.",
"speakers": [],
"segments": [
{ "start": 0, "end": 4.2, "speaker": null, "language": "en", "text": "Welcome back to the channel." },
{ "start": 4.2, "end": 9.8, "speaker": null, "language": "en", "text": "Today we are looking at how transcripts are made." }
]
}
}Metnin tamamını transcript.text alanında bulursunuz. transcript.segments ise metni zaman damgalı segmentlere böler. Her segmentin başlangıcı start, bitişi end alanında saniye olarak verilir.
Düz metin indirmek için text, altyazı için srt veya vtt formatını seçin:
curl "https://api.transcript1.com/v1/transcriptions/tr_8fK2Lm0PqRsTuVwXyZaBcD?format=srt" \
-H "Authorization: Bearer $TRANSCRIPT1_API_KEY"Örnekte GET /v1/transcriptions/:id?format=srt çağrısıyla SRT dosyası istenir. Metin ve altyazı formatlarını ancak durum completed olduğunda alabilirsiniz. Daha önce sorgularsanız API, durumu kontrol edebilmeniz için JSON nesnesini döndürür.
4. Dosya yükleyin
Bilgisayarınızdaki ses veya video dosyalarını da gönderebilirsiniz. Dosya 95 MB'ı aşmıyorsa tek bir multipart/form-data isteği yeterlidir:
curl -X POST "https://api.transcript1.com/v1/transcriptions?wait=60" \
-H "Authorization: Bearer $TRANSCRIPT1_API_KEY" \
-F [email protected]Daha büyük dosyaları 2 GB'a kadar parçalar halinde yükleyin. Bağlantı kesilirse eksik parçalardan devam edebilirsiniz. Adımlar Dosya yükleme sayfasında.
Buradan devam edin
- Kaynaklar ve seçenekler: Altyazı mı, yapay zeka mı kullanacağınızı, dili ve konuşmacı ayırmayı seçin.
- Dosya yükleme: Dosyanızı tek istekte veya parçalar halinde gönderin.
- Webhook kullanımı: Transkripsiyon sona erdiğinde imzalı bildirim alın.
- MCP sunucusu: Claude, ChatGPT, Cursor, VS Code veya Claude Code üzerinden transkripsiyon başlatın.
- API referansı: Endpoint ve parametrelerin tamamına göz atın.
Son güncelleme 14 Ekim 2026