Docs & Support

Learn about all the Formidable features and get support from our amazing customer success team.

Add-onsAutomation
Form Action Automation

Form Action Automation

Use the Form Action Automation add-on to schedule your form notifications, API actions, and Twilio SMS messages. Each entry can have its very own set of scheduled form actions.

Download and install

To access this add-on, ensure you have the Elite license.
  1. If you haven't already, install and activate the current version of Formidable Forms Premium on your WordPress site.
  2. After confirming your Formidable Forms license, proceed to the Formidable → Add-Ons page and toggle on the Form Action Automation plugin.
    Form Action Automation Install

Formidable Forms makes advanced site building simple. Launch forms, directories, dashboards, and custom WordPress apps faster than ever before.

Set up a form action

  1. Create a new form or edit an existing form.
  2. Go into your form's Settings → Actions & Notifications. Set up an email notification or a Twilio text.
  3. Click the Setup Automation link. This will reveal all of the settings that you'll need to configure.
    Setup Form Action Automation
  4. The first setting you'll see is a dropdown allowing you to ignore or respect the 'Trigger this action after' setting in the form action.
    Form Action Automation Ignore/Respect

    By default, the Form Action Automation will ignore this setting. This means that when an entry is created (and/or updated, deleted or saved as a draft depending on your settings) the form action will not be triggered. The form action will ONLY be triggered when the form action tells it to send. If you 'Respect' the setting, then the notification will send whenever the 'Trigger this action after' event occurs AND when the form action tells it to send.

    Tip: If you are importing entries, select the trigger Entry is imported and set the Form Action Automation settings to Respect the Trigger this action after setting above.

  5. Choose when your form actions trigger. Set the number of years, months, days, hours, or minutes after the entry creation date, update date, or a date entered in your form. This determines when the initial form action will be triggered. If you use a date field from your form as the reference date, you can actually set the form action automation to send some amount of time before the entered date. When the form includes date and time fields, they will appear as options in this dropdown in the format of "Date field + Time field". To trigger based on a time selected in your form, select a date and time field combined in one choice.
  6. You can also choose to repeat the mailer by checking the "…and then every" checkbox. This will allow you to specify the number of years, months, days, hours or minutes to wait to trigger the form action again.
    Form Action Automation Then Every...

    You can also use a Number field from your form to specify the number of years, months, days, hours, or minutes to wait to trigger the form action again.
    Form Action Automation Then Every...with Number
  7. Lastly, you can set a maximum number of times that the form action will be triggered.

Reading the current queue

Once you have a form action set up, every entry that is submitted will be added into the current queue. There is a current queue for each form action that has the automation set up. You can view the current queue by going to the form action in question.

Delete Scheduled Automation

To remove an entry from the queue before the email notification or text is sent, click the trash can to the right of the entry.

Delete Scheduled Automation from Queue

Examples

Create a weekly text reminder

One thing that most people have to do every week is take the trash out. You can follow these instructions to learn how to send users a weekly reminder text to take out the trash.

  1. First, create a form. We'll name it Weekly Trash Reminder.
  2. Add a Date Field for users to select their trash day.
  3. Add a Phone Number field and then update your form. It looks something like the image below.
    Form Action Automation Weekly Form
  4. Go into the form's Settings → Actions & Notifications and click on the Twilio icon. Please note that you must have the Twilio add-on installed.
  5. Insert your Phone Number field ID in the To box.
  6. Insert your Twilio phone number into the From box. If it is an international number, you must include the country code.
  7. Customize the message you want to send in the text.
  8. Click the Setup Automation link.
  9. Set up the form action automation to send '5 hours before your Date field' and then 'every 7 days after that'. This way, they will get the text at 7pm the night before trash pickup.
    Weekly Form Action Automation
  10. Lastly, update your form settings. Now you have a form that will send users a reminder text at 7PM (for your site's timezone) the evening before trash day.

Create a yearly email

There are many instances where sending an email reminder might be helpful from wishing someone happy birthday to reminding someone it's time to get a health screening. For this example, we will send out a Happy Birthday email. Follow these simple instructions to learn how to set up your own yearly email notification.

  1. First, create a form with a date field (for the user's birthday) and an Email field (so we know where the email is going).
    Yearly Form Action Automation
  2. Next, go into your form's Settings → Actions & Notifications and customize your Email Notification. If you need help customizing your email notification, you can review the email instructions.
    Yearly Form Action Automation Email
  3. Click the Setup Automation link.
  4. Set the notification to send '8 hours after your Date field' and then 'every 1 year after that'. This way, they will get the email notification at 8am on their birthday each year (if they are in your site's timezone).
    Yearly Form Action Automation
  5. Lastly, update your form settings. Now you have a form that will automatically send users a birthday email!

Send reminder until status is updated

This example will send a reminder email, using the Form Action Automation, until a status field is updated. This is particularly helpful if you have a form that gets submitted and another user needs to approve the entry. Follow the instructions below to set up a reminder based on conditional logic. Please note that Conditional Logic is only available in the premium version of Formidable Forms.

  1. Create a form or edit an existing form.
  2. If needed, add a dropdown or radio field and set the field label to Status. Then, you can set the choices to Approved, Pending, or any other choices you want to use. Save your form.
    Form Action Automation Status Example Field
  3. Go into the form's Settings → Actions & Notifications and create an email notification. If you need help customizing your email notification, you can review the email instructions. For the email, set it to Trigger this action when Entry is created and Entry is updated.
    Form Action Automation Status Trigger
  4. Add conditional logic to your Email Notification so that the email sends if the Status field is Pending. This will make it so that the form action only sends if the status field is still set to Pending.
    Form Action Automation Status Conditional Logic
  5. Click the Setup Automation link and configure your automation settings. For this example, set the Form Action Automation to Ignore the email notification above and trigger the form action 7 days after the Create Date of the entry, and every 7 days after that.
    Form Action Automation Status Example

Send a reminder until the follow-up questions are answered

Send a reminder email to people who submitted a form but haven't answered its follow-up questions yet.

In this example, people sign up with a Workshop Registration form. After 3 days, anyone who hasn't answered "What do you hope to learn?" gets a reminder with a link to a questionnaire page. The reminders stop once they answer.

If your follow-up questions are in a separate form, add them to the registration form instead. A reminder can only check the entry it was scheduled for, so the answers need to be saved in that entry.

This example works for logged-in users only. Each person can open and update only their own entry, so a changed link can't update anyone else's registration.

Each reminder checks the registration entry before it's sent. The question is left out of the registration page and shown on its own questionnaire page instead. When the person answers it there, their entry is updated and no more reminders go out.

First, set up the form and its 2 pages.

  1. In the form builder, add the registration fields, including an Email field. Then add the follow-up question, such as a Paragraph field labeled "What do you hope to learn?" Leave it optional. Note the question's field ID, shown at the top of its field settings.
    Form Action Automation - Follow-up question field settings with its field ID
  2. Go to the form's Settings and click Form Permissions. Check Limit form visibility to and select Logged-in Users.
  3. Check Limit number of entries per and select Logged-in User. With 1 entry per person, the questionnaire page opens that person's own entry.
  4. Check Allow front-end editing of entries. Leave Role required to edit one's own entries set to Logged-in Users.
    Form Action Automation - Form Permissions for logged-in users, one entry each, with front-end editing
  5. Click Update to save your changes.
  6. On the registration page, publish the form without the follow-up question. Replace 10 with your form ID and 50 with the question's field ID.
    [formidable id=10 exclude_fields="50"]
  7. On a second page, such as a page with the address workshop-questionnaire, publish only the follow-up question. Link to this page only from the reminder email, so people register first.
    [formidable id=10 fields="50"]

Next, set up the reminder email in the same form.

  1. Go to the form's Settings → Actions & Notifications and add a new Send Email action: hover over the Send Email tile and click + Add. The form's default email to the admin stays as it is. In the To box, insert the ID shortcode of your Email field, such as [25].
  2. Write a Subject and Message. In the message, ask people to log in and add a link to the questionnaire page:
    [siteurl]/workshop-questionnaire/
    Replace workshop-questionnaire with your own page's address. Each email fills in [siteurl] with your site's URL.
    Form Action Automation - Reminder email with the questionnaire link
  3. Toggle on Add Conditional Logic and set it to Send this notification if What do you hope to learn? equals an empty value. Leave the last box blank.
    Form Action Automation - Send the reminder while the follow-up question is empty
  4. Click the Setup Automation link. Set the automation to Ignore the Trigger this action after setting. Send the notification 3 days after the Create Date. Check …and then every and set it to 3 days. Then check …a maximum of and set it to 3 times. With Ignore, this reminder isn't sent when someone registers. Only the scheduled reminders go out.
    Form Action Automation - Remind every 3 days, a maximum of 3 times
  5. Click Update to save your changes.

To test it, log in as a test user and submit the registration page. Then open the questionnaire page. It shows the question for that user's own registration, with an Update button.

After the user answers and clicks Update, their reminder is removed from the current queue. Anyone who hasn't answered gets up to 3 reminders.

A visitor who isn't logged in sees the login message instead of the form. By default, it reads "You do not have permission to view this form."

Send all entries in a Weekly Email

Is managing emails for every entry too much to manage? You can set up a digest of all entries for the day, week, or month.

  1. First, let's create the content for your email. You'll need a view for this. You can format the view however you want, but some email providers are picky about what styling they will use. It might be best to use a table. Click here for more detail on setting up your view. Any CSS you add will need to be inline (i.e. style="color:#666666").
  2. Now you've got a view set up that shows all entries in your form. Next, let's filter it down. You'll want to filter by the Entry Creation Date. Something like:
    Entry Creation Date is greater than first day of last month
    or maybe Entry Creation Date is greater than Sunday this week
  3. Next we'll need to send it out. Create a new form for handling the automated actions.
  4. Add a date field to this form to select the day you want the digest email to start. Add any other fields to the form that you want to change. This may include a field for the email recipient, ID of the view, or a number field for the repetition span.
  5. Go to the form's Settings → Actions & Notifications and customize the email notification. Replace the default message with your view shortcode.
  6. Click the Setup Automation link.
  7. Set the notification to send '1 minute after your Date field' and then 'every 1 week after that'. This way, the email notification will send right after midnight each week, and include all the right submissions.
  8. Bonus: With a scheduled email like this, you'll want to be sure it comes at the right times in order to not miss entries. By default, WordPress fires off the wp-cron when your site is visited. We recommend adding a real cron to your site to trigger hourly or daily. You may need to find instructions from your host for more specific details.

Delete Entry after 30 Days with API

Sometimes, it may be helpful to use the Formidable API to edit your entries after some time has passed. Follow these instructions to learn how to automatically delete entries after 30 days have passed. Note: This example requires the Formidable API add-on.

Note: This guide is specifically intended for newly created entries and does not apply to any old or existing entries.
  1. Create a form or edit an existing form and go into the form's Settings → Actions & Notifications and create an API notification.
    Form Action Automation - API Delete Setup
  2. Set the Notification URL to the following:
    [siteurl]/wp-json/frm/v2/entries/[id]
    Form Action Automation - API Delete Setup Action
  3. Next, enter your API Key into the Basic Auth box. You can find your API Key in your Formidable → Global Settings → API.
  4. Set the method to DELETE.
  5. Now that the API Notification is set up, set up the Form Action Automation. Click the Setup Automation link and configure your automation settings. For this example, set the Automation to Ignore the action above and trigger the form action 30 days after the Create Date of the entry.
    Form Action Automation - API Automation
  6. Lastly, update your form settings.

Change Entry with API

You may find that changing an entry after a certain date passes is helpful in certain situations. In our example below, we have a form that allows users to create an event and set the date of the event. All new events have the Status field set to Active. The API & Form Action Automation will be used to change the Status to Closed after the set date has passed. Note: This example requires the Formidable API add-on.

  1. Create a form or edit an existing form and go into the form's Settings → Actions & Notifications and create an API notification.
    Form Action Automation - API Change Setup
  2. Set the Notification URL to the following:
    [siteurl]/wp-json/frm/v2/entries/[id]
    Form Action Automation - API Change Action
  3. Next, enter your API Key into the Basic Auth box. You can find your API Key in your Formidable → Global Settings → API.
  4. Set up the key and value to change. For the key, use the Field Key of the field you want to update. For the Value, you can put in any value you want.
  5. Set the method to PATCH.
  6. Now that the API Notification is set up, set up the Form Action Automation. Click the Setup Automation link and configure your automation settings. For this example, set the Form Action Automation to Ignore the action above and trigger the form action 1 day after the Event Date of the entry.
    API Automation
  7. Lastly, update your form settings.

Triggering WP Cron

By default, the WordPress cron is triggered only when your site is visited. The most efficient and reliable way of keeping your form actions on schedule is to switch the WP Cron to a real cron triggered on the server side. Depending on your web host, this will need to be done differently. SiteGround has some detailed instructions on setting up a cron.

Troubleshooting

Debugging tools

If you are having trouble with the Form Action Automation, turn on debugging. This will create a log file for every form action that the Form Action Automation triggers. NOTE: All log files will be located in the wp-content/uploads/formidable-autoresponder/logs/ folder.

To turn on debugging, simply check the option for 'Turn debug on' and update your form.

Automation Turn on Debug

Once there are log files to see, you can click on them to View the log files, or click on the trash can to the right of the log file to delete it.

Automation View Debug Log

Test WP Cron

If the form actions are going past their scheduled times with no sign of being triggered, chances are good they are not getting triggered. Install the WP Crontrol plugin to get a look at the scheduled events. If old events show here, there is a problem with your site. Contact your web host.

If you have tried our debugging tools and the WP Crontrol plugin shows events are being triggered, feel free to create a ticket in our help desk.

Additional customizations

Learn where to put the code when adding a custom PHP function to your site.

Change default time

To change the default action trigger time from midnight to 10 AM, use the example to change default time.

Adjust time for specific form action

To allow the autoresponder for a single Form Action to be based on a Time field in a form, use the example to adjust time for specific form action.

Unschedule an Autoresponder cron event

Use the following code to unschedule an Autoresponder cron event with entry id and action id.

function unqueue_autoresponder( $entry_id, $action_id ) {
     $args  = compact( 'entry_id', 'action_id' );
     $queue = new FrmAutoresponderQueue( $args );
     $queue->unschedule();
}

add_action(
     'init',
     function() {
        unqueue_autoresponder( 58051, 46488 );
     },
     1
);
Was this article helpful? *

This article may contain affiliate links. Once in a while, we earn commissions from those links. But we only recommend products we like, with or without commissions.

In this article

    We have a small, but amazing team of dedicated people who are committed to helping you achieve your goals and project requirements.


    Copyright © 2026 Strategy11, LLC. Formidable Forms® is a registered trademark Strategy11, LLC.

    Complete your purchase
    Don't forget your purchase!
    Complete Purchase
    Join 400,000+ using Formidable Forms to create form-focused solutions fast. Get Formidable Forms