Download Translated Document

deepl.download_document
ActionAI & modelsconnection required

Calls the DeepL API with the connection's credentials.

Download the translated document once its status is done, as a base64 file blob a storage or mail node can take straight from the wire.

Connection

Required
Yes — the node will not save without one
Auth type
API key
Providers
DeepL
Secret shape
the DeepL auth key, or {"api_key": "…"}
Resolved by
config.connection_id, else node.connection_id

Configuration

3 fields, 2 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.

FieldTypeRequiredDefaultConstraintsExample
document_id
Identifier of the document translation job, returned by deepl.translate_document.
stringYes———
document_key
Key DeepL returned alongside document_id; the encrypted document cannot be read without it.
stringYes———
filename
Name to give the downloaded file. Defaults to the document id with a '.translated' suffix, since DeepL does not return the original name.
stringNo——contract.de.docx

Example configuration

Every value below is the contract’s own example or default — nothing invented.

{
  "filename": "contract.de.docx"
}

Output

One shape.

result

FieldTypeExample
file_content
The file, base64-encoded.
string—
content_encoding
stringbase64
filename
stringapp-main.zip
content_type
stringapplication/zip
size
Raw size in bytes (before base64).
number—
document_id
Identifier of the job the file came from.
string—
{
  "content_encoding": "base64",
  "content_type": "application/zip",
  "document_id": "",
  "file_content": "",
  "filename": "app-main.zip",
  "size": 0
}

Notes

  • document_id and document_key both come from deepl.translate_document. DeepL stores the uploaded file encrypted under document_key and will not return it without that key.
  • DeepL answers 503 while the job is still running, so check the status first. The file is held in the step output, so it is bounded by MANTLE_BINARY_MAX_BYTES.

See Download Translated Document run in a workflow.

In a technical demo we add the DeepL connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.