cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Announcements
Want to know what we learned at IBC? Check out our learnings on media, remote working and more right here.

Dropbox API Support & Feedback

Find help with the Dropbox API from other developers.

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Downloading A file from a shared link using the API

Downloading A file from a shared link using the API

Eridanus
New member | Level 2

Hello, I've tried downloading an Audio File from a share link using the suggested method on dropbox-sdk-js but I keep getting an error:

 

 

Error downloading file: DropboxResponseError: Response failed with a 401 code

 

 

Here's my code:

 

 

import { Dropbox } from "dropbox"; 


// Inside the component:



      // Download function
  const downloadTrack = () => {
  const ACCESS_TOKEN = process.env.ACCESS_TOKEN
   
  const SHARED_LINK =
      "https://www.dropbox.com/scl/fi/2jqckdrbnq60hr8mq3std/Natamani-Kutembea-Nawe-Teacher-John-CW.mp3?rlkey=1eepmp9jz6wc155inir5hfhl2&st=3c8eq4ed&dl=0";

    
   const dbx = new Dropbox({ accessToken: ACCESS_TOKEN });

    dbx
      .sharingGetSharedLinkFile({ url: SHARED_LINK })
      .then(function (response) {
        const blob = response.result.fileBlob; 
        const downloadUrl = URL.createObjectURL(blob); 

        const downloadButton = document.createElement("a");
        downloadButton.setAttribute("href", downloadUrl);
        downloadButton.setAttribute("download", response.result.name); 
        downloadButton.setAttribute("class", "button");
        downloadButton.innerText = "Download: " + response.result.name;

        document.getElementById("results").appendChild(downloadButton);
      })
      .catch(function (error) {
        console.error("Error downloading file:", error);
      });

    return false;
  };

 

 

1 Reply 1

Greg-DB
Dropbox Staff

Check the response body for a more specific error message. With the JavaScript SDK, you should be able to by checking the nested `error.error` object.

 

An error response with a 401 status code like this should indicate an issue with the authorization though; for instance, the access token used may be invalid or expired. Make sure you're using a valid access token.

Need more support?
Who's talking

Top contributors to this post

  • User avatar
    Greg-DB Dropbox Staff
What do Dropbox user levels mean?