Status update: Bubble app emailing via free/shared Sendgrid down

STATUS

Bubble’s Sendgrid solution is currently blocked. The team is working on bringing it back. This will impact all users using Bubble’s basic out-of-the-box email functionality to send emails from apps.

CONTEXT

Bubble provides a very limited and basic email solution via Sendgrid so users can test things out. This service is shared by everyone that are not using their own Sendgrid API key.

PROBLEM

Bubble’s Sendgrid account got flagged by the provider because some apps abused the solution (resulting in above-average bounce rates)

WHAT NOW

The team will connect with Sendgrid and get them to unblock the shared API key

I’ll post updates as we learn more

10 Likes

Y’all should check out Postmark :wink:

7 Likes

Yeah, ideally everyone would have either their own Sendgrid account, or sign up for another provider.

Either way, we’ll fix this so users just trying to test things out quickly can still use the built-in solution

2 Likes

Exactly… easier to setup for me

1 Like

We have entered our Sendgrid API key in the account settings and our emails appear to be down as well. Are we supposed to not use the default “send email” action and instead create an API in the API connector with the sendgrid key in order to send emails?

1 Like

@williamtisdale have you followed the steps described here?

it says at the top:

This article explores using Bubble’s built-in email features, which utilize Sendgrid. If you want to set up a more customized solution or prefer a different email API provider, consider configuring an API using the API Connector plugin or browsing the plugin store for plugins related to your desired provider.

Article: The API Connector plugin

Article series: Plugins

If that’s ideal, then Bubble should have a phase out for such emails (e.g., after a month of going live or 200 emails) which would likely help the domain stay whitelisted.

“Bubble provides a very limited… solution… so users can test things out” and “it is ideal to use your own account” imply that users are to blame for depending on Bubble to supply the magic link service, since it is only meant for testing. But that is not the case at all; when users create their Bubble apps, they are not actually told anything along those lines.

So, if those statements accurately reflect Bubble’s mindset (which I believe they do), it is up to Bubble to communicate the message to its customers (and possibly phase them out).

10 Likes

Yes we set it up a year or so ago when there was email troubles previously and have had no issues since until now.

that’s pretty odd! I recommend you connect with the success team so they can take a look at the issue

Was there an answer to this? If we put our API keys we can simply use send email action as is or we have to create API in API connector and use that?

I remember I had put Sendgrid API once but then I had run into some other issue because of that and then hence reverted to using native feature only. It has been fine for us as we do not send emails to our customers, but send only some alert emails to ourselves (so it is okay even if email seems to come from bubbleapps.io instead of our domain).

But since these are alert emails, we are dependent on the email functionality for our operations.

I just created an updated my Sendgrid Key, but i was having trouble because it seems that the integration just recognizes the admin@yourdomain.com email, so check it out!, for me now its working (with my recent created sendgrid account api key)

Totally agree with this. I work since at least 5 years on Bubble and never read somewhere that the integrated mail function without a Sendgrid API Key was just to test…

3 Likes

It is not meant to just be used for testing. The built in workflow action for send email is supposed to be used in production. The only thing about the built in function that may be ‘intended’ to be used for testing is the fact that we can use it without entering our own sendgrid API keys. This is exactly like using Google Geocoding services without putting in your own Google API keys into the settings tabs.

In both situations, the provider, either Sendgrid or Google, allow for free rate limited usage of their services, and all Bubble has done is setup pre-configured API calls to allow an easier method for non-technical users to utilize those services. So, if you don’t input your own Google API keys, you can still use the geocoding services for free at a rate limit of 6 calls per minute. If you do not input your own Sendgrid API keys you can use the service for free at a rate limit of 100 emails a day (this is new as it used to be 20 a day until Sendgrid was acquired) Pricing and Plans | SendGrid

To say that some

might be a bit inaccurate, because it is not possible to abuse the system with free pricing which is rate limited by Sendgrid, since there is no way for any Bubble apps to abuse that in the sense that they used it more than they are allowed, but perhaps it is abused in that they are attempting to run the action more than allowed by Sendgrid, which when Bubble just automatically runs the API calls to sendgrid without taking into consideration the rate limits and the specific apps previous usage, then that could be cause for problems.

The problem is more likely attributed to higher than average bounce rates because some apps might be send promotional emails instead of just transactional emails, may be sending SPAM and the email clients are flagging them as such. But it surely couldn’t be because some apps are using the built in send email workflow action without inputting their own API keys more than the Sendgrid free plan allows for, since that rate limiting is enforced by Sendgrid and not Bubble, so it wouldn’t be possible for a Bubble app to abuse that rate limit.

One of my clients apps for the past two weeks, maybe longer, has been experiencing an issue that emails are delivered some 12 hours after the send email action runs. This can easily be tested by looking at logs, seeing the timestamp of the send email action, and then seeing the timestamp for the arrived email (if they arrive). This issue is associated with Sendgrid itself and not Bubble, because, so long as the logs show the send email workflow action has having run, Bubble has done their job by triggering the pre-configured API call. The problem with deliverability then lies with Sendgrid. This can happen if you are own a free Sendgrid account and still input your API keys into Bubble app. It is also possible on paid Sendgrid accounts that are not on the sendgrid PRO account that has a dedicated IP included in the plan, because if you are not on a dedicated IP, you are grouped together by Sendgrid with other accounts, not in your control, which some of those other accounts could be SPAMMY or have a negative rating and so all emails sent from those shared accounts can become flagged by email clients and make it so deliverability issues arise.

Sendgrid is the cheapest solution out there for a dedicated IP address.

Bubble should put together a system to track usage within an app to not run API calls to sendgrid if the app has already reached their rate limit for the day. These should be displayed in logs as a failed run action with a note that it is due to the rate limiting set by Sendgrid, rather than just sending API calls to sendgrid regardless of the specific apps usage for the day and having logs just show as a successful action being run. This will help users unaware of these issues as the logs could provide some insight into why email didn’t send so the user could take the necessary actions within their sendgrid accounts.

5 Likes

thanks @boston85719, clarifying a couple of things:

  • I didn’t mean to say the built-in actions themselves are for testing only. They are definitely used in production but typically with your own API key.
  • About the cause of the shutdown, I think we are saying the same thing? I could’ve been clearer: yes, some apps were probably sending spam to the point that it started causing high bounce rates, and sendgrid flagged us and shut us down for it.

Thank you so much for getting on top of this, Fede.

What is your expectation on when this will come back online? If there’s no expectation, is there a Sendgrid API key Bubble can provide can use in the meantime?

Context: I’m soft launching my service today and have been using the out-of-the-box mailer. Saw this post and tried to sign up to sendgrid but they blocked my account creation for undisclosed reasons :roll_eyes: so I’m at the mercy of the solution or trying to integrate a new emailer in the last minute.

Nice to meet you @anthony.hagouel :smiley:
It’s impossible to know how long Sendgrid will take to resolve this issue.
If you can’t get your own sendgrid account, I would recommend you check other services like postmark

1 Like

@fede.bubble no answer to this?

hi there @mghatiya :wave:
The way to set up your own Sendgrid API key is explained in these steps:

Step 3: Set up and validate the key in Bubble

Navigate to Settings - Domain / Email and scroll down to the header that says Email settings. Note that if you have not yet connected your Bubble app to a domain, the setting will not be displayed.

Enter it in the input box in the SendGrid API Key field, and click on Verify Sendgrid Key. If your key is valid, a validation email will be sent to the account you used to sign up for Bubble.