Core Docs - Engagement - Email Integrations

Rock Version: v20.0
Last Modified: 2026-05-01 1:39 PM

There are many services available for transporting email, here are a few staples.

Mailgun

We've already touched on just how great we think Mailgun is, but let's dig deeper into the benefits of their service.

We are not in a business partnership with Mailgun, nor do we receive any form of compensation from them. We are just passing along helpful tips about some quality products and services we’ve discovered along the way. While Rock ships with the Mailgun transport, other integrations and plug-ins may be available in the Rock Shop.

Mailgun is an email delivery service that provides several advanced features. Mailgun is operated by the popular web hosting company Rackspace and is used by numerous online businesses like Stripe, GitHub, Lyft, Slack and many many more. We think you'll find that using a service like Mailgun is more than worth the small cost. The main benefits of Mailgun are:

Costs

As of this writing, Mailgun has a free starter package that generously gives you 5,000 emails a month for your first three months. After that you can pay by the number of emails you send or purchase a different plan. For full details and up-to-date pricing visit their website. In our experience, Mailgun's pricing has been very competitive, and their features are among the best in their class.

While the starter package will save you money, keep in mind that you will be given a shared IP address with other organizations. In addition to sharing that IP address, you'll share their reputation, and in some cases, their blacklist. If you find that your emails are not always getting through, or if you want to be on the safe side, you might consider purchasing a plan with a dedicated IP address. And if you've already found yourself on a blacklist, Mailgun has provided documentation about blacklists and how to follow up with their support.

Setting Up Mailgun

Mailgun has spent time making their service easy to configure. Follow the steps below to enable and configure a new Mailgun account for Rock.

Mailgun Updates
In late 2023, Mailgun changed its key structure, providing both Mailgun API keys and an additional HTTP webhook signing key. In Rock versions 14.4, 15.4, 16.1, and later, separate fields in the Communication Transport settings accommodate these keys. For new Mailgun accounts, you'll use either the standard account-wide Mailgun API keys or domain-specific Sending API keys as the API Key in Rock. Additionally, the HTTP Webhook Signing Key should be added to the corresponding field just below the API Key. Existing accounts only need action if you've changed your Mailgun API keys.

Here's what your webhooks screen should look like once you've got it configured in Mailgun.

Long-time users of Rock and Mailgun may recall the "Legacy Webhooks" section. As of April 2023, Mailgun no longer supports the Legacy Webhooks configuration. If you only have Legacy Webhooks set up, you'll need to move the addresses to the "Webhooks" section as shown. It's likely that Mailgun has automatically done this for you, but you may want to check to be sure.


6. Let's head back to your Rock server. First, let's enable the Mailgun Transport under Admin Tools > Settings > Communication Transports > Mailgun HTTP.Start by changing the Active setting to "Yes". Next, provide the Mailgun API key and the HTTP Webhook Signing Key from above. Finally, add the domain that you want your email to come from (this must match the domain that was configured in Mailgun).
7. Last step and we're done. Now that the email transport is configured, we need to tell Rock to use it for the email medium under Admin Tools > Settings > Communication Mediums > Email.Select "Mailgun HTTP" under Transport Container.

On Behalf Of

Following the instructions on Mailgun’s site may lead to a scenario where your emails are sent “on behalf of” your domain. In short, this happens when the domain of the Sender field and the domain used in the From field are different. For instance, the Sender field would be something like mg.rocksolidchurchdemo.com while the From field would be rocksolidchurchdemo.com.

In order to resolve this, the domains should match. The domain that you're sending emails from needs to be added to your Mailgun account and verified. In the above example, the domain rocksolidchurchdemo.com would need to be configured in Mailgun, and your DNS records (all except MX) would need to be updated accordingly. When you're finished, your domain overview in Mailgun will look similar to the example pictured below.

Lastly, make sure the new domain is added to your Mailgun Communication Transport configuration under Admin Tools > Settings > Communication Transports > Mailgun HTTP per the instructions in the prior section above. With the new domain set up and ready to go, your emails will no longer have the "on behalf of" notation. If you had an old domain that you were using (like mg.yourserver.com) it's no longer needed in Mailgun.

Google Apps

Note
Gmail is not a commercial Email Delivery Service and has significant limitations on how many messages can be sent per day, how many identical messages can be sent to different addresses, etc. Using Gmail as your email delivery service is not a viable solution for most organizations and should only be used for testing. You will want to implement one of the other email transports discussed in this section for production use.

This technically isn't an integration as much as tips for configuring SMTP Relaying for Google Apps. The basic steps are covered in this link from Google https://support.google.com/a/answer/2956491?hl=en. A couple of tips are below.

SendGrid

SendGrid is another supported Transport you can use in Rock. Like the other options described above, be sure to evaluate each service before deciding which is the best fit for your organization’s needs.

Most of the configuration you’ll need to do will be with SendGrid. You can learn more and get started for free by visiting https://sendgrid.com/. After you’re set up with SendGrid, you’ll need to provide the following in Rock:

Like other Communication Transports, you can also choose whether SendGrid should track email opens, clicks and unsubscribes. Note that Rock only supports HTTP/S (and not SMTP) for SendGrid.

Setting up SendGrid

The first step will be getting your API Key. Log in to your SendGrid account and navigate to Settings > API Keys. Click the button for Create API Key.

We recommend giving Restricted Access permission. Also, make sure Mail Send is assigned full access as pictured below.

Be sure to copy the API key when it is presented to you. SendGrid warns that you won’t see it again, and that's true. If you lose the key, you’ll have to create a new one.

Once you’ve got your API key, you’ll need to add it to Rock. Inside Rock, navigate to Admin Tools > Settings > Communication Transport > SendGrid HTTP and add the Base URL and your API Key as pictured below.

Next, you’ll need to update the Communication Medium configuration in Rock. Navigate to Admin Tools > Settings > Communication Mediums and access the Email entry. Change the Transport Container to the SendGrid HTTP transport configured in the prior step.

With the above configuration in place, head back over to SendGrid to set up the Event Webhook. You can access this in SendGrid under Settings > Mail Settings > Event Settings. Click the pencil icon for the Event Webhook row to access its settings.

The Event Webhook settings in SendGrid will look like those pictured below. The HTTP Post URL will be formatted as shown, with your Rock URL followed by Webhooks/TwilioSendGrid.ashx. Twilio owns SendGrid, so don’t be concerned about the Twilio part of the webhook.

Note that Processed and Deferred currently have no functionality in Rock and can be left disabled. Be sure that the Event Webhook Status is set to Enabled before saving.

To track opens and clicks, you’ll want to enable those Tracking options in SendGrid. Under Settings click on Tracking to enable these options by clicking the pencil icon. The example below shows what the page will look like after open and click tracking have been enabled.

Lastly, add your information to the Sender Authentication settings. This helps with deliverability. An example of the setup is pictured below, but if you’re not sure what you need there’s a helpful link at the top of page.

Don’t be discouraged if your emails aren’t popping into inboxes right away. There are a variety of factors that can cause delays ranging from a few minutes to several hours. You can click on the Activity menu item in SendGrid to search for emails you’ve sent and view details on what may be holding them up. Be patient, because sometimes there’s a delay between sending an email and seeing it in the Activity list.