> ## Documentation Index
> Fetch the complete documentation index at: https://docs.atako.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# DeepL

> Connect DeepL to your Atako agents — 5 read and 2 write actions.

Let your agents translate text, check character usage, list supported languages and manage translation glossaries via the DeepL API.

## Connection

* **Authentication**: API key (Authentication key).
* **Required settings**:
  * **Plan** — Use "api-free" if your key ends with :fx (DeepL API Free), or "api" for DeepL API Pro.

<Note>
  Sign in at deepl.com → My Account → "API keys & limits" tab → API keys → create or copy your authentication key. If the key ends with ":fx" it is a DeepL API Free key: enter "api-free" in the Plan field; otherwise (DeepL API Pro) enter "api".

  See [DeepL's documentation](https://www.deepl.com/en/your-account/keys).
</Note>

## Read actions (5)

| Action                 | Description                                                                                                                                                                                                                                                                               |
| ---------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `get_glossary`         | Retrieve the details of a single glossary, including the language pairs its dictionaries cover.                                                                                                                                                                                           |
| `get_glossary_entries` | Retrieve the entries of one glossary dictionary, returned as tab-separated values inside a JSON object. Arguments: glossary\_id (string, required — from list\_glossaries), source\_lang and target\_lang (lowercase two-letter codes, both required — they select the dictionary).       |
| `get_usage`            | Get the character and minute usage for the current billing period, with the matching account limits.                                                                                                                                                                                      |
| `list_glossaries`      | List all glossaries with their meta-information (id, name, dictionaries), without their entries.                                                                                                                                                                                          |
| `list_languages`       | List the languages a DeepL resource supports. Each entry says whether the language is usable as a source, as a target, or both. Argument: resource ("translate\_text" \| "translate\_document" \| "glossary" \| "voice" \| "write" \| "style\_rules" \| "translation\_memory", required). |

## Write actions (2)

| Action            | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `create_glossary` | Create a glossary of preferred translations, usable afterwards via translate\_text's glossary\_id. Arguments: name (string, required — the glossary name), dictionaries (array of objects, required — one object per language pair, each with source\_lang and target\_lang as lowercase two-letter codes, entries as a string holding the term pairs, and entries\_format "tsv" (tab-separated, default) or "csv"). Example entries value in tsv: "Hallo\tHello" with one pair per line.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `translate_text`  | Translate one or more plain-text strings into a target language. Billed per character. Arguments: text (array of strings, required — each string is translated independently, translations come back in the same order; UTF-8 plain text only, 128 KiB per request), target\_lang (string, required — target language code, e.g. "FR", "DE", "EN-GB"; call list\_languages to discover valid codes), source\_lang (string, optional — source language code; omit it and DeepL detects the language), context (string, optional — extra context that influences the translation but is not translated and is not billed), formality ("default" \| "more" \| "less" \| "prefer\_more" \| "prefer\_less", optional — only some target languages support it; the "prefer\_" forms never fail on unsupported languages), glossary\_id (string, optional — glossary to apply; requires source\_lang, and the glossary must contain a dictionary for that language pair), preserve\_formatting (boolean, optional — default false; keep the original formatting instead of correcting it), tag\_handling ("xml" \| "html", optional — treat the text as markup and translate only its text nodes). |

## Permissions

Every action above must be explicitly granted to an agent before it can be used. See [Permissions](/integrations/permissions) for the grant model and [Security](/integrations/security) for how credentials are protected.
