Unable to download and upload file from Google Sheet to Box.com

Hi,

I am trying to automate the downloading and uploading of files from Google Sheets to Box.com (specific folder). Based on my understanding, I have connected all the necessary (as shown in the screenshot) but it is not working correctly.
Is there anyone who can help me? If there’s any other approach then please let me know.


Hi @Deepak_Sharma and welcome to the Make Community!

Can you please explain exactly what you want your scenario to accomplish?

Having a Box Download a File following an HTTP Get a File (#12) doesn’t really make sense so just want to get a better idea of what’s going on.

Also, Box Download a File seems to require a Box File ID, not a URL.
If you’re trying to upload a file to Box then you may need to look for a Box module that does a File Upload, not a File Download.

1 Like

Hey @Donald_Mitchell ,

I’m working on automating the process of downloading and uploading files to specific folders. I have a list of hundreds of people, each with their names and associated documents, stored in a Google Sheet. My goal is to upload each document to a corresponding folder in Box.com named after the individual.

For example: (In Google Sheet following info is stored)

  • Name: ABC
  • Files: Downloadable Link 1, Downloadable Link 2

There is already a folder named ‘ABC’ in Box.com. I am using Make.com to automate this process and want the system to identify any new files to download and upload them directly to the correct folder in Box.com.

I have consulted online resources and ChatGPT for guidance on connecting, downloading, and uploading files directly to Box.com folders. They basically told me to first Download the File and then Upload the File.

So if you’re Google Sheet is really laid out this way, then you can:

  1. Watch New Rows or Search the sheet
    I think you only need one of these here.
  2. Use an Iterator to iterate through an array of File addresses.
    Use the split() function on “Files” to get an array you can iterate on.
    The iterator might looks like this: split(Files;,)
  3. After Iterator, use an HTTP Module to Get a File
  4. Follow with Box Upload a File

Steps 3 and 4 will run for every file you have.

1 Like

Thanks @Donald_Mitchell
It worked. However, the file is not what I wanted. The file I want to download is a pdf file, and it downloads the .html file.

Is there a way I can download the pdf file and upload it? This is the link that I am using to download the file - Sharma_Deepak_Resume.pdf - Google Drive

Also, here’s the flow I followed.

If the file you want to download is hosted on Google Drive you must ensure it is publicly available. I don’t know how HTTP Get a File works with Google Drive files, need to test it out!

1 Like

It is publicly available but still getting the same result. I am trying to store files differently and test, but if you still find a workaround, then it would be really great.

Thank you, @Donald_Mitchell, for all the help.

This links to a webpage, Google’s PDF viewer, not the PDF itself. That’s why this is failing.
If you can, get the Web Content View link from Google Drive, not the Share Link.
What you need should be formatted something like this:

https://drive.google.com/uc?id=15v-w-xfrWF3X_EZ7iMYW9NRfOYELT2q7&export=download

If you can’t get this then you can extract the file ID from the link you do have then generate the link:

https://drive.google.com/uc?id=<fileID>

3 Likes

Hey @Donald_Mitchell
Apologies for the delayed response. But this still does not work for me. My documents are stored in this format https://www.jotform.com/uploads/rtolmach/232775412463154/5739721719128341939/Naina Rajan - resume - 2023_10_24 .pdf

There were only a few documents on Google Drive, so I am manually doing it.

Hi @Deepak_Sharma,

So just to be clear, your Google Sheet contains a bunch of rows and one of the values is a URL.
As you go through each row, you want to download the file on the other end of that URL and upload it to Box?
The problem is some of the links don’t download correctly, like those from drive.google.com/*

In this case, when you come upon a file hosted on drive.google.com, you’ll need to try extracting the drive file ID, then form a new URL to download it (assuming it’s been made public).

If the download still fails, maybe you’ll need to email yourself a link to the file in such cases so that you can download manually.

@Donald_Mitchell
Yes, your understanding is correct.

The problem is only 3 or 4 files are stored in drive and when I download it manually it is getting downloaded. The majority of files are storied via jotform (https://www.jotform.com/uploads/rtolmach/232775412463154/5739721719128341939/Naina) and based on the flow I created, it downloads the .HTML file with all the content within it.

this is the content of file that is getting downloaded (attaching a screenshot as it does not allow me to upload .HTML file)

Additionally, if you see the content of .HTML file it get all the information and data from that pdf file only. It just that I need to find a way to convert this .HTML file to .pdf file.

Let me know if you need any additional information.

Hello @Deepak_Sharma,

The issue seems to be the URLs on that spreadsheet, those link to web pages, not direct file downloads.
You’ll likely need to either download those manually, or figure out a way to identify the host (by using the domain name, perhaps) then handle the download differently, such as how I explained in an earlier post.

1 Like

Hey @Donald_Mitchell
I tried to change the URL, and it seems it is getting downloaded. Thanks for that.

However, now I need one more help from you, and I apologize for asking too many questions.
But I am getting the error that says File Already Exists, throws the error and stops executing my scenarios.

Question - Is there a way I can either skip these files and keep on continuing (I know I can use error handling, but not sure how), or is there any other way I can overwrite these files with new ones?

The Box module is saying File Already Exists?
If that’s the case and it’s an actual error that’s causing the scenario to fail, then you can add an error route to that Box module.
If you want to overwrite the file - Use a filter to allow it to continue is the error is “File Already Exists” or whatever the actual error is.
Next, use a Box module to delete that file then another Box module to upload to Box.