diff --git a/api/core/tools/custom_tool/tool.py b/api/core/tools/custom_tool/tool.py index f8467c54c5..8a0163760e 100644 --- a/api/core/tools/custom_tool/tool.py +++ b/api/core/tools/custom_tool/tool.py @@ -211,6 +211,12 @@ class ApiTool(Tool): body = urlencode(body) else: body = body + + # if there is a file upload, remove the Content-Type header so that httpx can automatically generate the boundary header required for multipart/form-data. + # issue: https://github.com/langgenius/dify/issues/13684 + # reference: https://stackoverflow.com/questions/39280438/fetch-missing-boundary-in-multipart-form-data-post + if files: + headers.pop("Content-Type", None) if method in { "get",