API REST
API Fast Transcriber
Créez des tâches de transcription pour des liens publics ou des médias importés, puis récupérez du texte structuré et des segments horodatés.
Les médias importés sont envoyés directement vers le stockage d’objets. Les fichiers volumineux ne passent pas par le corps d’une requête Next.js.
URL de base
https://fast-transcriber.com/api/v1Le document OpenAPI 3.1 lisible par machine est disponible à l’adresse /api/v1/openapi.
Authentification
Envoyez une clé API Fast Transcriber active dans l’en-tête Authorization au format Bearer. Le secret complet n’est affiché qu’une seule fois, lors de sa création.
Authorization: Bearer ft_live_replace_mePoints de terminaison
| Méthode | Chemin | Rôle |
|---|---|---|
| POST | /uploads | Préparer une importation directe |
| POST | /uploads/multipart | Terminer une importation multipart |
| DELETE | /uploads/multipart | Annuler une importation multipart |
| POST | /transcriptions | Mettre en file d’attente une URL ou un fichier importé |
| GET | /transcriptions | Lister les tâches récentes |
| GET | /transcriptions/{id} | Récupérer le statut et le résultat |
Transcrire une URL
Fournissez exactement un champ source_url. Les liens publics compatibles utilisent le même processus de résolution des liens que la fonctionnalité du navigateur.
curl --request POST https://fast-transcriber.com/api/v1/transcriptions \
--header "Authorization: Bearer $FAST_TRANSCRIBER_API_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"source_url": "https://www.youtube.com/watch?v=example",
"speaker_diarization": false
}'Une requête réussie renvoie 202 Accepted ainsi qu’un en-tête Location contenant l’URL à interroger.
Importer un fichier
Demandez d’abord une cible présignée en indiquant le nom exact du fichier, sa taille en octets et son type MIME.
curl --request POST https://fast-transcriber.com/api/v1/uploads \
--header "Authorization: Bearer $FAST_TRANSCRIBER_API_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"filename": "interview.mp3",
"content_type": "audio/mpeg",
"size": 1234567
}'- Envoyez les octets vers la cible simple ou multipart renvoyée.
- Conservez la clé de stockage et le fournisseur de stockage renvoyés.
- Mettez une transcription en file d’attente avec cette référence d’importation.
Avant la mise en file d’attente, le serveur vérifie le propriétaire de l’objet, sa taille stockée et son type de média. Les clés créées pour un autre compte sont refusées.
Résultats
Interrogez l’URL de la tâche jusqu’à ce que status soit completed ou failed. Les tâches terminées comprennent le texte et les segments horodatés.
{
"data": {
"id": "95c3fdd8-...",
"filename": "interview.mp3",
"status": "completed",
"created_at": "2026-08-24T16:30:00.000Z",
"duration_seconds": 1842,
"text": "Completed transcript text...",
"segments": []
}
}Erreurs
Chaque erreur de l’API utilise une enveloppe stable contenant un code et un message.
{
"error": {
"code": "daily_limit_reached",
"message": "You've reached your daily upload limit."
}
}| 400 | Requête ou source non valide |
|---|---|
| 401 | Clé API absente, non valide ou révoquée |
| 403 | Fonctionnalité indisponible avec l’offre actuelle |
| 413 | Le fichier dépasse la limite du compte |
| 429 | Limite d’utilisation quotidienne atteinte |
| 503 | Service de traitement indisponible |
Limites
Les tâches de l’API partagent les limites de l’offre du compte avec celles du navigateur. Les requêtes de liste acceptent un paramètre limit compris entre 1 et 100, avec une valeur par défaut de 25. L’identification des intervenants nécessite l’offre Pro.