Une transcription horodatée au segment, pas juste un pavé de texte
Chaque segment porte son start_seconds. C’est cette seule information qui transforme un mur de texte en contenu navigable, cherchable et citable.
# Récupérer le job avec ses segments horodatés curl "https://api.techtuel.com/v1/transcriptions/job_abc123?format=json" \ -H "Authorization: Bearer $TECHTUEL_API_KEY" # Le même contenu en sous-titres, prêt pour un lecteur curl "https://api.techtuel.com/v1/transcriptions/job_abc123?format=vtt" \ -H "Authorization: Bearer $TECHTUEL_API_KEY" -o sous-titres.vtt
{
"id": "job_abc123",
"status": "completed",
"title": "Conférence — Architecture événementielle",
"language": "fr",
"minutes": 46.8,
"transcript": "On va commencer par le vocabulaire…",
"segments": [
{ "start_seconds": 0, "text": "On va commencer par le vocabulaire" },
{ "start_seconds": 8.4, "text": "un événement décrit un fait passé" },
{ "start_seconds": 15.2, "text": "une commande exprime une intention" }
]
}Un transcript sans horodatage est une impasse produit. Vous pouvez l’afficher, vous pouvez l’indexer en plein texte, mais vous ne pouvez rien faire de ce que vos utilisateurs attendent réellement : cliquer sur une phrase et y sauter, retrouver le moment où un sujet a été abordé, découper proprement pour un modèle. Techtuel renvoie donc systématiquement, à côté du champ transcript, un tableau segments dont chaque entrée porte un start_seconds en secondes et son texte.
Soyons précis sur la granularité : les timestamps sont au niveau du segment, pas du mot. Un segment correspond à un morceau naturel de parole, typiquement une phrase ou un fragment de phrase. C’est exactement la granularité dont on a besoin pour un sous-titre, un saut dans un lecteur ou un chunk de recherche — et c’est aussi ce qui garde la réponse légère sur un contenu long.
Ce que ça débloque concrètement : navigation dans un lecteur (un clic sur une ligne positionne la lecture à start_seconds), recherche intra-vidéo (indexez le texte du segment, remontez le timestamp dans les résultats), génération de chapitres (regroupez les segments par thème et prenez le start_seconds du premier), citations cliquables dans un compte-rendu, découpage RAG où chaque chunk garde son ancre temporelle, et bien sûr sous-titres : ?format=srt ou ?format=vtt construit le fichier directement à partir de ces segments.
Pourquoi cette API
Segments, tout de suite
Le GET d’un job renvoie déjà segments dans l’enveloppe typée. Pas de second appel ?format=json pour récupérer les timestamps.
Sous-titres sans code
?format=srt et ?format=vtt produisent le fichier à partir des mêmes segments. Aucune logique de découpage à écrire de votre côté.
Chunks prêts pour le RAG
Chaque segment est une unité de texte avec son ancre temporelle : indexez-le tel quel et vos réponses citent le bon instant.
Tarifs lisibles
Questions fréquentes
Les timestamps sont-ils disponibles au mot ?+
Non, la granularité est le segment. Chaque segment expose start_seconds et son texte, ce qui couvre les sous-titres, la navigation dans un lecteur et le découpage pour la recherche.
Comment faire pointer un clic vers le bon moment ?+
Affichez chaque segment comme une ligne cliquable et positionnez la lecture sur son start_seconds. Aucun calcul supplémentaire n’est nécessaire.
Comment générer des chapitres ?+
Regroupez des segments consécutifs par thème et utilisez le start_seconds du premier segment du groupe comme début de chapitre.
Peut-on obtenir directement du SRT ou du VTT ?+
Oui, avec ?format=srt ou ?format=vtt sur la récupération du job. Le fichier est construit à partir des segments, sans travail de mise en forme de votre côté.
Les segments conviennent-ils à un pipeline RAG ?+
Oui. Chaque segment est un morceau de texte court avec une ancre temporelle : vous pouvez les indexer tels quels, ou en regrouper plusieurs en gardant le start_seconds du premier comme référence de citation.
Autres façons d'intégrer l'API
Essai gratuit, sans carte bancaire
Générez une clé API et transcrivez votre première source en moins d'une minute. Quota mensuel gratuit pour tester en conditions réelles.
Commencer avec l'API