Documentation complète de l'API Voix2Texte pour les développeurs. Points d'accès, authentification et exemples de code.
Documentation complète de l'API REST de Voix2Texte pour les développeurs. Apprenez l'authentification, les points d'accès principaux, les webhooks et comment intégrer la transcription automatique dans vos systèmes.
Système d'authentification sécurisé via tokens API.
Envoi automatisé de fichiers pour transcription.
Notifications automatiques sur la progression.
Ne partagez jamais votre Clé API publiquement. Stockez-la dans des variables d'environnement et jamais dans du code source versionné.
Incluez votre Clé API dans l'en-tête Authorization de toutes les requêtes :
curl -X POST https://api.vozparatexto.com.br/v1/transcribe \
-H "Authorization: Bearer VOTRE_CLE_API" \
-H "Content-Type: multipart/form-data" \
-F "file=@audio.mp3"
POST /v1/upload
Content-Type: multipart/form-data
Paramètres :
file (obligatoire) - Fichier audio/vidéolanguage (optionnel) - Code de la langue (ex : "fr-FR")engine (optionnel) - Moteur de transcription ("ASSEMBLYAI", "WHISPER", "ELEVENLABS")speaker_detection (optionnel) - Activer l'identification des locuteurs (boolean)Réponse :
{
"id": "upload_abc123",
"status": "UPLOADED",
"duration": 120.5,
"fileSize": 2048000
}
POST /v1/transcribe
Content-Type: application/json
Body :
{
"uploadId": "upload_abc123",
"engine": "ASSEMBLYAI",
"speakerDetection": true,
"language": "fr-FR"
}
GET /v1/transcription/{id}/status
Réponse :
{
"id": "trans_xyz789",
"status": "COMPLETED",
"progress": 100,
"text": "Texte transcrit...",
"duration": 120.5,
"creditsUsed": 8
}
GET /v1/transcription/{id}/export?format=json
Formats disponibles : json, txt, srt, vtt, docx, pdf
| Point d'accès | Limite | Fenêtre | |---|---|---| | Upload | 10 requêtes | 60 secondes | | Transcription | 10 requêtes | 60 secondes | | Consultation | 60 requêtes | 60 secondes | | Export | 30 requêtes | 60 secondes |
Utilisez des webhooks au lieu du polling pour suivre le statut des transcriptions. Cela réduit considérablement le nombre de requêtes et améliore l'efficacité de l'intégration.
const FormData = require('form-data');
const fs = require('fs');
const axios = require('axios');
const API_KEY = process.env.VOZPARATEXTO_API_KEY;
const BASE_URL = 'https://api.vozparatexto.com.br/v1';
async function transcribeFile(filePath) {
// 1. Upload
const form = new FormData();
form.append('file', fs.createReadStream(filePath));
const upload = await axios.post(`${BASE_URL}/upload`, form, {
headers: {
'Authorization': `Bearer ${API_KEY}`,
...form.getHeaders()
}
});
// 2. Transcrire
const transcription = await axios.post(`${BASE_URL}/transcribe`, {
uploadId: upload.data.id,
engine: 'ASSEMBLYAI',
speakerDetection: true
}, {
headers: { 'Authorization': `Bearer ${API_KEY}` }
});
return transcription.data;
}
import requests
import os
API_KEY = os.environ['VOZPARATEXTO_API_KEY']
BASE_URL = 'https://api.vozparatexto.com.br/v1'
def transcribe_file(file_path):
headers = {'Authorization': f'Bearer {API_KEY}'}
# 1. Upload
with open(file_path, 'rb') as f:
upload = requests.post(
f'{BASE_URL}/upload',
headers=headers,
files={'file': f}
)
# 2. Transcrire
transcription = requests.post(
f'{BASE_URL}/transcribe',
headers=headers,
json={
'uploadId': upload.json()['id'],
'engine': 'ASSEMBLYAI',
'speakerDetection': True
}
)
return transcription.json()
| Code | Signification | Action Recommandée | |---|---|---| | 400 | Requête invalide | Vérifiez les paramètres | | 401 | Non authentifié | Vérifiez votre Clé API | | 403 | Sans permission | Vérifiez les permissions du token | | 429 | Rate limit dépassé | Attendez et réessayez | | 500 | Erreur interne | Réessayez après 30 secondes |