Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

rdav

macrumors 6502
Original poster
Mar 16, 2007
314
32
So/California.
Anyone know how to reclassify multiple emails as "Not Junk" in macOS Mail?

They're sitting in the Mail InBox, labeled as Junk. It's simple to remove the Junk designation for an individual message, via the supplied button.

BUT there seems to be no way (that I can find) to do the same for multiples! If a larger selection of emails are highlighted, then there's no working "Not Junk" option - Which makes the process very difficult & practically impossible.

There's some Apple Support page discussion, but no working solution. Eg. [7629951].
https://origin-discussions-us.apple.com/thread/7629951?start=0&tstart=0
 
Last edited:
Anyone know how to reclassify multiple emails as "Not Junk" in macOS Mail?

What I do is go direct to my ISP web log on and do it from there. Everything formerly marked as junk then get's re-directed to my In Box as mail not junk. Not as convenient as doing it from the Mail app but it works.
 
It may be possible to write an AppleScript to do this.

First, someone should check the Scripting Dictionary of Mail, on the same OS the original poster is using. I don't have that here, so I can't check it myself.

To do this, use Script Editor (or AppleScript Editor) to open the Scripting Dictionary of Mail.app.

Next, look under the Message category. It should be in the list with Standard Suite.

In the Message category there should be a message class. Select that.

It should then display a list of message properties. Look for one that says "junk mail status", or something similar.

(I'm using terms from an older OS and Mail, so some of the above may not be exactly as I've shown it.)

If everything is as I've described, "junk mail status" won't be a r/o property (read-only). That means it will be a read/write property. Which means you should be able to change it with scripting.


My rough guess as to the AppleScript syntax is along the lines of:

Code:
tell app "Mail"
  tell every message whose junk mail status is true to set junk mail status to false.
end tell

This is a rough example. I haven't tested it. I haven't even checked whether it's valid syntax.


The message-thread linked in the OP has some replies that question whether Mail learns to not classify subsequent emails as junk. There is no clear concensus.

If the OP wants to ensure all subsequent emails from certain senders are not classified as Junk, then the OP will probably need to create some rules that match the emails or sender in question, and then write an action that sets the message's junk mail status to false.
 
When you mark an email as not junk, the Mail App is supposed to store that to a rule so the next time it knows it isn't junk. Apple probably never envisioned that there would be many "Not Junk" emails in ones inbox, as most emails in ones inbox are JUNK.
 
What I do is go direct to my ISP web log on and do it from there. Everything formerly marked as junk then get's re-directed to my In Box as mail not junk. Not as convenient as doing it from the Mail app but it works.
Thx - That was one of the suggested solutions. However, it does not really work.

For example, with Yahoo Mail. There is no Junk folder, but there is one called Spam. It is not possible to search within "Spam", so stuff is hard to find. And the emails are moved to Trash after one month, then deleted. Meaning that all those falsely-categorized messages remain in Apple/Mail, but not Online. Sure, the entire Spam contents could be redirected to the InBox, but this includes a whole lot of genuine junk, and would need to be done frequently. So, not a great option - and it does not address the problem of large numbers of older messages.

When you mark an email as not junk, the Mail App is supposed to store that to a rule so the next time it knows it isn't junk. Apple probably never envisioned that there would be many "Not Junk" emails in ones inbox, as most emails in ones inbox are JUNK.
This does not seem to work, especially with any messages already received.

Also, the options for set Rules within Apple/Mail do not include setting the specified messages as "Not Junk" - thou there is one to run an AppleScript (as suggested by chown33). Thou I've not been able to find any references.

One of my frustrations is that the option to reclassify multiple messages WAS easy and available in Mail. Simply select a bunch of messages, and click "Not Junk" on the top one. (I recall doing this before). But now this very useful facility has been removed by Apple for some reason.
 
Last edited:
# Copy this Apple Script into your Script Editor
# Open a Mail Message Viewer Window
# Select a group of messages that are marked as Junk but are NOT Junk
# Run This Script and they will be marked as Not Junk

on run
tell application "Mail"
activate
set SelectedMessages to selection
try
repeat with EachMessage in SelectedMessages
set junk mail status of EachMessage to false
end repeat
end try
end tell
end run
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.