Your JSON doesn’t follow the requested payload

{
    "file": {
        "filename": "filename",
        "contents": "Base64-encoded binary data"
    }
}

You can change “file” to what you want (file_url was set in your backend WF, so you can use that), but you can’t change filename and contents key. Just values.