Developers
A small REST API over HTTPS. JSON in, JSON out, token authentication. No SDK required.
Base URL:
https://zeonsilus.duckdns.org/api/v1 · Authentication: Authorization: Bearer <token>Upload a file
curl -X POST https://zeonsilus.duckdns.org/api/v1/files \\
-H "Authorization: Bearer $DROP_NEST_TOKEN" \\
-F "file=@report.pdf" \\
-F "expires=7d"
Responds with the transfer object:
{
"id": "8f3a2c91d0",
"name": "report.pdf",
"size": 4404019,
"url": "https://zeonsilus.duckdns.org/f/8f3a2c91d0",
"created_at": "2026-11-11T09:14:02Z",
"expires_at": "2026-11-18T09:14:02Z"
}
Endpoints
| Method | Path | Description |
|---|---|---|
| POST | /files | Create a transfer |
| GET | /files | List your transfers |
| GET | /files/:id | Fetch one transfer |
| DELETE | /files/:id | Delete a transfer |
| GET | /usage | Bandwidth and quota |
Rate limits
60 requests per minute per token, 5 concurrent uploads. Responses include X-RateLimit-Remaining and Retry-After. Exceeding the limit returns 429.
Errors
{ "error": { "code": "file_too_large", "message": "Maximum size for this plan is 2 GB" } }
Status codes follow HTTP semantics: 400 validation, 401 authentication, 403 plan restriction, 404 unknown transfer, 413 too large, 429 rate limited.