Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 27 additions & 0 deletions .github/workflows/sync-language-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: Sync language docs

on:
schedule:
- cron: "17 6 * * *"
workflow_dispatch:

permissions:
contents: write
pull-requests: write

jobs:
sync:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: actions/setup-node@v5
with:
node-version: 22
- name: Regenerate language docs from /v3/languages
env:
DEEPL_API_KEY: ${{ secrets.DEEPL_API_KEY }}
run: node scripts/update-language-docs.mjs "$DEEPL_API_KEY"
- name: Open or update the sync PR
env:
GH_TOKEN: ${{ github.token }}
run: scripts/open-sync-pr.sh
21 changes: 21 additions & 0 deletions .github/workflows/test-scripts.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Test scripts

on:
pull_request:
paths:
- "scripts/**"
push:
branches:
- main
paths:
- "scripts/**"

jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: actions/setup-node@v5
with:
node-version: 22
- run: node --test scripts/*.test.mjs
55 changes: 27 additions & 28 deletions api-reference/improve-text.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -69,17 +69,17 @@ curl -X POST 'https://api.deepl.com/v2/write/rephrase' \
<ParamField body="target_lang" type="string">
The language of the improved text. Currently, the following languages are supported:

* `de` (German)
* `en-GB` (British English)
* `en-US` (American English)
* `es` (Spanish)
* `fr` (French)
* `it` (Italian)
* `ja` (Japanese)
* `ko` (Korean)
* `pt-BR` (Brazilian Portuguese)
* `pt-PT` (Portuguese)
* `zh`/`zh-Hans` (simplified Chinese)
{/* BEGIN GENERATED write-target-languages (run: node scripts/update-language-docs.mjs) */}
* Chinese: `zh`, `zh-Hans`
* English: `en`, `en-GB`, `en-US`
* French: `fr`
* German: `de`
* Italian: `it`
* Japanese: `ja`
* Korean: `ko`
* Portuguese: `pt`, `pt-BR`, `pt-PT`
* Spanish: `es`
{/* END GENERATED write-target-languages */}

You can also retrieve supported languages programmatically via <a href="/api-reference/languages/retrieve-supported-languages-by-resource"><code>GET /v3/languages?resource=write</code></a>.

Expand All @@ -105,15 +105,14 @@ curl -X POST 'https://api.deepl.com/v2/write/rephrase' \
</Expandable>
Currently supported for the following target languages:

* `de` (German)
* `en-GB` (British English)
* `en-US` (American English)
* `es` (Spanish)
* `fr` (French)
* `it` (Italian)
* `pt-BR` (Brazilian Portuguese)
* `pt-PT` (Portuguese)

{/* BEGIN GENERATED write-writing-style-languages (run: node scripts/update-language-docs.mjs) */}
* English: `en-GB`, `en-US`
* French: `fr`
* German: `de`
* Italian: `it`
* Portuguese: `pt`, `pt-BR`, `pt-PT`
* Spanish: `es`
{/* END GENERATED write-writing-style-languages */}

Styles prefixed with `prefer_` will fall back to the `default` style when used with a language that does not support styles (this is recommended for cases where no `target_lang` is set), the non-prefixed writing styles (except `default`) will return a HTTP 400 error in that case.

Expand All @@ -140,14 +139,14 @@ curl -X POST 'https://api.deepl.com/v2/write/rephrase' \

Currently supported for the following target languages:

* `de` (German)
* `en-GB` (British English)
* `en-US` (American English)
* `es` (Spanish)
* `fr` (French)
* `it` (Italian)
* `pt-BR` (Brazilian Portuguese)
* `pt-PT` (Portuguese)
{/* BEGIN GENERATED write-tone-languages (run: node scripts/update-language-docs.mjs) */}
* English: `en-GB`, `en-US`
* French: `fr`
* German: `de`
* Italian: `it`
* Portuguese: `pt`, `pt-BR`, `pt-PT`
* Spanish: `es`
{/* END GENERATED write-tone-languages */}

Tones prefixed with `prefer_` will fall back to the `default` tone when used with a language that does not support tones (this is recommended for cases where no `target_lang` is set), the non-prefixed tones (except `default`) will return a HTTP 400 error in that case.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,20 +33,22 @@ audio provides the following functionality:
<td>
<p>The realtime audio stream you want to have translated can be in one of the following languages:</p>
<ul>
{/* BEGIN GENERATED voice-input-languages (run: node scripts/update-language-docs.mjs) */}
<li>`ar` (Arabic)</li>
<li>`bg` (Bulgarian)</li>
<li>`bn` (Bengali)</li>
<li>`cs` (Czech)</li>
<li>`da` (Danish)</li>
<li>`de` (German)</li>
<li>`el` (Greek)</li>
<li>`en` (British)</li>
<li>`en` (English)</li>
<li>`es` (Spanish)</li>
<li>`et` (Estonian)</li>
<li>`fi` (Finnish)</li>
<li>`fr` (French)</li>
<li>`ga` (Irish)</li>
<li>`he` (Hebrew)</li>
<li>`hi` (Hindi)</li>
<li>`hr` (Croatian)</li>
<li>`hu` (Hungarian)</li>
<li>`id` (Indonesian)</li>
Expand All @@ -55,8 +57,9 @@ audio provides the following functionality:
<li>`ko` (Korean)</li>
<li>`lt` (Lithuanian)</li>
<li>`lv` (Latvian)</li>
<li>`ms` (Malay)</li>
<li>`mt` (Maltese)</li>
<li>`nb` (Norwegian Bokmål)</li>
<li>`nb` (Norwegian (bokmål))</li>
<li>`nl` (Dutch)</li>
<li>`pl` (Polish)</li>
<li>`pt` (Portuguese)</li>
Expand All @@ -65,12 +68,14 @@ audio provides the following functionality:
<li>`sk` (Slovak)</li>
<li>`sl` (Slovenian)</li>
<li>`sv` (Swedish)</li>
<li>`ta` (Tamil)</li>
<li>`th` (Thai)</li>
<li>`tl` (Tagalog)</li>
<li>`tr` (Turkish)</li>
<li>`uk` (Ukrainian)</li>
<li>`vi` (Vietnamese)</li>
<li>`zh` (Chinese)</li>
{/* END GENERATED voice-input-languages */}
</ul>
</td>
</tr>
Expand All @@ -79,21 +84,24 @@ audio provides the following functionality:
<td>
<p>The language in which your translations are provided as text can be one of the following:</p>
<ul>
{/* BEGIN GENERATED voice-target-languages (run: node scripts/update-language-docs.mjs) */}
<li>`ar` (Arabic)</li>
<li>`bg` (Bulgarian)</li>
<li>`bn` (Bengali)</li>
<li>`cs` (Czech)</li>
<li>`da` (Danish)</li>
<li>`de` (German)</li>
<li>`el` (Greek)</li>
<li>`en-GB` (British English)</li>
<li>`en-US` (American-English)</li>
<li>`en` (English)</li>
<li>`en-GB` (English (British))</li>
<li>`en-US` (English (American))</li>
<li>`es` (Spanish)</li>
<li>`et` (Estonian)</li>
<li>`fi` (Finnish)</li>
<li>`fr` (French)</li>
<li>`ga` (Irish)</li>
<li>`he` (Hebrew)</li>
<li>`hi` (Hindi)</li>
<li>`hr` (Croatian)</li>
<li>`hu` (Hungarian)</li>
<li>`id` (Indonesian)</li>
Expand All @@ -102,26 +110,31 @@ audio provides the following functionality:
<li>`ko` (Korean)</li>
<li>`lt` (Lithuanian)</li>
<li>`lv` (Latvian)</li>
<li>`ms` (Malay)</li>
<li>`mt` (Maltese)</li>
<li>`nb` (Norwegian Bokmål)</li>
<li>`nb` (Norwegian (bokmål))</li>
<li>`nl` (Dutch)</li>
<li>`pl` (Polish)</li>
<li>`pt-BR` (Brazilian Portuguese)</li>
<li>`pt-PT` (Portuguese) (all Portuguese varieties excluding Brazilian Portuguese)</li>
<li>`pt` (Portuguese) (unspecified variant for backward compatibility; please select `pt-PT` or `pt-BR`</li>
<li>`pt` (Portuguese)</li>
<li>`pt-BR` (Portuguese (Brazilian))</li>
<li>`pt-PT` (Portuguese (European))</li>
<li>`ro` (Romanian)</li>
<li>`ru` (Russian)</li>
<li>`sk` (Slovak)</li>
<li>`sl` (Slovenian)</li>
<li>`sv` (Swedish)</li>
<li>`ta` (Tamil)</li>
<li>`th` (Thai)</li>
<li>`tl` (Tagalog)</li>
<li>`tr` (Turkish)</li>
<li>`uk` (Ukrainian)</li>
<li>`vi` (Vietnamese)</li>
<li>`zh` (Chinese)</li>
<li>`zh-Hans` (Chinese (simplified))</li>
<li>`zh-Hant` (Chinese (traditional))</li>
{/* END GENERATED voice-target-languages */}
</ul>
<p>`pt-PT` covers all Portuguese varieties excluding Brazilian Portuguese. `pt` is an unspecified variant kept for backward compatibility; prefer `pt-PT` or `pt-BR`.</p>
</td>
</tr>
</tbody>
Expand Down
6 changes: 5 additions & 1 deletion docs/getting-started/supported-languages.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -19,5 +19,9 @@ import { LanguageTable } from "/snippets/language-table.jsx"
</Info>

<Info>
Style rules are supported for the following target languages: `de`, `en`, `es`, `fr`, `it`, `ja`, `ko`, and `zh`. For more details, see the [Style Rules API documentation](/api-reference/style-rules). Writing style and tone availability for `/write/rephrase` can also be retrieved via [`GET /v3/languages?resource=write`](/api-reference/languages/retrieve-supported-languages-by-resource).
{/* BEGIN GENERATED style-rules-languages (run: node scripts/update-language-docs.mjs) */}
Style rules are supported for the following target languages: `ar`, `bg`, `cs`, `da`, `de`, `el`, `en`, `es`, `et`, `fi`, `fr`, `he`, `hu`, `id`, `it`, `ja`, `ko`, `lt`, `lv`, `nb`, `nl`, `pl`, `pt`, `ro`, `ru`, `sk`, `sl`, `sv`, `th`, `tr`, `uk`, `vi`, and `zh`.
{/* END GENERATED style-rules-languages */}

For more details, see the [Style Rules API documentation](/api-reference/style-rules). Writing style and tone availability for `/write/rephrase` can also be retrieved via [`GET /v3/languages?resource=write`](/api-reference/languages/retrieve-supported-languages-by-resource).
</Info>
88 changes: 45 additions & 43 deletions docs/voice/supported-languages-formats-and-limits.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -8,49 +8,51 @@ description: "Reference for DeepL Voice API language availability, supported aud
Translation is always provided by DeepL. For some languages, transcription and translated speech are provided by external service partners. All source languages can be translated into any target language.

<Card>
| **Language** | **Transcription** | **Translation** | <Badge color="green">closed beta</Badge><br/>Translated Speech |
| :------------------------------------- | :---------------: | :-------------: | :------------------------------------------------------------: |
| Arabic | ⎋ | ✓ | ⎋ |
| Bengali | ⎋ | ✓ | — |
| Bulgarian | ⎋ | ✓ | ⎋ |
| Chinese (Simplified/Traditional) | ✓ | ✓ | ✓ |
| Croatian | ⎋ | ✓ | — |
| Czech | ✓ | ✓ | ⎋ |
| Danish | ⎋ | ✓ | ⎋ |
| Dutch | ✓ | ✓ | ✓ |
| English (American/British) | ✓ | ✓ | ✓ |
| Estonian | ⎋ | ✓ | — |
| Finnish | ⎋ | ✓ | ⎋ |
| French | ✓ | ✓ | ✓ |
| German | ✓ | ✓ | ✓ |
| Greek | ⎋ | ✓ | ⎋ |
| Hebrew | ⎋ | ✓ | — |
| Hindi <Badge color="blue">beta</Badge> | ⎋ | ✓ | ⎋ |
| Hungarian | ⎋ | ✓ | ⎋ |
| Indonesian | ✓ | ✓ | ⎋ |
| Irish | ⎋ | ✓ | — |
| Italian | ✓ | ✓ | ✓ |
| Japanese | ✓ | ✓ | ✓ |
| Korean | ✓ | ✓ | ✓ |
| Latvian | ⎋ | ✓ | — |
| Lithuanian | ⎋ | ✓ | — |
| Malay <Badge color="blue">beta</Badge> | ⎋ | ✓ | ⎋ |
| Maltese | ⎋ | ✓ | — |
| Norwegian Bokmål | ⎋ | ✓ | ⎋ |
| Polish | ✓ | ✓ | ✓ |
| Portuguese (Brazil/Portugal) | ✓ | ✓ | ✓ |
| Romanian | ✓ | ✓ | ⎋ |
| Russian | ✓ | ✓ | ✓ |
| Slovak | ⎋ | ✓ | ⎋ |
| Slovenian | ⎋ | ✓ | — |
| Spanish | ✓ | ✓ | ✓ |
| Swedish | ✓ | ✓ | ✓ |
| Thai | ⎋ | ✓ | — |
| Tagalog | ⎋ | ✓ | — |
| Tamil <Badge color="blue">beta</Badge> | ⎋ | ✓ | ⎋ |
| Turkish | ✓ | ✓ | ✓ |
| Ukrainian | ✓ | ✓ | ⎋ |
| Vietnamese | ⎋ | ✓ | ⎋ |
{/* BEGIN GENERATED voice-language-matrix (run: node scripts/update-language-docs.mjs) */}
| **Language** | **Transcription** | **Translation** | <Badge color="green">closed beta</Badge><br/>Translated Speech |
| :--- | :---: | :---: | :---: |
| Arabic | ⎋ | ✓ | ⎋ |
| Bengali | ⎋ | ✓ | — |
| Bulgarian | ⎋ | ✓ | ⎋ |
| Chinese (Simplified/Traditional) | ✓ | ✓ | ✓ |
| Croatian | ⎋ | ✓ | — |
| Czech | ✓ | ✓ | ⎋ |
| Danish | ⎋ | ✓ | ⎋ |
| Dutch | ✓ | ✓ | ✓ |
| English (American/British) | ✓ | ✓ | ✓ |
| Estonian | ⎋ | ✓ | — |
| Finnish | ⎋ | ✓ | ⎋ |
| French | ✓ | ✓ | ✓ |
| German | ✓ | ✓ | ✓ |
| Greek | ⎋ | ✓ | ⎋ |
| Hebrew | ⎋ | ✓ | — |
| Hindi <Badge color="blue">beta</Badge> | ⎋ | ✓ | ⎋ |
| Hungarian | ⎋ | ✓ | ⎋ |
| Indonesian | ✓ | ✓ | ⎋ |
| Irish | ⎋ | ✓ | — |
| Italian | ✓ | ✓ | ✓ |
| Japanese | ✓ | ✓ | ✓ |
| Korean | ✓ | ✓ | ✓ |
| Latvian | ⎋ | ✓ | — |
| Lithuanian | ⎋ | ✓ | — |
| Malay <Badge color="blue">beta</Badge> | ⎋ | ✓ | ⎋ |
| Maltese | ⎋ | ✓ | — |
| Norwegian (bokmål) | ⎋ | ✓ | ⎋ |
| Polish | ✓ | ✓ | ✓ |
| Portuguese (Brazil/Portugal) | ✓ | ✓ | ✓ |
| Romanian | ✓ | ✓ | ⎋ |
| Russian | ✓ | ✓ | ✓ |
| Slovak | ⎋ | ✓ | ⎋ |
| Slovenian | ⎋ | ✓ | — |
| Spanish | ✓ | ✓ | ✓ |
| Swedish | ✓ | ✓ | ✓ |
| Tagalog | ⎋ | ✓ | — |
| Tamil <Badge color="blue">beta</Badge> | ⎋ | ✓ | ⎋ |
| Thai | ⎋ | ✓ | — |
| Turkish | ✓ | ✓ | ✓ |
| Ukrainian | ✓ | ✓ | ⎋ |
| Vietnamese | ⎋ | ✓ | ⎋ |
{/* END GENERATED voice-language-matrix */}

✓ provided by DeepL / ⎋ provided by an external service partner / — not available
</Card>
Expand Down
Loading