file-drop: temporary R2 relay PUT /?name=notes.txt&ttl=3600 Authorization: Bearer $DROP_TOKEN body is the file; Content-Length is required, max 100 MiB. ttl is seconds, default 1 day, minimum 1 second, max 7 days. GET /:id download (HEAD returns headers only) GET /:id?meta=1 metadata only POST /:id/share JSON {"ttl":3600}, optional; max 7 days and bounded by file expiry DELETE /:id delete now Authenticated share creation returns a signed GET/HEAD URL, usable without a bearer token. Metadata, uploads, share creation, and deletion require the bearer token. Expired objects are unavailable immediately, deleted on read, and swept hourly (UTC).