Email failed to send - please verify your email settings 📧 / Email service is currently unavailable - please try again

the problem is finally solved, the first error was due to the version 3.32 of Ghost now fixed.
The second problem was due to Mailgun who had restricted my account permissions, they finally answered me and re-enabled my account.
It is not clear why it was limited.

Regarding Ghost, it would be useful to see these kinds of errors in the error log file instead of the production one

1 Like

Hi, I’m just writing to confirm that I fixed the error as mentioned by giacomosilli: I updated Ghost and wrote to Mailgun support who told me that there was indeed some sort of blockage on my account. I tried again and it worked perfectly.

Ran into the same issue. Reached out to mailgun, who unblocked our account, and upgraded to latest Ghost version but still getting the same error and not able to send emails.


Uncaught EmailFailedError: Email service is currently unavailable - please try again

Transactional emails work fine, i.e. signup.


It seems like my settings were stuck or something. I updated the email so some bogus email and then put it back as the correct email and now they are being sent. Still waiting on mailgun to actually send them but I got past the pesky error.

The UI says the emails were sent because it says Published and sending to x members but the emails were never sent.

Some info on my end:

  • your platform details - digital ocean droplet
  • what theme you are using - casper
  • your member settings - allowed free is enabled
  • which type of email is not working - bulk
  • your configuration for the broken email type - no errors but no send either

HI I have same issue.
My end is :

my platform details - digital ocean droplet
what theme I are using - editor
my member settings - allowed free is enabled
which type of email is not working - bulk
my log - "code":"BULK_EMAIL_SEND_FAILED","name":"EmailError","statusCode":500,"level":"normal","message":"The server has encountered an error."

I am facing the same issue.

On Ghost 4.5.0
Ubuntu: 18.04
Digital Ocean

The post was public & email was getting sent to paid & free members. Funny thing is that it’s working when sending an email to a specific person but failing to send to 35 subscribers (paid & free).

Subscription emails & all are going fine.

My error log is below:

{“name”:“Log”,“hostname”:“ghost-s-1vcpu-2gb-blr1-01”,“pid”:15807,“level”:50,“req”:{“meta”:{“requestId”:“2b77b6e6-206a-4929-abb3-0c8ff363b6c1”,“userId”:“1”},“url”:"/notifications/",“method”:“GET”,“originalUrl”:"/ghost/api/canary/admin/notifications/",“params”:{},“headers”:{“x-forwarded-for”:“xxx.xx.xx.xx”,“x-forwarded-proto”:“https”,“x-real-ip”:“xxx.xx.xx.xx”,“host”:“”,“connection”:“close”,“sec-ch-ua”:"" Not;A Brand";v=“99”, “Google Chrome”;v=“91”, “Chromium”;v=“91"”,“sec-ch-ua-mobile”:"?0",“app-pragma”:“no-cache”,“user-agent”:“Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36”,“content-type”:“application/json; charset=UTF-8”,“accept”:“application/json, text/javascript, /; q=0.01”,“x-requested-with”:“XMLHttpRequest”,“x-ghost-version”:“4.5”,“sec-fetch-site”:“same-origin”,“sec-fetch-mode”:“cors”,“sec-fetch-dest”:“empty”,“referer”:“",“accept-encoding”:"gzip, deflate, br”,“accept-language”:“en-US,en;q=0.9”,“cookie”:“REDACTED”},“query”:{}},“res”:{"_headers":{“x-powered-by”:“Express”,“cache-control”:“no-cache, private, no-store, must-revalidate, max-stale=0, post-check=0, pre-check=0”,“content-type”:“application/json; charset=utf-8”,“content-length”:“259”,“etag”:“W/“103-hkrtG3KtYASDTC/z/neaimNnUwM””,“vary”:“Accept-Encoding”},“statusCode”:500,“responseTime”:“90ms”},“err”:{“id”:“0f182df0-c2c9-11eb-b30c-3f02b66b0516”,“domain”:“”,“code”:null,“name”:“InternalServerError”,“statusCode”:500,“level”:“normal”,“message”:“allNotifications.forEach is not a function”,“stack”:"InternalServerError: allNotifications.forEach is not a function\n

> at new GhostError (/var/www/ghost/versions/4.5.0/node_modules/@tryghost/errors/lib/errors.js:10:26)\n    
>     at _private.prepareError (/var/www/ghost/versions/4.5.0/core/server/web/shared/middlewares/error-handler.js:53:19)\n    
>     at Layer.handle_error (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/layer.js:71:5)\n    
>     at trim_prefix (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:315:13)\n    
>     at /var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:284:7\n    
>     at Function.process_params (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:335:12)\n    
>     at next (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:275:10)\n    
>     at Layer.handle_error (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/layer.js:67:12)\n    
>     at trim_prefix (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:315:13)\n    
>     at /var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:284:7\n    
>     at Function.process_params (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:335:12)\n    
>     at next (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:275:10)\n    
>     at /var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:635:15\n    
>     at next (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/index.js:260:14)\n    
>     at next (/var/www/ghost/versions/4.5.0/node_modules/express/lib/router/route.js:127:14)\n    
>     at /var/www/ghost/versions/4.5.0/core/server/api/shared/http.js:124:17\n\nTypeError: allNotifications.forEach is not a function\n    
>     at Notifications.fetchAllNotifications (/var/www/ghost/versions/4.5.0/core/server/services/notifications/notifications.js:26:26)\n    
>     at Notifications.browse (/var/www/ghost/versions/4.5.0/core/server/services/notifications/notifications.js:42:37)\n    
>     at Object.query (/var/www/ghost/versions/4.5.0/core/server/api/canary/notifications.js:11:34)\n    
>     at Object.query (/var/www/ghost/versions/4.5.0/core/server/api/shared/pipeline.js:156:24)\n    
>     at /var/www/ghost/versions/4.5.0/core/server/api/shared/pipeline.js:243:35\n    
>     at tryCatcher (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/util.js:16:23)\n    
>     at Promise._settlePromiseFromHandler (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/promise.js:547:31)\n    
>     at Promise._settlePromise (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/promise.js:604:18)\n    
>     at Promise._settlePromise0 (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/promise.js:649:10)\n    
>     at Promise._settlePromises (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/promise.js:729:18)\n    
>     at _drainQueueStep (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/async.js:93:12)\n    
>     at _drainQueue (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/async.js:86:9)\n    
>     at Async._drainQueues (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/async.js:102:5)\n    
>     at Immediate.Async.drainQueues [as _onImmediate] (/var/www/ghost/versions/4.5.0/node_modules/bluebird/js/release/async.js:15:14)\n    
>     at processImmediate (internal/timers.js:462:21)"},"msg":"allNotifications.forEach is not a function","time":"2021-06-01T11:03:56.251Z","v":0}`

Can anyone assist?

I had a similar error. Check with Mailgun Support to confirm they don’t have a limit on your account. They have a limit for new accounts, but the error in Ghost is not always easy to decode the core problem.

Hi. The only way I was able to fix this was to submit a support ticket to Mailgun to “unblock” the bulk mailing for my account.

1 Like

Can you please send a screenshot of how did you raise the support ticket for the same? I’m at the support ticket page but unable to find an option for submitting a request regarding unblocking the bulk mailing.

Thanks @rpetty & @juliodelfos, raised the ticket with Mailgun, they said the account has a cap & asked a few questions to uncap it. Have reverted.

Hoping to get it resolved asap! Will update.

Of course. I used this category.

And this was my message:

I got my account unlocked today after a few back and forth with the support team at Mailgun.

After the first email, they mentioned that they are going to keep the evaluation period ON for the account & that I have to do the steps required under evaluation period. I replied saying that I have done everything so why can’t it be just unlocked. Got a reply stating to send some emails continuously over 4 days to review the stats & then decide whether to unlock or not. Appealed again to this stating that the people signing up are doing double opt-in with mg only & that they have all the stats of people who are on the list.

Finally then today got a revert stating that account has been unlocked.

Thank you guys :slight_smile:

1 Like