> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.poool.fr/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# How to retrieve data collected via the "Form" widget?

If you are using the Poool Form widget, you need to implement a data retrieval logic. Nothing is stored in the Dashboard.

To achieve this, we offer three main options:

# Zapier Integration

We provide a connection with Zapier, allowing you to send data to your own system.

[![](https://storage.crisp.chat/users/helpdesk/website/-/9/1/1/a/911a0d9e0b11a800/d8508db1-4ad3-404c-9c21-78e3df_ew3vwk.png)](https://downloads.intercomcdn.com/i/o/1059526597/a9cf19765b7af3ec8c3d620c/image.png?expires=1773333000&signature=4cba67235d5fb337098fe3783fdc9df8dc979d744e04d5587ae46e059cef8948&req=dSAiH8x8m4RWXvMW1HO4zdKJOXsPqz1EYQoC%2B4DrnQ3cW3wJ321k58OG2hnG%0A3xVDtvBQSuBhEM9k%2FVU%3D%0A)

You can easily activate this connection via the "**Integrations**" tab in your Dashboard.

[![](https://storage.crisp.chat/users/helpdesk/website/-/b/1/c/7/b1c7329252a5c000/353258ec-e16b-43e8-a8a6-d0e0f7_pa28xn.png)](https://downloads.intercomcdn.com/i/o/1059526234/5eb90678c64724ae388cc848/screen_integrations.png?expires=1773333000&signature=a823256e90f736a6db92faf56c55506bd5779f6faa956612a8cf823eaacc77e6&req=dSAiH8x8m4NcXfMW1HO4zQHEsYq1glcm8QqzIBIf99htjTMHLUr8TwH77Ylm%0Ao8moAAFYK7te%2FuYJGOw%3D%0A)

---

If you choose this option, you can follow our guide 👉 [How can I connect Poool to Zapier?](https://help.poool.fr/en/articles/9805159-how-can-i-connect-poool-to-zapier)

# Webhooks

Another option is to set up webhooks to retrieve information into your own tool. In the "Integrations" section, go to the Webhooks area to enter the destination URL.

[![](https://storage.crisp.chat/users/helpdesk/website/-/c/3/b/b/c3bb714063d67000/25743289-15fd-49d2-b258-77e8fa_dyqrf6.png)](https://downloads.intercomcdn.com/i/o/1059527949/a6ed5d8c648189252119f564/image.png?expires=1773333000&signature=ab99e3cbb8416dd7a2adf941a8ec385439137db509b4ddff135816a890cb84bc&req=dSAiH8x8mohbUPMW1HO4zdqf62a3HyF4FdmvcQGix1O2%2FH5UP3j9n08lE9NO%0AGG53%2FFexooLuigombAk%3D%0A)

This activation requires coordination with your technical team to create the webhook. Find more details on this topic in our dedicated [technical documentation](https://www.poool.dev/guides/forms-validation#using-webhooks).

---

# JavaScript Event

For security reasons, the data collected in forms is not stored but sent in a JavaScript event. To retrieve the data, technical implementation is required.

You can use the available "[formSubmit](https://www.poool.dev/en/docs/engage/javascript/events#formsubmit)" event. Here are the details of this event:

## Legacy Version

```
poool('event', 'onFormSubmit', function(event) {  
  console.log('Form ' + event.name + ' submitted!');

// If necessary, you can review the form fields to perform your own validations.

// If an array containing the identifiers of the invalid fields is returned, the paywall will display the list of fields in error.

// If the array is empty or nothing is returned, the article will be unlocked.

var invalid = [];

if (event.fields.password !== event.fields.passwordRepeat) {  
    invalid.push('password');  
    invalid.push('passwordRepeat');  
  }

return invalid;  
});
```

For more information, feel free to consult the technical documentation on the [onFormSubmit](https://www.poool.dev/docs/access/javascript/legacy/events#onformsubmit) event.

## Access configuration

```
access.on('formSubmit', event => {  
  console.log('Form ' + event.name + ' submitted!');

// If necessary, you can review the form fields to perform your own validations.

// If an array containing the identifiers of the invalid fields is returned, the paywall will display the list of fields in error.

// If nothing is returned, the article will be unlocked.

var invalid = [];

if (event.fields.password !== event.fields.passwordRepeat) {  
    invalid.push('password');  
    invalid.push('passwordRepeat');  
  }

// You can also return your own error message

if (!event.fields.address) {  
    invalid.push({ fieldKey: 'address', message: 'Your address is empty. Please fill it in.' });  
  }

if (invalid.length) {  
    return invalid;  
  }  
});
```

Feel free to consult the technical documentation on the [formSubmit](https://www.poool.dev/docs/access/javascript/access/events#formsubmit) event for a comprehensive view of what can be implemented.

Our teams are available to guide you on the most appropriate method according to your needs 🙂