SCREENSHOT DOCS

Upload screenshots to dar.vin

One endpoint, a short link back, and integrations for the capture tools you already use.

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/screenshots

Example 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

  1. Download the configuration file.
  2. In ShareX, open Destinations → Custom image uploader settings.
  3. Import the .sxcu file, then replace YOUR_DARVIN_API_KEY with your API key.

Flameshot

  1. Download the script and make it executable.
  2. Set DARVIN_API_KEY in your desktop session.
  3. 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/screenshots

ksnip

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 .shortUrl

Response reference

FieldWhat it is
shortUrlThe compact link to share.
viewerUrlThe canonical unlisted viewer page.
directUrlThe raw image URL.
expiresAtISO timestamp for Free captures, or null while retained.

Limits by plan

PlanStorageMax fileRetention
Free250 MB20 MB7 days
Plus20 GB25 MBWhile subscribed
Pro100 GB50 MBWhile subscribed
Max500 GB50 MBWhile subscribed

See screenshot plans and retention

darvin