· FlingDrop Team · Developers  · 3 min read

How to Automate File Delivery with the FlingDrop REST API

FlingDrop's REST API lets developers upload files and generate temporary download links programmatically. This guide covers authentication, the upload endpoint, retrieving download URLs, and common integration patterns.

FlingDrop's REST API lets developers upload files and generate temporary download links programmatically. This guide covers authentication, the upload endpoint, retrieving download URLs, and common integration patterns.

FlingDrop’s REST API enables developers to automate temporary file delivery without a web interface. You can upload files programmatically, retrieve temporary download URLs, and integrate file sharing into CRM systems, e-commerce platforms, client portals, and internal business tools. The API is available on the Business plan ($29/month). For a list of enterprise use cases enabled by the API, see 10 Use Cases for Automated File Sharing via API in Enterprise Workflows.

Authentication

All API requests must include your API Key in the X-API-Key header. You can find your API Key in your FlingDrop dashboard, or it is emailed to you when you register.

X-API-Key: your_api_key_here

API Keys are scoped to your account and inherit the file size and expiration limits of your plan.

Uploading a File

Send a POST request to the upload endpoint with the file as multipart/form-data:

curl -X POST https://app.flingdrop.com/api/upload \
  -H "X-API-Key: your_api_key_here" \
  -F "file=@/path/to/your/document.pdf"

Parameters:

  • file (required): The file to upload.

Note on Expiration: File expiration is determined by your plan. The Free plan defaults to 7 days, Business plan to 30 days, and Enterprise plan to 90 days. Contact support to customize expiration for Enterprise accounts.

Response:

{
  "success": true,
  "data": {
    "url": "https://app.flingdrop.com/f/abc123xyz",
    "shortCode": "abc123xyz",
    "fileName": "document.pdf",
    "fileSize": 2048576,
    "expiresAt": "2026-04-01T00:00:00Z",
    "isDuplicate": false
  }
}

The url field is the link you share with your recipient. It requires no login to access. The shortCode uniquely identifies the file and is embedded in the download URL.

Managing Files

Currently, file management is available through the FlingDrop dashboard. The API is focused on uploading files and generating shareable links. To revoke access to a file or view upload history, log in to your dashboard.

Future: File listing and deletion endpoints may be added in a future release. Subscribe to our developer blog for updates.

Common Integration Patterns

1. CRM: Auto-send proposal PDF after deal creation

When a new deal is created in your CRM, trigger a webhook that uploads the proposal template and emails the client a download link — no manual file attachment needed.

import requests

def send_proposal(client_email, pdf_path):
    with open(pdf_path, 'rb') as f:
        response = requests.post(
            'https://app.flingdrop.com/api/upload',
            headers={'X-API-Key': 'your_api_key_here'},
            files={'file': f}
        )
    data = response.json()
    if data['success']:
        download_url = data['data']['url']
        # send download_url to client_email via your email service
        return download_url
    else:
        print(f"Upload failed: {data['error']['message']}")
        return None

2. E-commerce: Deliver digital products after purchase

After a successful Stripe payment webhook, upload the purchased digital file and immediately return a download URL to the customer — without storing files in your own infrastructure.

3. Internal tooling: Nightly report distribution

Schedule a cron job that uploads generated reports each night and emails download links to stakeholders. Links expire after 7 days, keeping your storage clean automatically.

#!/bin/bash
REPORT_FILE="/var/reports/daily-$(date +%Y%m%d).pdf"
RESPONSE=$(curl -s -X POST https://app.flingdrop.com/api/upload \
  -H "X-API-Key: $FLINGDROP_API_KEY" \
  -F "file=@$REPORT_FILE")
DOWNLOAD_URL=$(echo $RESPONSE | jq -r '.data.url')
# pipe $DOWNLOAD_URL to your notification system

Plan Limits Reference

PlanMax file sizeExpiration rangeMonthly pool
Business ($29/mo)10GB1–90 days500GB/month

Rate Limits

API requests are subject to plan-level rate limits. Exceeding limits returns a 429 Too Many Requests response with a Retry-After header indicating when the limit resets.

Getting Started

  1. Create a FlingDrop account at flingdrop.com (free registration).
  2. Upgrade to the Business plan in your dashboard for API access.
  3. Copy your API Key from the dashboard.
  4. Make your first upload request using the examples above.

Related guides:

Back to Blog

Related Posts

View All Posts »
How Agencies Send Large Design Files to Clients Securely

How Agencies Send Large Design Files to Clients Securely

Design files — Figma exports, Adobe Illustrator source files, high-resolution photography, and video renders — are often too large to email and too sensitive to leave in a permanent shared folder. Here are the best workflows for secure client delivery.