Become a MacRumors Supporter for $25/year with no ads, private forums, and more!

Mac Mail App Broken for Some Gmail Users in macOS Mojave 10.14.4

squirrellydw

macrumors regular
Nov 22, 2003
180
132
A protocol is a protocol. i don't see how age is relevant here.

Just call it what it is. It's a seemingly random issue and nobody really knows why or how.

It "seems" that most people having the issue have accounts that are older, but it is an Apple problem. But to say you just clicked on "open in safari" and thinks that fixes the problem is wrong. You are not having the same issue as everyone else here so just move along. I'm glad yours is working but for a lot of us it isn't.
 
  • Like
Reactions: bunnyhero

Gannet

macrumors newbie
Dec 20, 2009
7
18
[edit] Google has now fixed the issue so the following workaround is no longer necessary.

i'd definitely be interested, i sometimes use charles.
Okay, so I've tried to make this as easy as possible. We're going to use Charles to rewrite a response from google to include the email address which is for some reason missing in google's own response. This is a one time setup only needed for verification.
  1. Download, install and run Charles.
  2. If this is your first time using Charles it should prompt you to authorize automatic proxy configuration. Do this. (Otherwise just make sure the macOS proxy is enabled and working)
  3. From the Help menu choose SSL Proxying > Install Charles Root Certificate.
  4. Once the certificate is installed, find it in your keychain (type Charles into the search), open it, expand the Trust section and set to Always Trust. You will be prompted for your password when closing it.
  5. Back in Charles, from the Proxy menu choose SSL Proxying Settings.
  6. Add a new location with Host: people.googleapis.com.
  7. From the Tools menu choose Rewrite and click the Add button.
  8. Add a new location with Host: people.googleapis.com.
  9. Add a new action with the following details...
    • Type: Body
    • Where: Response
    • Replace Value: {"names":[{"metadata":{"primary":true},"displayName":"Your Name"}],"emailAddresses":[{"value":"your@email"}]}
    • (Make sure you put in your name and email address)
  10. Once you save this, we're all set. Go to your system Internet Accounts or (Mail) and authorize your account.
  11. If everything thing is working, you can quit Charles and feel free to delete the certificate from Keychain.
 
Last edited:

bunnyhero

macrumors newbie
Nov 4, 2008
29
8
It "seems" that most people having the issue have accounts that are older, but it is an Apple problem. But to say you just clicked on "open in safari" and thinks that fixes the problem is wrong. You are not having the same issue as everyone else here so just move along. I'm glad yours is working but for a lot of us it isn't.
my own experience seems to fit this pattern. my @gmail account is fine, but my g-suite account (which is also > 10 years old) won't authenticate.
 

User008

macrumors newbie
Oct 24, 2015
25
120
my own experience seems to fit this pattern. my @gmail account is fine, but my g-suite account (which is also > 10 years old) won't authenticate.

One of my G-Suite accounts is about 6 months old and is demonstrating this problem as is one of my gmail addresses which dates back to the invite-only days, so I don't think age is a factor here.
 

roterblitz

macrumors newbie
Mar 29, 2019
1
0
Okay, so I've tried to make this as easy as possible. We're going to use Charles to rewrite a response from google to include the email address which is for some reason missing in google's own response. This is a one time setup only needed for verification.

Thank you so much, this trick working fine for me.
 

judgement

macrumors newbie
Mar 29, 2019
1
0
Maryland
I tried the trick with Charles and now I'm getting a "failed to authenticate" error (before, it was just failing silently).
 

krizko

macrumors regular
Nov 10, 2009
115
2
Okay, so I've tried to make this as easy as possible. We're going to use Charles to rewrite a response from google to include the email address which is for some reason missing in google's own response. This is a one time setup only needed for verification.
  1. Download, install and run Charles.
  2. If this is your first time using Charles it should prompt you to authorize automatic proxy configuration. Do this. (Otherwise just make sure the macOS proxy is enabled and working)
  3. From the Help menu choose SSL Proxying > Install Charles Root Certificate.
  4. Once the certificate is installed, find it in your keychain (type Charles into the search), open it, expand the Trust section and set to Always Trust. You will be prompted for your password when closing it.
  5. Back in Charles, from the Proxy menu choose SSL Proxying Settings.
  6. Add a new location with Host: people.googleapis.com.
  7. From the Tools menu choose Rewrite and click the Add button.
  8. Add a new location with Host: people.googleapis.com.
  9. Add a new action with the following details...
    • Type: Body
    • Where: Response
    • Replace Value: {"names":[{"metadata":{"primary":true},"displayName":"Your Name"}],"emailAddresses":[{"value":"your@email"}]}
    • (Make sure you put in your name and email address)
  10. Once you save this, we're all set. Go to your system Internet Accounts or (Mail) and authorize your account.
  11. If everything thing is working, you can quit Charles and feel free to delete the certificate from Keychain.

This did not work for me. Login Failed in Mail after following all steps.
 

videosoul

macrumors newbie
Mar 17, 2018
22
41
London, UK
I am also having this problem.

I have two Gmail accounts (let's call them A and B). I also have two macs (let's call them 1 and 2).

I updated Mac 1 and 2 to 10.14.4 at the same yesterday.

After the update, on both Macs my Gmail accounts had disappeared entirely from the Internet Accounts System Preferences pane. I re-added them.

On Mac 1, I was able to successfully re-add BOTH accounts. Both worked perfectly.

On Mac 2, I was only able to re-add account B. Account A got stuck in this endless of authentication failures with the "(null)" error.

It's worth noting at this point that account B is a regular @gmail.com account, whereas account A uses a custom domain to login to Google.

I spoke at length to Apple customer services who assured me that their engineers are aware of the issue and are working on a fix. Why this slipped through the net even though it was apparently an issue ion the pre-release Beta is beyond me!

They advised me the problem was more common with accounts from GSuite/Google for Business, or accounts with custom domains.

They also suggested I try something which apparently has worked for some people: delete all Google accounts from System preferences. Then remove all references to Gmail and Google from Keychain. Then restart. Then re-add them to Internet Accounts in System Preferences. This didn't work for me.

---

UPDATE: On Mac 1 (the one where both accounts were working) I later discovered secondary issue. Although I was able to received and send email with Gmail account A (custom domain) I wasn't able to send zip file attachments! See attached screenshot.

A further bug was that in the error message (as shown in the screenshot) shows, there isn't a space between the word "visit" and "https://" and so it thinks "visit" is part of the URL, so clicking on the link doesn't work!

---

UPDATE 2: after restarting Mac 1 it now is stuck in the cycle of asking me for my password for Gmail account A again. However, when I do enter my password, it is successful and I don't see the (null) error. But moments later it forgets it again. So, still a problem, but totally different behaviour to Mac 2.... at least on Mac 1 I can see all my old emails in Mail. On Mac 2 I have nothing!

Screenshot 2019-03-28 at 23.03.37.jpg
 

cmChimera

macrumors 68040
Feb 12, 2010
3,989
2,865
Okay, so I've tried to make this as easy as possible. We're going to use Charles to rewrite a response from google to include the email address which is for some reason missing in google's own response. This is a one time setup only needed for verification.
  1. Download, install and run Charles.
  2. If this is your first time using Charles it should prompt you to authorize automatic proxy configuration. Do this. (Otherwise just make sure the macOS proxy is enabled and working)
  3. From the Help menu choose SSL Proxying > Install Charles Root Certificate.
  4. Once the certificate is installed, find it in your keychain (type Charles into the search), open it, expand the Trust section and set to Always Trust. You will be prompted for your password when closing it.
  5. Back in Charles, from the Proxy menu choose SSL Proxying Settings.
  6. Add a new location with Host: people.googleapis.com.
  7. From the Tools menu choose Rewrite and click the Add button.
  8. Add a new location with Host: people.googleapis.com.
  9. Add a new action with the following details...
    • Type: Body
    • Where: Response
    • Replace Value: {"names":[{"metadata":{"primary":true},"displayName":"Your Name"}],"emailAddresses":[{"value":"your@email"}]}
    • (Make sure you put in your name and email address)
  10. Once you save this, we're all set. Go to your system Internet Accounts or (Mail) and authorize your account.
  11. If everything thing is working, you can quit Charles and feel free to delete the certificate from Keychain.
THANK YOU. Life saver!
 
  • Like
Reactions: Protocol41

anovick

macrumors newbie
Oct 7, 2006
4
1
Okay, so I've tried to make this as easy as possible. We're going to use Charles to rewrite a response from google to include the email address which is for some reason missing in google's own response. This is a one time setup only needed for verification.
  1. Download, install and run Charles.
  2. If this is your first time using Charles it should prompt you to authorize automatic proxy configuration. Do this. (Otherwise just make sure the macOS proxy is enabled and working)
  3. From the Help menu choose SSL Proxying > Install Charles Root Certificate.
  4. Once the certificate is installed, find it in your keychain (type Charles into the search), open it, expand the Trust section and set to Always Trust. You will be prompted for your password when closing it.
  5. Back in Charles, from the Proxy menu choose SSL Proxying Settings.
  6. Add a new location with Host: people.googleapis.com.
  7. From the Tools menu choose Rewrite and click the Add button.
  8. Add a new location with Host: people.googleapis.com.
  9. Add a new action with the following details...
    • Type: Body
    • Where: Response
    • Replace Value: {"names":[{"metadata":{"primary":true},"displayName":"Your Name"}],"emailAddresses":[{"value":"your@email"}]}
    • (Make sure you put in your name and email address)
  10. Once you save this, we're all set. Go to your system Internet Accounts or (Mail) and authorize your account.
  11. If everything thing is working, you can quit Charles and feel free to delete the certificate from Keychain.
A bit of faith required, but...

IT WORKED!

Thank you, thank you, thank you.
 
  • Like
Reactions: Protocol41

sgruby

macrumors newbie
Jan 19, 2008
4
2
Okay, so I've tried to make this as easy as possible. We're going to use Charles to rewrite a response from google to include the email address which is for some reason missing in google's own response. This is a one time setup only needed for verification.
  1. Download, install and run Charles.
  2. If this is your first time using Charles it should prompt you to authorize automatic proxy configuration. Do this. (Otherwise just make sure the macOS proxy is enabled and working)
  3. From the Help menu choose SSL Proxying > Install Charles Root Certificate.
  4. Once the certificate is installed, find it in your keychain (type Charles into the search), open it, expand the Trust section and set to Always Trust. You will be prompted for your password when closing it.
  5. Back in Charles, from the Proxy menu choose SSL Proxying Settings.
  6. Add a new location with Host: people.googleapis.com.
  7. From the Tools menu choose Rewrite and click the Add button.
  8. Add a new location with Host: people.googleapis.com.
  9. Add a new action with the following details...
    • Type: Body
    • Where: Response
    • Replace Value: {"names":[{"metadata":{"primary":true},"displayName":"Your Name"}],"emailAddresses":[{"value":"your@email"}]}
    • (Make sure you put in your name and email address)
  10. Once you save this, we're all set. Go to your system Internet Accounts or (Mail) and authorize your account.
  11. If everything thing is working, you can quit Charles and feel free to delete the certificate from Keychain.

Holy cow, that worked! With a little extra work, it also worked to get my account working on my iPad again. I didn't check to see what the values coming back from Google were, but do you know and have you reported this to Apple? My guess is that Apple previously didn't verify the responses and now they do causing the issue.
[doublepost=1553870734][/doublepost]
Or iOS. I’m having the issue on iOS as well, and can’t do a proxy workaround there :(
Actually you can do the proxy workaround on iOS. Fire up Charles and under the help menu, choose Install Charles Root Certificate on a Mobile Device. Follow the directions on your iOS device to setup the proxy, install the provisioning profile, and then trust the certificate. Then add the account and it works. When done, remove the profile (which removes the certificate).

I just did this and it worked.
 

cmChimera

macrumors 68040
Feb 12, 2010
3,989
2,865
That did it. Thanks. I'll have to re-add as a normal gmail account when they fix the bug, so I can make the colors identical to my mac (small worry, I know) but this has solved my problem. Thanks again.
[doublepost=1553871147][/doublepost]
Actually you can do the proxy workaround on iOS. Fire up Charles and under the help menu, choose Install Charles Root Certificate on a Mobile Device. Follow the directions on your iOS device to setup the proxy, install the provisioning profile, and then trust the certificate. Then add the account and it works. When done, remove the profile (which removes the certificate).

I just did this and it worked.
OH SNAP. I'll try this. Thanks!
 

utterer

macrumors newbie
Jan 14, 2016
17
84
Okay, so I've tried to make this as easy as possible. We're going to use Charles to rewrite a response from google to include the email address which is for some reason missing in google's own response. This is a one time setup only needed for verification.
  1. Download, install and run Charles.
  2. If this is your first time using Charles it should prompt you to authorize automatic proxy configuration. Do this. (Otherwise just make sure the macOS proxy is enabled and working)
  3. From the Help menu choose SSL Proxying > Install Charles Root Certificate.
  4. Once the certificate is installed, find it in your keychain (type Charles into the search), open it, expand the Trust section and set to Always Trust. You will be prompted for your password when closing it.
  5. Back in Charles, from the Proxy menu choose SSL Proxying Settings.
  6. Add a new location with Host: people.googleapis.com.
  7. From the Tools menu choose Rewrite and click the Add button.
  8. Add a new location with Host: people.googleapis.com.
  9. Add a new action with the following details...
    • Type: Body
    • Where: Response
    • Replace Value: {"names":[{"metadata":{"primary":true},"displayName":"Your Name"}],"emailAddresses":[{"value":"your@email"}]}
    • (Make sure you put in your name and email address)
  10. Once you save this, we're all set. Go to your system Internet Accounts or (Mail) and authorize your account.
  11. If everything thing is working, you can quit Charles and feel free to delete the certificate from Keychain.

THANK YOU! This method worked for me without problem. Great work on the directions too.
 
  • Like
Reactions: Protocol41

videosoul

macrumors newbie
Mar 17, 2018
22
41
London, UK
Okay, so I've tried to make this as easy as possible. We're going to use Charles to rewrite a response from google to include the email address which is for some reason missing in google's own response. This is a one time setup only needed for verification.
  1. Download, install and run Charles.
  2. If this is your first time using Charles it should prompt you to authorize automatic proxy configuration. Do this. (Otherwise just make sure the macOS proxy is enabled and working)
  3. From the Help menu choose SSL Proxying > Install Charles Root Certificate.
  4. Once the certificate is installed, find it in your keychain (type Charles into the search), open it, expand the Trust section and set to Always Trust. You will be prompted for your password when closing it.
  5. Back in Charles, from the Proxy menu choose SSL Proxying Settings.
  6. Add a new location with Host: people.googleapis.com.
  7. From the Tools menu choose Rewrite and click the Add button.
  8. Add a new location with Host: people.googleapis.com.
  9. Add a new action with the following details...
    • Type: Body
    • Where: Response
    • Replace Value: {"names":[{"metadata":{"primary":true},"displayName":"Your Name"}],"emailAddresses":[{"value":"your@email"}]}
    • (Make sure you put in your name and email address)
  10. Once you save this, we're all set. Go to your system Internet Accounts or (Mail) and authorize your account.
  11. If everything thing is working, you can quit Charles and feel free to delete the certificate from Keychain.

Worked for me too, thanks!
 
  • Like
Reactions: Protocol41

Ifti

macrumors 68020
Dec 14, 2010
2,448
555
UK
I upgraded.
Had to login to all my Gmail accounts etc - and its been fine since. Several days now and no more logins.....
 

skylamar

macrumors newbie
Dec 9, 2011
9
3
Okay, so I've tried to make this as easy as possible. We're going to use Charles to rewrite a response from google to include the email address which is for some reason missing in google's own response. This is a one time setup only needed for verification.
  1. Download, install and run Charles.
  2. If this is your first time using Charles it should prompt you to authorize automatic proxy configuration. Do this. (Otherwise just make sure the macOS proxy is enabled and working)
  3. From the Help menu choose SSL Proxying > Install Charles Root Certificate.
  4. Once the certificate is installed, find it in your keychain (type Charles into the search), open it, expand the Trust section and set to Always Trust. You will be prompted for your password when closing it.
  5. Back in Charles, from the Proxy menu choose SSL Proxying Settings.
  6. Add a new location with Host: people.googleapis.com.
  7. From the Tools menu choose Rewrite and click the Add button.
  8. Add a new location with Host: people.googleapis.com.
  9. Add a new action with the following details...
    • Type: Body
    • Where: Response
    • Replace Value: {"names":[{"metadata":{"primary":true},"displayName":"Your Name"}],"emailAddresses":[{"value":"your@email"}]}
    • (Make sure you put in your name and email address)
  10. Once you save this, we're all set. Go to your system Internet Accounts or (Mail) and authorize your account.
  11. If everything thing is working, you can quit Charles and feel free to delete the certificate from Keychain.

Wow, that worked for me. Thanks so much! I have one question, though: Mail now says "Connection Logging Enabled" at the top of its windows. What does that mean and how do I remove it?
 
  • Like
Reactions: Protocol41

chmars

macrumors newbie
Mar 29, 2019
1
0
Okay, so I've tried to make this as easy as possible. We're going to use Charles to rewrite a response from google to include the email address which is for some reason missing in google's own response. This is a one time setup only needed for verification.

That's pretty cool, thank you!

Do you have by chance a solution do rewrite more than just one mail account?
 

skylamar

macrumors newbie
Dec 9, 2011
9
3
Wow, that worked for me. Thanks so much! I have one question, though: Mail now says "Connection Logging Enabled" at the top of its windows. What does that mean and how do I remove it?

Please ignore my question. I figured it out. Thanks.
 

PFE

macrumors newbie
Mar 29, 2019
1
1
Okay, so I've tried to make this as easy as possible. We're going to use Charles to rewrite a response from google to include the email address which is for some reason missing in google's own response. This is a one time setup only needed for verification.
  1. Download, install and run Charles.
  2. If this is your first time using Charles it should prompt you to authorize automatic proxy configuration. Do this. (Otherwise just make sure the macOS proxy is enabled and working)
  3. From the Help menu choose SSL Proxying > Install Charles Root Certificate.
  4. Once the certificate is installed, find it in your keychain (type Charles into the search), open it, expand the Trust section and set to Always Trust. You will be prompted for your password when closing it.
  5. Back in Charles, from the Proxy menu choose SSL Proxying Settings.
  6. Add a new location with Host: people.googleapis.com.
  7. From the Tools menu choose Rewrite and click the Add button.
  8. Add a new location with Host: people.googleapis.com.
  9. Add a new action with the following details...
    • Type: Body
    • Where: Response
    • Replace Value: {"names":[{"metadata":{"primary":true},"displayName":"Your Name"}],"emailAddresses":[{"value":"your@email"}]}
    • (Make sure you put in your name and email address)
  10. Once you save this, we're all set. Go to your system Internet Accounts or (Mail) and authorize your account.
  11. If everything thing is working, you can quit Charles and feel free to delete the certificate from Keychain.
Fantastic. Both my G-Suite accounts are now up and running! Thanks!
 
  • Like
Reactions: Protocol41

spsheridan

macrumors newbie
Dec 14, 2009
2
1
tl;dr Apple is aware of the G-Suite Gmail authentication problem and is working it but does not yet have a solution that works for everyone.

I’ve had two phone sessions with a Mac Senior Advisor at Apple to help resolve my G-Suite Gmail authentication problem. Yesterday, after several attempts to resolve the issue that didn’t work, he went to the Engineering team to get advice on next steps and called me back today. Based on feedback from Engineering, he had me remove all of the keychain entries associated with my Gmail accounts then try authenticating my G-Suite Gmail account. Still didn’t work, same endless authentication loop. He confirmed that Apple has been getting many reports of this problem and is working it, but removing the Gmail keychain entries has worked for some people. He also confirmed most of the authentication issues are with G-Suite accounts, but not all. My guess is that some people who have a Gmail account and report the problem don’t know if it’s managed through G-Suite. The advisor said he would either get back to me with a proposed fix/work-around, if Engineering is able to come tip with one, or it will come out with the next Mojave update. So this may be awhile before it’s fixed. I will post any feedback I may get from the advisor.
 
  • Like
Reactions: EedyBeedyBeeps
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.