diff --git a/changelog.d/deepl-json.fix b/changelog.d/deepl-json.fix new file mode 100644 index 000000000..ee6f8664e --- /dev/null +++ b/changelog.d/deepl-json.fix @@ -0,0 +1 @@ +Use JSON for DeepL API requests diff --git a/lib/pleroma/language/translation/deepl.ex b/lib/pleroma/language/translation/deepl.ex index e027035b4..aaaac9b0f 100644 --- a/lib/pleroma/language/translation/deepl.ex +++ b/lib/pleroma/language/translation/deepl.ex @@ -24,17 +24,15 @@ defmodule Pleroma.Language.Translation.Deepl do |> URI.to_string() case Pleroma.HTTP.post( - endpoint <> - "?" <> - URI.encode_query(%{ - text: content, - source_lang: source_language |> String.upcase(), - target_lang: target_language, - tag_handling: "html" - }), - "", + endpoint, + Jason.encode!(%{ + text: [content], + source_lang: source_language |> String.upcase(), + target_lang: target_language, + tag_handling: "html" + }), [ - {"Content-Type", "application/x-www-form-urlencoded"}, + {"Content-Type", "application/json"}, {"Authorization", "DeepL-Auth-Key #{api_key()}"} ] ) do