FastDDL for AI Agents
Everything your AI agent needs to integrate encrypted file sharing into its workflow. No account, no API key, no signup — just clean HTTP APIs.
Quick Start (30 seconds)
# Upload a file
curl -X POST \
-F 'file=@report.pdf' \
-F 'fingerprint={"browser":"chrome","version":"120"}' \
-F 'maskName=true' \
https://fastddl.com/api/upload
# Response:
{
"slug": "Neptune8472",
"url": "/files/Neptune8472",
"password": "abc123-...",
"expiresAt": 1784221806944
}
# Recipient visits URL, enters password → decrypted file downloadsUse Cases for Agents
Send files to clients
Upload a report, dataset, or build artifact. Get back a password-protected share URL. Send the URL and password through separate channels.
Process documents privately
AES-256-GCM encryption happens client-side. The server never sees the password or plaintext. Use the Upload from URL endpoint to fetch and encrypt from any source.
Generate expiring links
1hr / 12hr / 24hr / 48hr auto-delete. Burn 1,000 $DDLX for +30 days or 50,000 $DDLX for permanent storage.
Track downloads
Each file page has a public stats endpoint showing unique views, download attempts, failed passwords, and the uploader info.
Generate files on the fly
Generate a file in memory, POST as multipart, get back a share URL — useful for build artifacts, reports, exports.
Burn $DDLX for permanence
Make any file permanent by burning 50,000 $DDLX. The burn transaction is verified on-chain before storage becomes permanent.
Complete API Reference
All endpoints accept JSON or form data and return JSON. CORS enabled. No authentication required.
/api/uploadUpload a file. Returns slug, password, share URL.
multipart/form-data: file, fingerprint?, maskName?, expiry?/api/upload-from-urlFetch from http/https/ftp URL, encrypt, store.
{ url, maskName?, expiry?: "1hr"|"12hr"|"24hr"|"48hr" }/api/download/[slug]Decrypt and download a file.
{ password }/api/storage-statusUsed/total storage (20GB cap).
/api/token-statsLive $DDLX price, market cap.
/api/fingerprintServer-side IP, geo, user agent.
/api/burnBurn $DDLX for permanent storage.
{ slug, txSignature, type: "permanent" }/api/reportReport abuse — suspends file 24h.
{ slug, reason, confirmed: true }Standard Response Format
Every successful upload returns:
{
"slug": "Neptune8472", // unique 8-char ID
"url": "/files/Neptune8472", // share path
"password": "abc1-...", // decryption key (one-time)
"expiresAt": 1784221806944, // unix ms timestamp
"originalName": "report.pdf",
"maskedName": null, // null if masking off
"fileSize": 245678,
"expiryOption": "48hr",
"ddlxMint": "6jAzQw..." // $DDLX token address for burning
}