Importing cURL with form-data payload drops file params and values containing @
Author: wahyuakbarwibowoCreated Sep 16, 2026Updated Sep 17, 2026
Internal - [BRU-4568]
I have checked the following:
- I have searched existing issues and found nothing related to my issue.
This bug is:
- Slowing me down but I'm able to continue working.
Bruno version
2.0.0
Operating System
macOS
Specific OS Version / Distro
macOS 26.6.2
Describe the bug
Importing a cURL command with a form-data payload does not carry the form params over into the request body.
Postman generates form-data cURL commands with every --form value quoted, e.g. name="John" and file=@"/path/to/file.txt". After importing such a command in Bruno:
- file params are lost (they are saved as an empty
@file()) - text params whose value contains an
@(e.g. an email address) are treated as file params and lost as well
The expected result is a Multipart Form body listing every text param with its value and every file param with its path.
Steps to reproduce
- In Postman, create a request with a
form-databody containing a text field, a text field with an email value, and a file field, then copy it as cURL:
curl --location 'https://example.com/upload' \
--form 'name="John"' \
--form 'email="[email protected]"' \
--form 'file=@"/path/to/file.txt"'
- In Bruno, create a new request → From cURL, paste the command and create it.
- Open the Body tab of the new request.
- The
emailandfileparams are missing their values / file path.
Collection to reproduce
N/A, the cURL command above is enough to reproduce.
Screenshots/Live demo link
N/A
Source: usebruno/bruno