# Send public link submissions to another app

Start a Zap when someone submits, edits or abandons a form through its share link, and send the answers to email, Sheets, Slack or a CRM.

## Before you start

You need a [Formstep connection in Zapier](https://formstep.io/docs/guides/zapier/connect/) and a published form with a share link. A submission to a request link does not start these Zaps; see [Act on a request’s outcome](https://formstep.io/docs/guides/zapier/request-outcome/) for that.

## 1. Pick the trigger

Create a Zap, choose **Formstep** as the trigger app, and pick one of the three public link events:

| Trigger | Fires when | Needs |
| - | - | - |
| Public Link Submission Created | A respondent submits the form through a share link. | Nothing extra. |
| Public Link Submission Updated | A respondent edits a submission they already sent. | [Edit after submit](https://formstep.io/docs/submissions-analytics/edit-after-submit/) turned on for the form. |
| Public Link Submission Abandoned | A respondent starts the form and leaves it unfinished for the time you choose, from 12 hours to 1 week. | A Pro or Business plan, which saves [partial submissions](https://formstep.io/docs/submissions-analytics/partial-submissions/#unfinished-drafts). |

![The Formstep trigger event list: Public Link Submission Abandoned, Created and Updated, each marked Instant](https://formstep.io/docs/guides/zapier/zapier-trigger-events.png)

## 2. Choose the form

Pick your account, click **Continue**, and choose the form under **Form**. For the Abandoned trigger, also set **Consider submission abandoned after**. Formstep checks once an hour, so the Zap can start up to an hour after that time.

![The Configure step with the Form dropdown open, listing the Approval form](https://formstep.io/docs/guides/zapier/zapier-choose-form.png)

## 3. Test the trigger

Click **Continue**, then **Test trigger**. Zapier loads a record such as **Public Link Submission A**. Open it to see the fields you can map:

![The test record for Public Link Submission Created, with data › answers listing Your Decision (decision), Signature, What should change? and Your Name, and data › display listing the same questions](https://formstep.io/docs/guides/zapier/zapier-submission-sample.png)

The test record is a sample built from the form's questions (John Doe), not your latest submission.

> **The test record is a sample**
>
> It carries every question of the form with made-up answers, so you can map fields before anyone has submitted. Real runs carry the respondent’s answers. The sample has **Test Event** set to `true`; real submissions have `false`.

Every answer appears twice:

- **answers** holds the value a workflow compares: the [option key](https://formstep.io/docs/requests/field-keys/) of a choice, like `approve`, a number, a date.

- **display** holds the text a person reads: the option’s label (`Approve`), a formatted date.

Where a field key reads differently from its question title, the label names the key in parentheses: **Your Decision (decision)** is the question whose [field key](https://formstep.io/docs/requests/field-keys/) is `decision`. The readable text of the same answer is **Your Decision (decision, display)**. A mapped field shows the same label.

Use **display** in messages and **answers** in filters and lookups. The full shape of both is in the [webhooks reference](https://formstep.io/docs/developers/webhooks-reference/).

## 4. Add the action and map the fields

Click **Continue with selected record** and add the action. The example uses **Email by Zapier** › **Send Outbound Email**. In each field, type `/` or click **+** and search for the question by its title:

![The Insert data panel searching for Your Name, showing it under Data › Answers and under Data › Display](https://formstep.io/docs/guides/zapier/zapier-data-picker.png)

![The Send Outbound Email step: To team@acme.example, Subject 'New approval from' followed by Your Name (display), Body 'Decision:' followed by Your Decision (decision, display)](https://formstep.io/docs/guides/zapier/zapier-map-fields.png)

Subject and body read from display, so the email shows labels, not option keys.

## 5. Publish and check a real run

Click **Publish**. Open the form’s share link, submit it, and open **Zap history** in Zapier. The run appears within seconds:

![Zap history showing a Successful run of the Approval submission to email Zap](https://formstep.io/docs/guides/zapier/zapier-zap-history.png)

Open the run to see the real answers the Zap received.

## If the Zap does not start

- A submission through a request link fires Request Completed, not Public Link Submission Created.
- A Zap that is off never runs. Check the switch next to the Zap’s name.
- The trigger listens to the form in the workspace its connection points at. Check that the Zap uses the right connection.

## Next steps

[Send a request from a Zap](https://formstep.io/docs/guides/zapier/send-a-request/) — Create a request from any trigger, prefilled and locked

[Integrations overview](https://formstep.io/docs/integrations/overview/) — Slack, Sheets and Notion without Zapier
