I was able to get it working, although it does require downgrading xdg-desktop-portal
from 1.15.0-1 to 1.14.6-1, which is not noted in the referenced documentation. 
Ensure that environment variables are set properly. If your distro does not set them automatically, use a launch script to export XDG_CURRENT_DESKTOP=sway before Sway is launched.
There are a number of ways to do this, but if you are still using greetd
(the default login manager) then the simplest way is probably to set up a wrapper script as suggested by the greetd
wiki.
Create the script:
micro /usr/local/bin/sway-run
I just pasted the whole window right out of the Flameshot Github page linked above:
#!/bin/bash
export SDL_VIDEODRIVER=wayland
export _JAVA_AWT_WM_NONREPARENTING=1
export QT_QPA_PLATFORM=wayland
export XDG_CURRENT_DESKTOP=sway
export XDG_SESSION_DESKTOP=sway
exec sway
Don’t forget to make it executable.
sudo chmod +x /usr/local/bin/sway-run
Next, add it to the greetd
config.
micro /etc/greetd/config.toml
On the “command =
” line, change “sway
” to “sway-run
” (the script you just made):
command = "tuigreet -r --cmd sway-run"
Yours might look a little different than mine because I changed my greeter at some point. The important thing is to change “sway
” to “sway-run
”–the rest of the line you can leave as-is.
Add the stuff for systemd
and dbus
to your config:
micro .config/sway/config
exec systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK
exec hash dbus-update-activation-environment 2>/dev/null && \
dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK
That’s about it for what the documentation suggests, but it still wasn’t working. I poked around for a bit searching off of debug clues from executing flameshot gui
while the dbus-monitor --session sender=org.freedesktop.portal.Desktop destination=org.freedesktop.portal.Desktop
line was running and somehow wound up on this bug report from August: flameshot gui from cli does nothing. dbus error UnknownMethod: "No such interface “org.freedesktop.portal.Screenshot” · Issue #2872 · flameshot-org/flameshot · GitHub
Multiple people in the thread mentioned they were able to get it working after downgrading xdg-desktop-portal
from 1.15.0-1 to 1.14.6-1 so I gave it a shot.
sudo pacman -U file:///var/cache/pacman/pkg/xdg-desktop-portal-1.14.6-1-x86_64.pkg.tar.zst
It works! 
Obviously if you don’t have the 1.14.6-1 version in your cache (mine is timestamped August 2nd), you’ll have to rummage around in the Arch Linux Archive and install it that way.
Don’t forget to add IgnorePkg = xdg-desktop-portal
to your pacman.conf
until it gets straightened out. Happy screenshotting! 