Upload Widget

Add file sharing to any website with a single script tag. No API key, no backend code, no configuration required.

Quick Start

Add these two lines to your HTML:

<div id="easysend-upload"></div>
<script src="https://easysend.co/widget/easysend-widget.js" data-theme="dark"></script>

That is it. The widget renders a drag-and-drop upload zone. Users drop files, the widget uploads to EasySend and displays the share link.

Live Demo

Configuration

Customize the widget with data- attributes on the script tag:

AttributeDefaultDescription
data-theme"dark"Color scheme: "dark" or "light"
data-max-files"10"Maximum files per upload
data-button-text"Upload"Customize the dropzone text
data-target"easysend-upload"Target div ID for the widget

Example with options

<div id="my-uploader"></div>
<script
  src="https://easysend.co/widget/easysend-widget.js"
  data-theme="light"
  data-max-files="5"
  data-button-text="Share Files"
  data-target="my-uploader"
></script>

How It Works

  1. User drags files onto the widget (or clicks to browse)
  2. Widget uploads files to the EasySend API
  3. Share link is displayed in the widget
  4. User copies the link or opens it in a new tab

The widget handles all upload logic, progress display and error handling. No backend code needed on your server.

Styling

The widget includes its own CSS (easysend-widget.css) that is loaded automatically. It uses CSS custom properties that match EasySend's dark and light themes. To override styles, target the #easysend-upload container in your own CSS.

Use Cases

FAQ

Does the widget require an API key?

No. The widget works without any API key, account or authentication. Add the script tag and it works immediately.

Can I customize the widget appearance?

Yes. The widget supports dark and light themes via the data-theme attribute. You can also set max files, customize button text and target a specific container div.

Where are uploaded files stored?

Files are uploaded to EasySend servers (Cloudflare R2 storage). Free uploads are available for 3 days. The widget uses the same infrastructure as easysend.co.

For programmatic file sharing, see the REST API documentation. For AI integration, see the MCP server docs.