# Form plugins

Send the people who fill in Contact Form 7, Elementor Pro, WPForms, Gravity Forms and Fluent Forms forms to SendBeam, onto the list and with the tag you choose.

If your site already runs its forms on another plugin, you do not need to rebuild them in SendBeam. Connect a
form, and each person who submits it and consents becomes a SendBeam contact — on the list you choose, with
a tag if you want one.

## Which form plugins

Contact Form 7, Elementor Pro, WPForms, Gravity Forms and Fluent Forms. The **Audience** tab of
Settings → SendBeam lists which of them are active on your site and where each one is set up. The
connection for a form plugin only loads when that plugin is active.

## Setting up each one

Every form is off until you switch it on, and each is set up where its own plugin keeps form settings.

- **Contact Form 7** — open a form and use its **SendBeam** tab. Tick
  *Send submissions from this form to SendBeam*, then name the email, name and consent fields as they
  appear on the Form tab, without the square brackets. A single `your-name` field is split into
  first and last name.
- **Elementor Pro** — in the Form widget, add **SendBeam** under
  *Actions After Submit*. A SendBeam section appears: enter the field IDs from each field's
  Advanced tab, pick the list and, if you like, a tag. Exported templates leave your list and tag out.
- **WPForms** — in the form builder, open **Settings → SendBeam**, switch it
  on and pick the email, name and consent fields from the dropdowns.
- **Gravity Forms** — open a form's **Settings → SendBeam** and add a feed.
  Map the email, first name, last name and consent fields, and add conditional logic if only some entries
  should be sent.
- **Fluent Forms** — Fluent Forms has no place for another plugin's settings, so choose the
  forms on the **Audience** tab of Settings → SendBeam. Field names are the ones in each field's
  settings; a name field is `names.first_name` and `names.last_name`.

## Consent

A connected form sends someone to SendBeam in exactly two cases:

- **They ticked the consent field you named** — an acceptance box, a GDPR agreement or a
  checkbox on the form. This is the default.
- **You marked the form as a signup form** — a form people fill in precisely to subscribe,
  where submitting it is the consent.

A contact form, a quote request or an order form is not a signup form: give it a consent field, and people
who leave it unticked are never sent. The plugin never adds or pre-ticks a box on your forms.

## What happens after a submission

The form finishes exactly as it would without SendBeam: its own email is sent and its entry is saved. The
subscription is queued and runs straight afterwards, so a slow connection to SendBeam never slows the form
down.

- An address already in SendBeam is found and used rather than failing.
- The contact's **source** names the form plugin — `contact-form-7`,
  `elementor-form`, `wpforms`, `gravity-forms` or `fluent-forms` —
  so [segments](https://sendbeam.io/docs/segments/creating) can filter on it.
- A tag you set is created in SendBeam the first time it is used.
- A list set to double opt-in still sends its own confirmation email first.
- Every attempt, and the reason for any failure, is listed under **Recent subscriptions** on the
  Audience tab.

## Permissions

The site's API key needs **Contacts (read and write)**, **Lists (write)** to add
people to a list, and **Tags (read and write)** when a form adds a tag. The list dropdowns need
**Lists (read)**.

---
Source: https://sendbeam.io/docs/wordpress/form-plugins
