Transcrire un fichier audio par API en une requête
Placez le fichier dans la partie file du formulaire multipart. Ajoutez au besoin language, diarize, source ou webhook_url. Consultez l’exemple multipart complet et utilisez un webhook pour recevoir l’état final.
Envoyez les octets du fichier, pas son chemin local dans un objet JSON. Laissez votre client HTTP définir la délimitation multipart. Un fichier vide ou une extension non prise en charge demande de corriger l’entrée, pas de relancer le même appel.
Vérifiez séparément le poids et la durée. Un enregistrement très compressé peut peser moins de 95 Mo tout en dépassant 5 heures. À l’inverse, une courte vidéo haute résolution peut nécessiter un import en plusieurs parties. Le nombre d’octets détermine le protocole d’envoi, pas la durée autorisée.
curl -X POST "https://api.transcript1.com/v1/transcriptions?wait=60" \
-H "Authorization: Bearer $TRANSCRIPT1_API_KEY" \
-F [email protected] \
-F language=autoPréparer l’envoi d’un fichier volumineux
Réservez l’import avec le nom et la taille du fichier. L’API renvoie le découpage à suivre et un X-Upload-Token propre à cet import. Le guide d’import en plusieurs parties décrit chaque appel.
Suivez le découpage renvoyé par l’API : chaque partie possède un index, une position dans le fichier et une taille. Lisez exactement cette plage d’octets. La dernière partie peut être plus courte. Le token autorise les PUT binaires pendant 1 heure ; il ne remplace pas votre clé API pour les autres appels.
Gardez la même Idempotency-Key pour une réservation que vous pourriez devoir retenter. Si le token expire, reprenez la réservation avec cette clé et les mêmes paramètres : vous obtenez un nouveau token pour l’import existant. Ne créez pas une réservation à chaque coupure.
curl -X POST "https://api.transcript1.com/v1/transcriptions" \
-H "Authorization: Bearer $TRANSCRIPT1_API_KEY" \
-H "Idempotency-Key: interview-2026-10-13" \
-H "Content-Type: application/json" \
-d '{"upload":{"filename":"interview.m4a","size":48210334,"mime_type":"audio/mp4"}}'Envoyez les parties, puis lancez la transcription
Envoyez chaque partie par PUT à son URL avec le token, puis confirmez la fin de l’import. transcript1 vérifie leur présence avant de lancer la transcription. La référence des endpoints d’import détaille le suivi et la confirmation.
Pour reprendre, consultez GET /v1/transcriptions/:id/upload et comparez received_chunks au découpage initial. Envoyez seulement ce qui manque. Renvoyer une partie remplace la précédente ; sa taille doit toujours correspondre à celle prévue. Un code 401 peut simplement signaler un token expiré.
Si la confirmation renvoie 409 upload_incomplete, envoyez les parties manquantes, puis confirmez à nouveau la fin de l’import. Une fois le traitement lancé, consultez la transcription ou attendez le webhook. Dans votre interface, distinguez la progression de l’envoi de celle de la transcription.
curl -X PUT "https://api.transcript1.com/v1/transcriptions/tr_8fK2Lm0PqRsTuVwXyZaBcD/upload/chunks/0" \
-H "X-Upload-Token: t1u_..." \
-H "Content-Type: application/octet-stream" \
--data-binary @chunk-0.bin
curl -X POST "https://api.transcript1.com/v1/transcriptions/tr_8fK2Lm0PqRsTuVwXyZaBcD/upload/complete" \
-H "Authorization: Bearer $TRANSCRIPT1_API_KEY"Un fichier envoyé n’est pas encore un fichier transcrit
À l’état awaiting_upload, l’API attend encore votre fichier. Le traitement ne démarre qu’après confirmation réussie : envoi des octets, vérification de l’import, puis transcription. Si la connexion coupe après la confirmation, consultez l’ID avant de renvoyer quoi que ce soit.
Une équipe peut avoir jusqu’à 20 réservations ouvertes. Après 24 heures sans import terminé, la réservation est annulée et les parties sont supprimées. Quand la transcription atteint un état final, le fichier source est supprimé 24 heures plus tard. Gardez votre propre copie si votre application doit permettre une réécoute.
Pour aider vos utilisateurs à préparer puis relire leur enregistrement, consultez le guide audio en texte. Pour des entretiens, le parcours de recherche explique comment relier participants, citations et passages audio.