OpenAPI spec for text translation

This page contains only a guide that is auto-generated from DeepL's OpenAPI file.

For more detail about text translation, including information about request parameters, please see the Translate text entry.

Request Translation

post
Authorizations
Body
textstring[]required

Text to be translated. Only UTF-8-encoded plain text is supported. The parameter may be specified many times in a single request, within the request size limit (128KiB). Translations are returned in the same order as they are requested.

Example: Hello, World!
source_langstring · enumoptional

Language of the text to be translated. If this parameter is omitted, the API will attempt to detect the language of the text and translate it.

Example: ENAvailable options:
target_langstring · enumrequired

The language into which the text should be translated.

Example: DEAvailable options:
contextstringoptional

Additional context that can influence a translation but is not translated itself.

Characters included in the context parameter will not be counted toward billing.

Example: This is context.
show_billed_charactersbooleanoptional

When true, the response will include the billed_characters parameter, giving the number of characters from the request that will be counted by DeepL for billing purposes.

split_sentencesstring · enumoptional

Sets whether the translation engine should first split the input into sentences.

Possible values are:

  • 0 - no splitting at all, whole input is treated as one sentence
  • 1 (default when tag_handling is not set to html) - splits on punctuation and on newlines
  • nonewlines (default when tag_handling=html) - splits on punctuation only, ignoring newlines
Default: 1Example: 1Available options:
preserve_formattingbooleanoptional

Sets whether the translation engine should respect the original formatting, even if it would usually correct some aspects.

Default: false
formalitystring · enumoptional

Sets whether the translated text should lean towards formal or informal language. This feature is only available for certain target languages. Setting this parameter with a target language that does not support formality will fail, unless one of the prefer_... options are used. Possible options are:

  • default (default)
  • more - for a more formal language
  • less - for a more informal language
  • prefer_more - for a more formal language if available, otherwise fallback to default formality
  • prefer_less - for a more informal language if available, otherwise fallback to default formality
Default: defaultExample: prefer_moreAvailable options:
model_typestring · enumoptional

Specifies which DeepL model should be used for translation.

Available options:
glossary_idstringoptional

Specify the glossary to use for the translation. Important: This requires the source_lang parameter to be set. The language pair of the glossary has to match the language pair of the request.

Example: def3a26b-3e84-45b3-84ae-0c0aaf3525f7
tag_handlingstring · enumoptional

Sets which kind of tags should be handled. Options currently available:

  • xml
  • html
Example: htmlAvailable options:
outline_detectionbooleanoptional

Disable the automatic detection of XML structure by setting the outline_detection parameter to false and selecting the tags that should be considered structure tags. This will split sentences using the splitting_tags parameter.

Default: true
non_splitting_tagsstring[]optional

Comma-separated list of XML tags which never split sentences.

Example: non_splitting_tag
splitting_tagsstring[]optional

Comma-separated list of XML tags which always cause splits.

Example: splitting_tag
ignore_tagsstring[]optional

Comma-separated list of XML tags that indicate text not to be translated.

Example: ignore_tag
Responses
{
  "translations": [
    {
      "detected_source_language": "EN",
      "text": "Hallo, Welt!",
      "billed_characters": 42,
      "model_type_used": "quality_optimized"
    }
  ]
}

Last updated