Note that both body parts are required and that their order is fixed: The “metadata” body part comes first, and the “document” body part comes second. Upload requests missing a part, or that contain parts in the wrong order, will not succeed.
I’m using the Harvest App Expenses API, I can send all the data except for the file receipt! I’d be interested to see your solution to Patch or Post these files within Make.
I was trying to do a similar thing right now with Salesforce Upload ContentVersion (using Make API call as Make API ContentVersion implementation appears buggy).
The result is that I am upload the the file successfully, but content is gibberish. My guess is that Make serializes somehow the Input field and the binary input stops being binary. I think I have used once the native Make HTTP and use Multipart/form as Content-type which gives nice field for the file and that should work, but that also means building Salesforce Oauth from scratch.
according to the specification of multipart/form-data request, you need to send the value as buffer. So in your case, you would need to use the IML function toBinary(). So the your request would look like this: