How to Download All Files from Your Uploadcare Project

This guide walks you through downloading every file from your Uploadcare project to your computer using the ucare sync  command, part of the pyuploadcare library.


Step 1: Install the Uploadcare Python library

Open your terminal (Command Prompt on Windows, Terminal on Mac/Linux) and run:

pip install pyuploadcare

Don't have Python? Download it first from python.org. During installation, check the option to add Python to your PATH.


Step 2: Find your API keys

  1. Log in to your Uploadcare dashboard.
  2. Open API Keys in the sidebar.
  3. Copy your Public Key and Secret Key — you'll need both in the next step.

Step 3: Set your API keys

In the same terminal window, run these two commands, replacing the placeholder values with your actual keys:

Mac / Linux:

export UPLOADCARE_PUBLIC_KEY="your_public_key"
export UPLOADCARE_SECRET_KEY="your_secret_key"

Windows (Command Prompt):

set UPLOADCARE_PUBLIC_KEY=your_public_key
set UPLOADCARE_SECRET_KEY=your_secret_key

Step 4: Create a folder for your files

Choose where you want the files saved. For example:

mkdir my-uploadcare-files

Step 5: Download your files

Run the sync command, pointing it to the folder you just created:

ucare sync my-uploadcare-files

You'll see a progress bar for each file as it downloads. Files are saved using their unique ID as the filename (e.g., a1b2c3d4-5678-...jpg ).

Note: By default, the command downloads up to 100 files. If your project has more, add the --limit  flag with a higher number:

ucare sync my-uploadcare-files --limit 5000

To download everything with no cap, use:

ucare sync my-uploadcare-files --limit none

If something goes wrong

The download stops halfway. Don't worry — the tool remembers where it left off. Simply run the same command again and it will ask you to continue from where it stopped.

A file already exists locally. It will be skipped automatically. If you want to re-download and overwrite it, add --replace :

ucare sync my-uploadcare-files --replace

You see a "connection error" message. The tool retries automatically up to 3 times. If it still fails, check your internet connection and try again.


That's it!

Once the command finishes, all your files will be in the my-uploadcare-files  folder, ready to use.


Learn more

The sync  command supports additional options like downloading specific files by UUID, applying image effects during download, and filtering by file status. To see all available options, run:

ucare sync --help

For the full documentation and source code, visit the pyuploadcare GitHub repository.

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.