# Vertaling

> Vertaal een transcript naar een andere taal tijdens het transcriberen of later en lees tweetalige of alleen vertaalde tekst, SRT en VTT.

Canonical: https://transcript1.com/nl/docs/translation
Language: nl
Last updated: 2026-10-31

transcript1 transcribeert de media eerst en vertaalt de transcripttekst daarna naar een taal naar keuze. De vertaling is per segment uitgelijnd en behoudt de originele tijdstempels en sprekers. Het is alleen tekstvertaling: geen nasynchronisatie en geen vertaalde audio.

Vertalen is gratis. Het kost 0 minuten en staat in je gebruiksgeschiedenis als gratis item "Translation". Transcriptieminuten gelden zoals altijd en een mislukte vertaling laat het transcript nooit mislukken en betaalt het niet terug.

## Vertalen tijdens het transcriberen

Voeg `translate_to` toe aan het verzoek dat de transcriptie aanmaakt. Het is een ISO 639-1-code van twee kleine letters, zoals `es` of `en`. Het werkt met een videolink in de JSON-body van `POST /v1/transcriptions`, met de reservering van een upload in delen en met een multipart-upload in één stap.

```bash
curl -X POST "https://api.transcript1.com/v1/transcriptions?wait=60" \
  -H "Authorization: Bearer $TRANSCRIPT1_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ", "translate_to": "es"}'
```

Bij een bestandsupload stuur je `translate_to` als formulierveld:

```bash
curl -X POST "https://api.transcript1.com/v1/transcriptions?wait=60" \
  -H "Authorization: Bearer $TRANSCRIPT1_API_KEY" \
  -F file=@interview.m4a \
  -F translate_to=en
```

De MCP-tool `transcribe` accepteert `translate_to` ook. Eén doeltaal per verzoek.

## Een bestaand transcript vertalen

Vraag een vertaling aan van een voltooide transcriptie:

```bash
curl -X POST "https://api.transcript1.com/v1/transcriptions/tr_8fK2Lm0PqRsTuVwXyZaBcD/translations" \
  -H "Authorization: Bearer $TRANSCRIPT1_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"language": "en"}'
```

De API antwoordt met `202`:

```json
{
  "transcription_id": "tr_8fK2Lm0PqRsTuVwXyZaBcD",
  "language": "en",
  "status": "processing"
}
```

| Status | Betekenis |
|---|---|
| `404` | De transcriptie is niet gevonden. |
| `409 transcript_not_ready` | De transcriptie heeft nog niet de status `completed`. |
| `422` | De taal is geen geldige code van twee letters. |

De aanroep is idempotent. Een vertaling met `processing` of `completed` komt ongewijzigd terug en een met `failed` wordt opnieuw geprobeerd. De MCP-tool `translate_transcription` neemt `id` en `language`.

## De vertaling lezen

`GET /v1/transcriptions/:id` en de downloads als tekst, SRT en VTT accepteren `translation`:

| `translation` | Resultaat |
|---|---|
| `both` (standaard) | JSON-segmenten krijgen een veld `translation`. De tekst zet de vertaalde regel onder het origineel. SRT- en VTT-blokken hebben twee regels: eerst het origineel, dan de vertaling. |
| `only` | De vertaalde tekst vervangt `text`. Tijdstempels en sprekers blijven gelijk. |
| `none` | Alleen het originele transcript. |

Het antwoord bevat een object `translation`, of `null` als er geen vertaling is aangevraagd:

```json
{
  "translation": { "language": "es", "status": "completed" }
}
```

`status` is `processing`, `completed` of `failed`. Een mislukte vertaling heeft ook een `error`-melding. `wait` wacht ook op een aangevraagde vertaling; als de wachttijd verloopt, is de status `processing`. De MCP-tool `get_transcription` heeft een parameter `translation` met dezelfde waarden.

## Webhooks

Twee events melden het resultaat van een vertaling, naast `transcription.completed` en `transcription.failed`, die niet veranderen:

| `type` | Verzonden wanneer |
|---|---|
| `transcription.translation.completed` | Een aangevraagde vertaling `completed` bereikte. |
| `transcription.translation.failed` | Een aangevraagde vertaling `failed` bereikte. |

`data` is het transcriptieobject plus `translation: { language, status, error }`. Zie [Webhooks](https://transcript1.com/nl/docs/webhooks) voor handtekeningen en bezorgregels.
