cancel
Showing results for 
Search instead for 
Did you mean: 

REST Post Multipart Form-Data + File Upload Issue

whaleyl
New Contributor III

I’m having trouble correctly formatting multipart form-data to be sent as the body of a REST Post request along with a single file upload.

I’ve managed to get the Post request to correctly send in Postman with the required key/value pairs and a test file:

Postman

However, when attempting to replicate this in SnapLogic I am unsuccessful.

I’ve managed to correctly map the key/value pairs in a mapper, and have created the following JSON in a JSON generator using my mapped values:

JSONGenerator

I’ve used my “entity” object as the HTTP entity in my Post request, and pointed to a local test file for upload in my REST Post snap:

PostSnap1
PostSnap2

Is my approach to compiling the form-data correct, or no?

10 REPLIES 10

dwhite
Employee
Employee

Could you expand that temporary headers section in postman in the request header section? What kind of authorization are you using in both postman and SL?

Also, have you checked the endpoint to see if the file from the SL post made it there regardless of the response body it’s giving back?

whaleyl
New Contributor III

Here are my temporary headers in Postman:

image

To my knowledge there is no way to check if the file has been committed to the server, this call is the second call in a three-part upload process through the API. I can verify this if need be.

The first API call prepares the upload, the second API (this call) uploads the file to the server, and the third API call commits the uploaded file to the endpoint using values in the response body of this second API call.

If I had to guess I’d say it was the cookie. Postman is auto-sending this for you because it is stateful probably captured it in the return of your first API call.

In SnapLogic, each of the snaps execute separately, even if you have a chain of rest snaps they all function independently so you don’t have that luxury. You’d probably need to send the cookie which you’d probably get back in the header of your first call, and pass it as cookie header on calls 2/3.

Without sending the cookie for the second response I’d guess the server wouldn’t be able to tie it to the first rest op so it’s just giving you a blank response back.

whaleyl
New Contributor III

I passed the cookie into the request headers from my first API call with no luck, my response body is still empty from my Post request

I sincerely appreciate the help to date - at this point I’ve reached out to an administrator who wrote the endpoint API’s who can help clarify the formatting of the request for accuracy on their end.

lwhamilton03
New Contributor II

Hi, I’m looking to send a request that uses REST Post Multipart Form-Data without the file upload. I’m having issues configuring the REST Post Snap. What should go into the HTTP Entity and how do we ensure it sends it as multipart/form-data rather than application/json.