Skip to main content

Add File Sharing to Your App in 5 Minutes

Add File Sharing to Any App

The fastest way to add file sharing to any application is to use EasySend's free REST API. With a single HTTP POST request and no API key, your app can upload files and generate shareable download links. Works with any language or framework. No OAuth, no billing, no setup.

curl -F 'files[][email protected]' https://easysend.co/api/v1/upload
# Returns: {"share_url": "/Ab3Kz", "upload_token": "...", "files": [...]}
View Full API Docs

Code Examples

JavaScript / Node.js

const form = new FormData();
form.append('files[]', fs.createReadStream('report.pdf'));

const res = await fetch('https://easysend.co/api/v1/upload', {
  method: 'POST',
  body: form
});
const { short_code } = await res.json();
console.log(`Share: https://easysend.co/${short_code}`);

Python

import requests

with open('report.pdf', 'rb') as f:
    r = requests.post('https://easysend.co/api/v1/upload', files={'files[]': f})

data = r.json()
print(f"Share: https://easysend.co/{data['short_code']}")

PHP

$ch = curl_init('https://easysend.co/api/v1/upload');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, ['files[]' => new CURLFile('report.pdf')]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = json_decode(curl_exec($ch), true);
echo "Share: https://easysend.co/" . $data['short_code'];

Go

body := &bytes.Buffer{}
writer := multipart.NewWriter(body)
part, _ := writer.CreateFormFile("files[]", "report.pdf")
io.Copy(part, file)
writer.Close()

resp, _ := http.Post("https://easysend.co/api/v1/upload",
    writer.FormDataContentType(), body)
// Parse JSON response for share URL

Ruby

require 'net/http'
require 'json'

uri = URI('https://easysend.co/api/v1/upload')
req = Net::HTTP::Post.new(uri)
req.set_form([['files[]', File.open('report.pdf')]], 'multipart/form-data')
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http| http.request(req) }
puts "Share: https://easysend.co/#{JSON.parse(res.body)['short_code']}"

cURL (Bash)

RESPONSE=$(curl -s -F 'files[][email protected]' https://easysend.co/api/v1/upload)
LINK=$(echo $RESPONSE | grep -o '"short_code":"[^"]*"' | cut -d'"' -f4)
echo "Share: https://easysend.co/$LINK"

Use Cases

Why Not Build Your Own?

Building file sharing from scratch means setting up:

Or you can call one API endpoint. One POST request. One shareable link back. Zero infrastructure.

Claude Code / AI Agent Integration

EasySend works natively with AI assistants via MCP (Model Context Protocol). Install our Claude Code plugin and let AI upload and share files as part of your workflow:

// Add to ~/.claude/settings.json
{
  "mcpServers": {
    "easysend": {
      "command": "npx",
      "args": ["-y", "easysend-mcp"]
    }
  }
}

Then tell Claude: "Upload report.pdf to EasySend" and it handles the rest. Source on GitHub.

CLI Tool

For terminal workflows, install our CLI with one command:

curl -fsSL https://easysend.co/cli/install.sh | bash
easysend report.pdf  # Upload and get link

Embeddable Widget

Add file uploads to your website with one script tag:

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

See the API documentation for the complete reference.

FAQ

How do I add file sharing to my app?

Send a POST request to https://easysend.co/api/v1/upload with your file as multipart/form-data. No API key needed. The response JSON contains a shareable URL. Works from any language - JavaScript, Python, PHP, Go, Ruby or anything that can make HTTP requests.

Does the API require authentication?

No. The upload API is completely public. No API key, no OAuth, no signup. Upload tokens are returned in the response for managing files after upload.

What are the rate limits?

10 new bundles per hour per IP, 60 API requests per minute. These limits are generous for normal usage. For higher volume, contact us.

Can I use this in production?

Yes. EasySend is built on encrypted cloud infrastructure with global CDN distribution. The API is stable and versioned (v1). We use it ourselves for all our integrations.

You might also like

Share Photos Online for Free
Learn more
Send Large Files Up to 1GB Free
Learn more
Secure Encrypted File Sharing
Learn more
Blog
Guides and tutorials