Aller au contenu

Démarrage rapide

Creez votre premiere tache de transcription avec Video To Text API.

Ce guide parcourt le flux API complet : creer un upload, envoyer le fichier media, terminer l’upload, creer une tache de transcription et interroger les resultats.

Rendez-vous sur Video To Text pour gerer votre compte, creer des cles API et revenir a l’espace de travail du produit.

Definissez l’URL de base de l’API et la cle :

Fenêtre de terminal
export VTT_API_BASE_URL="https://api.videototext.dev"
export VTT_API_KEY="vtt_xxxxx"

Creez une URL d’upload signee pour le fichier media.

Fenêtre de terminal
curl -X POST "https://api.videototext.dev/v1/uploads" \
-H "Authorization: Bearer $VTT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"filename": "meeting.mp4",
"mimetype": "video/mp4"
}'

La reponse inclut les champs necessaires pour les etapes suivantes :

{
"data": {
"uploadUrl": "https://storage.example.com/signed-upload-url",
"fileKey": "uploads/example.mp4",
"fileUrl": "https://static.example.com/uploads/example.mp4",
"uploadId": "00000000-0000-0000-0000-000000000000",
"expiresAt": "2026-06-06T10:00:00.000Z"
},
"meta": {}
}

Uploadez le fichier binaire directement vers uploadUrl. Utilisez la meme valeur Content-Type que celle fournie lors de la creation de l’upload.

Fenêtre de terminal
curl -X PUT "https://storage.example.com/signed-upload-url" \
-H "Content-Type: video/mp4" \
--data-binary "@meeting.mp4"

Terminez la session d’upload afin que Video To Text puisse valider l’objet et creer un asset.

Fenêtre de terminal
curl -X POST "https://api.videototext.dev/v1/uploads/$UPLOAD_ID/operations/complete" \
-H "Authorization: Bearer $VTT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"fileKey": "uploads/example.mp4",
"fileUrl": "https://static.example.com/uploads/example.mp4",
"filename": "meeting.mp4",
"mimetype": "video/mp4",
"fileSize": 10485760
}'

La reponse retourne l’assetId utilise pour creer une tache de transcription.

{
"data": {
"assetId": "00000000-0000-0000-0000-000000000000"
},
"meta": {}
}

Creez la tache a partir de l’asset uploade. Le mode par defaut est balanced.

Fenêtre de terminal
curl -X POST "https://api.videototext.dev/v1/tasks" \
-H "Authorization: Bearer $VTT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"assetId": "00000000-0000-0000-0000-000000000000",
"language": "Auto",
"timestampMode": "CHUNK",
"transcriptionMode": "balanced"
}'

Utilisez precision lorsque le workflow privilegie la precision plutot que le cout.

La reponse retourne data.task.transcriptId ; utilisez cette valeur comme TASK_ID lors du polling.

ModeIdeal pour
balancedTranscription rapide et rentable pour la plupart des workflows de production.
precisionTranscription plus precise lorsque la qualite compte plus que le cout.

Interrogez l’endpoint de tache jusqu’a ce que status devienne SUCCEEDED, FAILED ou CANCELED.

Fenêtre de terminal
curl "https://api.videototext.dev/v1/tasks/$TASK_ID" \
-H "Authorization: Bearer $VTT_API_KEY"

Les taches reussies retournent le texte de transcription, les champs publics de timing par segment, les timestamps par mot, les details du fichier source et les credits factures.