API quickstart
Send a PNG, JPEG, or WebP as multipart form data. Your API key needs the screenshots:write scope.
curl -sf -F "file=@shot.png" \
-H "Authorization: Bearer $DARVIN_API_KEY" \
-H "x-darvin-source: curl" \
https://dar.vin/api/v3/screenshotsExample 201 response
{
"shortUrl": "https://dar.vin/ax7Qp",
"viewerUrl": "https://dar.vin/s/0Kmv8pD1Xq",
"directUrl": "https://dar.vin/i/0Kmv8pD1Xq.png",
"expiresAt": "2026-07-18T14:00:00.000Z"
}ShareX
WindowsDownload .sxcu
- Download the configuration file.
- In ShareX, open Destinations → Custom image uploader settings.
- Import the .sxcu file, then replace YOUR_DARVIN_API_KEY with your API key.
Flameshot
LinuxDownload script
- Download the script and make it executable.
- Set DARVIN_API_KEY in your desktop session.
- Run it whenever you want to capture and upload.
On Wayland, bind the script in your desktop environment or compositor; app-level global hotkeys are not universal there.
flameshot gui --raw | curl -sf -F "file=@-;filename=shot.png" -H "Authorization: Bearer $DARVIN_API_KEY" -H "x-darvin-source: flameshot" https://dar.vin/api/v3/screenshotsksnip
LinuxOpen setup
Use ksnip's custom action with the current screenshot file as the command argument. The setup file includes the ready-to-paste command.
curl -sf -F "file=@$1" -H "Authorization: Bearer $DARVIN_API_KEY" -H "x-darvin-source: ksnip" https://dar.vin/api/v3/screenshots | jq -r .shortUrlResponse reference
| Field | What it is |
|---|---|
| shortUrl | The compact link to share. |
| viewerUrl | The canonical unlisted viewer page. |
| directUrl | The raw image URL. |
| expiresAt | ISO timestamp for Free captures, or null while retained. |
Limits by plan
| Plan | Storage | Max file | Retention |
|---|---|---|---|
| Free | 250 MB | 20 MB | 7 days |
| Plus | 20 GB | 25 MB | While subscribed |
| Pro | 100 GB | 50 MB | While subscribed |
| Max | 500 GB | 50 MB | While subscribed |