end-to-end encryption
aes-256-gcm with argon2 key derivation. files are encrypted before they ever touch storage.
upload files securely with optional end-to-end encryption. create pastes, share code, and keep your data private.
file hosting faster than you can cover your nose. encryption, speed, and control, and nothing you don't need.
aes-256-gcm with argon2 key derivation. files are encrypted before they ever touch storage.
built in rust for maximum throughput. files are served directly with minimal latency.
clean, short urls for easy sharing. perfect for sharex and other screen-capture tools.
public or private pastes with syntax highlighting. encryption optional, always yours.
set an expiry on any upload. files self-destruct, no scent left behind.
every upload ships with a secret deletion key. pull your files down anytime, instantly.
authenticate with an api key (Authorization: Bearer sk_live_...) and encryption is optional. anonymous uploads & pastes must be encrypted โ pass a password with ?server_encrypt=true, or client-encrypt in the browser. shortening a url requires an account with short-link permission. full reference in the api docs.
curl -X POST https://skunk.to/api/upload \
-H "Authorization: Bearer sk_live_xxxx_xxxxxxxxxxxxxxxx" \
-F "file=@/path/to/file.png" \
-F "expires_in=24"
curl -X POST https://skunk.to/api/paste \
-H "Authorization: Bearer sk_live_xxxx_xxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"content": "Hello, World!", "syntax": "plaintext", "is_private": false}'
curl -X POST https://skunk.to/api/shorten \
-H "Authorization: Bearer sk_live_xxxx_xxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com/long/link", "slug": "my-link"}'
spin up an account, grab an api key, and slip away clean.