A little bit of background first: Over on Puzzling.SE, we've been nuking users that look very spammy, before they've had a chance to post anything. It began with posts like this, which advertised watching things online and stuff.
So then we (I'm not a mod there, I just pinged them with links) st...
As -4 user removed, -2 edit reverted, -2 edit reverted
Your home page is not nofollowed once you reach 2000 rep, though. (Neither are internal links, but they won't give you any Google Guice. (Oh, wait, Google Guice actually exists. That takes the fun out.)) — mmyersDec 1 '09 at 20:54
The reputation tab of this user bot's profile is a bit off.
On June 15th, a user was deleted who (presumably) cast the final 'approve' vote on two suggested edits. On that day, SmokeDetector's reputation decreased from 299 to 295, but the reputation tab makes it look like a -8 change.
The Stack Exchange API has a couple of calls that return a list of flag_option objects.
These objects contain a couple of properties that can be used to identify the flag you need.
For example, when I want to cast a spam flag from an app, I used to look for a flag option with an title equal to "...
@tripleee That pattern looks like it's already caught by Pattern-matching website in body and Pattern-matching website in answer; use !!/watch-force if you really want to do that.