Quick start

When building a website or an app, you'll need to handle uploading, storing, processing, and delivering various files, either from you, or from your users. We have various uploading methods, a few storage options, an API to manage files, and a CDN with on-the-fly processing capabilities. Everything is compliant with numerous international regulations.

In this quickstart we'll show you our jQuery uploading widget and Image Processing. We will also cover the rest of our features at the end of this article.

Step 1. Uploading

Install jQuery widget:

npm install uploadcare-widget --savebash
import uploadcare from 'uploadcare-widget/uploadcare.lang.en.min.js'javascript

Add the widget to your page (find your public key in dashboard):

Data attributesSettings objectGlobal variables
    data-tabs="file camera url facebook gdrive gphotos"

You should be able to see the Uploading Widget button appear on the page:


Learn more about all uploading methods here. We also have React and Angular integrations.

Step 2. Storage & CDN

Once a file is uploaded, it goes to your Uploadcare storage and instantly becomes available on CDN.


(By default, Upload API doesn't store the files forever. There is a 24-hour window when you should decide whether to store uploaded files or not. But all of our official libraries, including Uploading Widget, inherit the auto-store setting from your project, where it's set to ON by default. You can read more about storage behavior here).

You can get the UUID of the uploaded file immediately on upload. For example:

Single Uploading WidgetMultiple files configuration
// get a widget reference
const widget = uploadcare.Widget("[role=uploadcare-uploader]");

// listen to the "upload completed" event
widget.onUploadComplete(fileInfo => {
  // get a CDN URL from the file info

We recommend saving UUIDs instead of CDN URLs because this will let you process these files easier later on.

Step 3. Processing

You can add image processing operations by including directives in the CDN URL:


Imagine you're building a service with a lot of street photos:

  • You'll need to optimize the size and quality of the images for page load time
  • You'll have to blur the faces on the photos to comply with privacy laws
  • You'll want to add your watermark to every picture

Construct the value of the image src attribute template, adding the operations you pick, and use this template for every street photo in your project:

Street photo with blured faces, resized, with smart quality settings, and auto format

See the full list of image processing features here.

More features