TokenLab

Audio & temps réel

Créer une transcription

Transcrit l'audio dans la langue d'entrée

POST
/v1/audio/transcriptions

Corps de la requête

La transcription peut renvoyer directement le texte ou accepter une tâche asynchrone avec HTTP 200, id et status. Pour une tâche acceptée, suivez poll_url ou consultez /v1/tasks/{id}. Pour un long audio synchrone, prévoyez un délai d’au moins 120s.

filefilerequis

Fichier audio à transcrire. Formats pris en charge : flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm. Taille maximale du fichier : 25 MB.

modelstringpar défaut: whisper-1

Identifiant du modèle de transcription, par exemple whisper-1 ou gpt-4o-transcribe. Consultez GET /v1/models?recommended_for=stt pour les choix actuels.

languagestring

Langue de l'audio au format ISO-639-1 (par ex., en, zh, ja).

promptstring

Texte facultatif pour guider le style du modèle ou poursuivre un segment précédent.

response_formatstringpar défaut: json

Format de sortie. Whisper accepte json, text, srt, verbose_json et vtt. Les autres modèles peuvent proposer un choix différent ; vérifiez leurs détails.

temperaturenumber

Température d’échantillonnage de 0 à 1, uniquement pour les modèles compatibles avec ce paramètre.

timestamp_granularitiesarray

word et/ou segment, si le modèle les accepte. Whisper nécessite response_format=verbose_json. En multipart, répétez timestamp_granularities[] pour plusieurs valeurs.

Réponse

Les champs suivants décrivent les réponses JSON de transcription ou de traduction. text, srt et vtt renvoient du texte ou des sous-titres bruts, pas un objet JSON. Les champs supplémentaires dépendent du modèle et du format.

textstring

Le texte transcrit.

Pour verbose_json :

taskstring

Nom de la tâche lorsqu’il est présent, par exemple transcribe.

languagestring

Langue détectée.

durationnumber

Durée de l'audio en secondes.

segmentsarray

Segments de transcription avec horodatages.

wordsarray

Horodatages au niveau des mots (si demandés).

Une tâche de transcription asynchrone acceptée renvoie les champs suivants à la place du texte :

idstring

ID de la tâche.

task_idstring

Alias de l'identifiant de tâche asynchrone lorsqu'il est disponible.

statusstring

Statut de la tâche : pending, processing, completed ou failed.

poll_urlstring

URL de polling à privilégier lorsque la réponse de création la fournit.

Requête

curl -X POST "https://api.tokenlab.sh/v1/audio/transcriptions" \
  -H "Authorization: Bearer sk-your-api-key" \
  -F file="@audio.mp3" \
  -F model="whisper-1" \
  -F language="en"

Réponse

{
  "text": "Hello, this is a test of the transcription API."
}

Traduction

Pour traduire l'audio en anglais, utilisez l'endpoint de traductions :

with open("audio.mp3", "rb") as audio_file:
    response = client.audio.translations.create(
        model="whisper-1",
        file=audio_file
    )

print(response.text)

Autorisation

BearerAuth
AuthorizationBearer <token>

Authentification par clé API. Créez ou gérez vos clés API dans Dashboard > API > API Keys.

Emplacement: header

En-têtes

X-TokenLab-Delivery-Policy?string

Politique de livraison par requête. Remplace les valeurs par défaut de la clé API et de l'espace de travail. Tente automatiquement TokenLab Verified en premier et peut basculer une fois vers Official uniquement avant la sortie, l'acceptation de la requête ou la création de ressource persistante.

Valeurs possibles

  • "auto"
  • "verified"
  • "official"

Corps de la requête

multipart/form-data

Réponse

application/json

application/json

application/json

application/json

application/json

application/json