Audio URL transcript API

Vos fichiers audio sont déjà en ligne : transcrivez-les où ils sont

S3, Cloudflare R2, un CDN, un serveur interne ou une URL signée à durée limitée. Vous passez audio_url, l’API télécharge et transcrit. Rien à ré-uploader.

requête
# Transcrire un MP3 déjà stocké (presigned S3, R2, CDN…)
curl -X POST https://api.techtuel.com/v1/transcriptions \
  -H "Authorization: Bearer $TECHTUEL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
        "audio_url": "https://cdn.example.com/episodes/142.mp3?sig=…",
        "preferred_language": "fr"
      }'
# => 202 { "id": "job_4d90", "status": "processing" }

curl "https://api.techtuel.com/v1/transcriptions/job_4d90?format=txt" \
  -H "Authorization: Bearer $TECHTUEL_API_KEY"
réponse
{
  "id": "job_4d90",
  "status": "completed",
  "title": "Épisode 142",
  "language": "fr",
  "detected_language": "en",
  "translated": true,
  "minutes": 54.2,
  "source_kind": "url",
  "transcript": "Bienvenue dans cet épisode…",
  "segments": [
    { "start_seconds": 0, "text": "Bienvenue dans cet épisode" },
    { "start_seconds": 6.1, "text": "aujourd’hui on parle d’infrastructure" }
  ]
}

Si vous avez déjà une brique de stockage, ré-uploader vos médias vers une API de transcription est du travail pur perte : un aller-retour supplémentaire, un doublon de bande passante, un deuxième endroit où le fichier existe. Vos MP3 sont dans un bucket S3, un espace Cloudflare R2, un CDN ou un NAS derrière un reverse proxy — ils n’ont aucune raison d’en bouger.

Le champ audio_url est fait pour ce cas. Vous passez l’URL du fichier tel qu’il est stocké, l’API la télécharge côté serveur et la transcrit. Vous économisez un upload complet et gardez votre stockage comme unique source de vérité pour les médias.

Les URLs signées à durée limitée fonctionnent telles quelles : une presigned URL S3, un lien R2 signé ou un jeton d’accès dans la query string sont téléchargés pendant leur fenêtre de validité. Prévoyez simplement une expiration assez large pour couvrir la récupération du fichier. Si vous n’avez pas encore de stockage, POST /v1/uploads vous donne une URL présignée et un upload_id à utiliser à la place.

Pourquoi cette API

Pas de ré-upload

Le fichier reste dans votre bucket. Vous transmettez une URL, pas des mégaoctets : un aller-retour et une facture de bande passante en moins.

URLs signées acceptées

Presigned S3, lien R2 signé, jeton en query string : tant que l’URL est téléchargeable pendant sa fenêtre de validité, l’API la consomme.

Ou un upload présigné

Pas de stockage de votre côté ? POST /v1/uploads renvoie put_url, put_headers et un upload_id à passer ensuite à la place de audio_url.

Tarifs lisibles

Gratuit100 crédits/mois (≈ 50 min audio), sans carte bancaire
Pro2000 crédits/mois (≈ 1000 min audio), 120 req/min

Questions fréquentes

Le fichier doit-il être public ?+

Non. Il doit seulement être téléchargeable par l’API au moment de l’appel. Une URL signée à durée limitée convient parfaitement, tant que la fenêtre couvre la récupération du fichier.

Quels formats audio sont acceptés ?+

MP3, M4A, AAC, OGG, Opus, WAV, WebM et FLAC pour l’audio. Les conteneurs vidéo courants (MP4, MPEG, WebM, QuickTime, MKV) sont également acceptés, leur piste audio étant extraite.

Puis-je demander la transcription dans une autre langue ?+

Oui, avec preferred_language (code ISO 639-1). C’est une préférence : la réponse expose detected_language pour la langue réellement parlée, language pour celle du texte servi, et translated pour savoir si une traduction a eu lieu.

Et si je n’ai pas de stockage ?+

Appelez POST /v1/uploads avec content_type, filename et size_bytes : vous recevez put_url et put_headers pour un PUT direct, puis vous créez le job avec l’upload_id renvoyé.

Le fichier est-il conservé après traitement ?+

Non. Les médias uploadés sont supprimés après traitement, et un fichier récupéré depuis votre URL n’est pas conservé. Seule la transcription reste disponible sur le job.

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