🎉 Celebrate with 10% OFF on All Products! Use Code: GFEX10 Or Buy Any 2+ Items for 30% OFF with Code: GFEX30!

Gravity Forms Microsoft Outlook Integration Premium Add-on Setup Guide

Updated 10 min read Gravity Forms Integrations A–Z
On this page
  1. Video walkthrough
  2. What the Add-on Does
  3. Installation
  4. Part 1: Register Your Microsoft Entra ID App
  5. Part 2: Connect the Mailbox
  6. Part 3: Add an Outlook Feed
  7. Action 1: Send an e-mail
  8. Action 2: Create a calendar event
  9. Action 3: Create or update a contact
  10. Conditional logic and processing
  11. Throttling, Retries and Errors
  12. Notifications and Merge Tags
  13. Troubleshooting
  14. Microsoft says the redirect URI does not match.
  15. The sign-in shows “Need admin approval”.
  16. Microsoft refused the client ID or secret.
  17. The event has no Teams link.
  18. What happens without an active licence?
  19. What is removed when I uninstall?
  20. Connect Gravity Forms to Microsoft Outlook

Video walkthrough

Gravity Forms Microsoft Outlook Integration: App Setup and Feed Errors (WordPress Side)
Watch: connect Gravity Forms to Microsoft Outlook, shown on the WordPress side. Watch on YouTube

The Calendar event section of an Outlook feed in Gravity Forms: the calendar picker with a button to refresh the lists, the event title with merge tags, the start date and start time fields, a fixed length of one hour, the all-day option, the site time zone America/Chicago, the location, attendees and optional attendees, the Microsoft Teams meeting option, a reminder 30 minutes before, show as Busy, the description editor and categories
Form Settings → Outlook: an event built from the date and time fields, with attendees and a Teams meeting.

Requirements

  • WordPress 6.5 or newer, PHP 7.4 or newer, an HTTPS site with pretty permalinks (recommended for the redirect URI).
  • Gravity Forms 2.9 or newer (any licence). Tested with Gravity Forms 2.9 and 3.1.
  • A Microsoft 365 work or school account with an Exchange Online mailbox. Teams meetings need Microsoft Teams on that account.
  • Permission to register an app in your Microsoft Entra admin center, or an admin who does it for you. No partner programme, no publisher verification and no service in between.

What the Add-on Does

The add-on connects Gravity Forms with Microsoft Outlook through Microsoft Graph, the official Microsoft 365 API. You sign in once with a mailbox, and every Outlook feed on your forms can then do one of three things with each entry: send an e-mail from that mailbox, create a calendar event in one of its calendars, or create or update a contact in its address book. Because the e-mails really leave from Outlook, they land in the Sent Items folder, keep your company signature rules and pass the mail checks of your domain.

Every feed has conditional logic, runs in the background if you like, retries when Microsoft is busy and writes a clear note on the entry. The add-on uses an app that you register in your own Microsoft Entra ID, so data goes straight from your website to Microsoft and nowhere else.

Installation

  1. Download the add-on zip from your GravityExtra account and upload it in Plugins → Add New → Upload Plugin, then activate it.
  2. Go to Forms → Settings → Outlook, enter your key in the Gravity Extra License section and click Activate License.
  3. Register the Microsoft Entra ID app and connect your mailbox as described below. Feeds can be added once the connection is made.

Part 1: Register Your Microsoft Entra ID App

The settings page lists the steps and shows the exact redirect URI of your site with a Copy button. It looks like https://www.yoursite.com/wp-json/geol/v1/oauth.

  1. Sign in to the Microsoft Entra admin center (entra.microsoft.com) and open Applications → App registrations → New registration.
  2. Give the app a name such as “Website forms”. Under Supported account types choose Accounts in this organizational directory only (single tenant).
  3. Under Redirect URI choose the platform Web and paste the address from the settings page. Click Register.
  4. On the overview page copy the Application (client) ID and the Directory (tenant) ID.
  5. Open Certificates & secrets → New client secret, choose how long it is valid and copy the Value (not the Secret ID). Microsoft shows it only once.
  6. Open API permissions → Add a permission → Microsoft Graph → Delegated permissions and add Mail.Send, Calendars.ReadWrite, Contacts.ReadWrite, User.Read and offline_access. Add Mail.ReadWrite as well if you want attachments over 3 MB. If your organization requires it, click Grant admin consent.

Why your own app?

With your own app, the permissions are granted in your tenant only, you can see and revoke them at any time, and no third party ever holds a token for your mailbox. A single-tenant app used inside your organization needs no publisher verification and no review by Microsoft.

Part 2: Connect the Mailbox

  1. Back in Forms → Settings → Outlook, paste the tenant ID, the client ID and the secret value, and click Save Settings.
  2. Click Connect to Microsoft Outlook. Microsoft asks you to sign in. Use the mailbox that should send the e-mails and own the events and contacts, for example a team mailbox such as bookings@ your domain, and accept the permissions.
  3. You come back to the settings page with Connected as and the mailbox address. Click Send a test e-mail to me to check that sending works.

The sign-in uses the OAuth 2.0 authorization code flow with PKCE and a one-time state, so a link cannot be reused or forged. The add-on stores the access token and the refresh token encrypted with your site’s keys in an option that WordPress does not load on every page, and renews the access token by itself shortly before it ends. Tokens are never shown on screen and never written to notes or logs.

If the connection is revoked, the password changes or the refresh token expires, the add-on marks the connection as expired, stops sending and asks you to reconnect; feeds then add a note that says so. Changing the app settings also asks for a new connection. Switching on large attachments asks you to reconnect once, so Microsoft can grant the extra permission.

Part 3: Add an Outlook Feed

Open a form, go to Settings → Outlook → Add New, give the feed a name and choose the Action. The page shows only the settings of that action. Add several feeds to one form to do more than one thing, for example a confirmation e-mail, a calendar event and a contact for every booking.

Action 1: Send an e-mail

The E-mail from the connected mailbox section of an Outlook feed: To with the Email field merge tag, Cc, Bcc, Reply-To with a named address, the subject with the first name merge tag, the message editor, HTML or plain text format, importance, the Documents file upload field ticked as attachments and the option to keep a copy in Sent Items
The e-mail action: recipients and message with merge tags, attachments from file uploads and Sent Items.
  • To, Cc, Bcc and Reply-To: addresses separated by commas, with merge tags such as {Email:2}. Names work too: Client desk <desk@yourcompany.com>. Invalid addresses are skipped and listed in the entry note; when no valid To address is left, nothing is sent and the feed reports an error.
  • Subject and Message: merge tags are filled in from the entry. In HTML format, the values visitors typed are escaped, so nobody can inject links or markup into your e-mail; plain text sends the message without HTML.
  • Importance: normal, high or low.
  • Attachments: tick the File Upload fields whose files should be attached. Up to 3 MB in all go with the e-mail directly. With Large attachments switched on in the settings, bigger files (up to 150 MB per file) are uploaded to a draft in pieces and the draft is then sent. Without it, the files that fit are attached and the rest are named in the note.
  • Sent Items: keep a copy of each e-mail in the Sent Items folder of the mailbox.

Action 2: Create a calendar event

  • Calendar: the main calendar or any calendar of the mailbox that you can edit. Click Refresh the calendar and folder lists after adding a calendar in Outlook.
  • Title and Description with merge tags.
  • Start date and Start time: a Date field and a Time field of the form (text fields with dates such as 11/03/2026 or 2026-11-03 work too). Leave the time empty, or tick All day, for an all-day event.
  • End: a fixed length from 15 minutes to 8 hours, or end date and end time fields.
  • Time zone: the time zone the visitor picked the time in. The site time zone is the default; you can choose another zone or take it from a field that holds a name such as Europe/Berlin. Outlook shows the event in each attendee’s own time zone.
  • Location, Attendees and Optional attendees: Outlook sends the invitations itself, so attendees can accept or decline as usual. Leave attendees empty to add the event only to your own calendar.
  • Online meeting: adds a Microsoft Teams meeting with a join link (work or school accounts with Teams).
  • Reminder, Show as and Categories as in Outlook.

The link to the event and the Teams link are saved on the entry. Run again on the entry screen updates the same event instead of making a second one, which is handy after you edit the entry.

Action 3: Create or update a contact

Choose the form field for each contact detail: e-mail address (required), first and last name, company, job title, department, business, mobile and home phone, street, city, state, postal code, country, website and notes, plus categories with merge tags. The add-on looks for a contact with the same e-mail address (any upper or lower case) in the chosen contact folder and then:

Setting Contact found No contact found
Update it with the new values (default) Filled values replace the old ones; empty values never remove anything; new e-mail addresses and phones are added; categories are added A new contact is created
Leave it as it is Nothing changes; the note says the contact exists A new contact is created
Always create a new contact A new contact is created A new contact is created

Conditional logic and processing

Under Processing tick Conditional logic to run the feed only for some entries, for example only when Topic is Tax planning. Run in the background (on by default) hands the feed to the Gravity Forms queue, so visitors never wait for Microsoft.

Throttling, Retries and Errors

Microsoft Graph limits how many requests a mailbox may make in a short time. When it answers 429 (too many requests) or 503 with a short Retry-After of a few seconds, the add-on waits and tries again in the same run. With a longer Retry-After, or when Microsoft does not answer or has a server error, the add-on plans the next try with WP-Cron after 1, 5 and 30 minutes, then 2 and 6 hours (choose 0 to 5 retries per feed). A longer Retry-After from Microsoft is always respected. When the access token is refused once, the add-on renews it and repeats the request.

Errors that a retry cannot fix, such as an invalid recipient, a missing date or a revoked connection, are reported at once: the add-on adds a feed error note with Microsoft’s own error code and message (for example HTTP 400 ErrorInvalidRecipients), logs it in the Gravity Forms log and sends the Outlook: action failed notification if you set one up.

A Book a consultation entry in Gravity Forms with the Outlook box on the right listing three feeds as Done (the e-mail, the calendar event with links to open the event in Outlook and to the Teams meeting, and the contact) with Run again buttons, and the entry notes that the e-mail was sent from the connected mailbox to two recipients, the Outlook event was created at 14:30 Central Standard Time with invitations and a Teams meeting, and the Outlook contact was created
The entry screen: the Outlook box with the status per feed, the event and Teams links, Run again and a clear note for every run.

The Outlook box on the entry screen shows every feed of the form with its status (Done, Will retry or Failed), the action, the try and the time, the links to the event and the Teams meeting, and the last error. Run again repeats a feed after you fixed the cause.

Notifications and Merge Tags

Because Outlook feeds usually run in the background, the event link is not known yet when the normal form notifications go out. Use the notification event Outlook: calendar event created for e-mails that should contain it. The add-on adds these merge tags to the merge tag list:

Merge tag Value
{outlook_event_link} Link that opens the event in Outlook on the web
{outlook_teams_link} Join link of the Teams meeting
{outlook_event_id} Graph ID of the event
{outlook_contact_id} Graph ID of the contact
{outlook_feed} Name of the feed that failed (Outlook: action failed)
{outlook_error} Error text of the failure (Outlook: action failed)

The event link and the Teams link are also available as columns in the entry list and in the entry export.

Troubleshooting

Microsoft says the redirect URI does not match.

The redirect URI in the app registration must be exactly the one shown in the settings, including https and the trailing path. Copy it with the Copy button and paste it as a Web redirect URI, not as a single-page application.

The sign-in shows “Need admin approval”.

Your organization does not let users grant permissions themselves. Ask an admin to open the app in the Entra admin center and click Grant admin consent, then connect again.

Microsoft refused the client ID or secret.

Copy the secret Value, not the Secret ID, and check that the secret has not expired. When it expires, add a new secret, save it in the settings and reconnect.

Teams meetings need a work or school account with Microsoft Teams. Personal accounts and mailboxes without Teams get the event without a meeting; the entry note says so.

What happens without an active licence?

You cannot add new feeds. Existing feeds keep running, so your e-mails, events and contacts never stop.

What is removed when I uninstall?

Uninstalling from Forms → Settings → Uninstall removes the settings, the connection and its tokens, the feeds, the cached calendar lists and any planned retries. You can also revoke the app in the Entra admin center at any time.

Connect Gravity Forms to Microsoft Outlook

Send e-mails from your own mailbox, put bookings in your Outlook calendar with Teams meetings and keep your contacts up to date, straight from your forms.

Still need help?

Our support team answers tickets every day, usually within a few hours.

0
0
Your Cart
Your cart is emptyReturn to Shop
🔥 FREQUENTLY BOUGHT TOGETHER
Complete Combo & Save 40%!
ITEM IN YOUR CART
Gravity Forms Klaviyo Add-on
$39.00/yr
+
🎁 RECOMMENDED ADD-ON SAVE 40% OFF
Original Price: $39.00/yr
Bundle Special Price: $23.40/yr