Postman Upload File – Cheat Sheet

Henri Cook

How to upload a file with Postman: we'll use Postman to send files (images, binaries, etc.) as multipart/form-data in this simple guide.

Note: We're using Upload.io's File Upload API to upload test files in these examples, but the same steps apply to any API that accepts file uploads. (We're using the API key "free" below, which you can use without needing to create an Upload.io account.)

1) Create a new request

First, let's create a request in Postman:

Postman uses a tabbed UI – click the "+" button to create a new file upload request.

2) Set the method to POST or PUT

Set the request method to POST or PUT in the dropdown, depending on your API:

Note: the API in this example requires POST, but yours may require PUT

3) Set the URL for your endpoint

Remember to include the http:// or https://.

We're using https://api.upload.io/v1/files/form_data in this example:

In this example we're telling Postman to send the file to Upload.io's API.

4) Set the authorization headers (optional)

If your API requires authorization, you must complete this step. (Otherwise skip to the next step.)

The Upload.io API requires a bearer token the value "free", so we set it below:

If you're using a different API, your settings will be different here.

5) Upload the file as multipart/form-data

Now to test a file upload in Postman:

We'll first cover how to upload files using multipart/form-data as the request body.

The next section will cover uploading binary request bodies – i.e. without form encoding.

5.1 – Set the body to "form-data":

Performing a multipart/form-data file upload in Postman.

5.2 – Hover your mouse over the first row in the table:

Hovering your mouse will reveal the "Text / File" dropdown control.

5.3 – Select "File" from the dropdown:

Tip: the description field is not sent as part of the HTTP request, and is purely for local documentation.

5.4 – Select a file & enter the field name your API uses for the file field:

We're using "file" arbitrarily here, as the Upload.io API accepts any key. Your API will likely expect a specific key, so make sure you check before simply entering "file"!

5.5 – Finally, click "Send":

Send the file in Postman by clicking "Send".

5.6 – See the result:

A successful response: the API returned "200 OK" and a JSON response body, with a URL pointing to the uploaded file.

Huzzah, it worked!

Sending a binary request body?

In the previous example we used multipart/form-data for our request body.

But what about using Postman to perform a binary file upload instead?

First, set the body to "binary":

Select "binary" to have Postman send binary data.

Now click "Select File" in Postman to attach a file:

Attach a file to upload with the "Select File" button.

Finally, click "Send":

It worked!

You'll notice in our examples we changed the URL from /form_data to /basic – this is a detail specific to Upload.io's API, as we support both binary and multipart/form-data uploads, but we use a different URL for each.

The API you're testing will likely support just one of these two options.

Conclusion

Here's the key things to remember when uploading files in Postman:

  1. Make sure you get your body type correct (form-data and binary are most common).
  2. Select "File" from the dropdown in the "Key" column – this only appears on hover!
  3. Remember to add the appropriate auth headers.

Happy uploading!

Share:
Henri Cook
Written by

Henri Cook Follow

Hey there, I'm Upload's Tech Evangelist. After spending my career as a developer dealing with tough file upload problems, I'm here to tell you about the solutions.

Stay in the know

Get new posts from the Upload Blog delivered straight to your inbox.