# Find duplicate email on collection item entry

**URL:** <https://community.glideapps.com/t/find-duplicate-email-on-collection-item-entry/71797>\
**Category:** Ask for Help\
**Created:** [March 19, 2024, 11:08am UTC](https://community.glideapps.com/t/find-duplicate-email-on-collection-item-entry/71797 "2024-03-19T11:08:02Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Paradize](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/paradize/32/72367_2.png) [@Paradize](https://community.glideapps.com/u/Paradize)\
**Post date:** [March 19, 2024, 11:08am UTC](https://community.glideapps.com/t/find-duplicate-email-on-collection-item-entry/71797/1 "2024-03-19T11:08:02Z")

</div>

Hey,

I have an onboarding flow where I will let let an agency add their clients. I would like to show them that it’s not possible to enter a certain email if it already exists.

My problem is, is that I am doing this entry with a collection, this means, the row/value only gets added after submit.

Is there a way to maybe trigger an action on submit to search if that email already exists and if yes, not submitting the form?

I tried adding a relation to the email and then a rollup to cound how many times that email exists, but I’m stuck there.

thank you so much 🙂

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [March 19, 2024, 11:22am UTC](https://community.glideapps.com/t/find-duplicate-email-on-collection-item-entry/71797/2 "2024-03-19T11:22:50Z")

</div>

> [@Paradize](#):
>
> Is there a way to maybe trigger an action on submit to search if that email already exists and if yes, not submitting the form?

No, that’s not possible.

> [@Paradize](#):
>
> I tried adding a relation to the email and then a rollup to cound how many times that email exists, but I’m stuck there.

That’s the idea, but you need to use it with a Custom Form.

[![](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/4/5/45341fe992c2c539efb50c92c97c4dd9cd359718.jpeg "Helper Tables | Glide App Tutorial") ](https://www.youtube.com/watch?v=IlQnfK9sISk&t=94)

---

<div class="post-metadata">

**Author:** ![Paradize](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/paradize/32/72367_2.png) [@Paradize](https://community.glideapps.com/u/Paradize)\
**Post date:** [March 19, 2024, 12:03pm UTC](https://community.glideapps.com/t/find-duplicate-email-on-collection-item-entry/71797/3 "2024-03-19T12:03:21Z")

</div>

Yes, I already have an onboarding helper table, but an agency can add multiple clients, so how can I add multiple users to that helper table?

I have 1 row in the helper table and all user specific, so not really adding more rows.

Can I add multiple values in one cell and then do the rollup with relation to the users table?

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [March 19, 2024, 12:20pm UTC](https://community.glideapps.com/t/find-duplicate-email-on-collection-item-entry/71797/4 "2024-03-19T12:20:40Z")

</div>

The specific section of the video that I linked to talks about how to create a custom form.

---

<div class="post-metadata">

**Author:** ![Paradize](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/paradize/32/72367_2.png) [@Paradize](https://community.glideapps.com/u/Paradize)\
**Post date:** [March 19, 2024, 12:23pm UTC](https://community.glideapps.com/t/find-duplicate-email-on-collection-item-entry/71797/5 "2024-03-19T12:23:13Z")

</div>

Yes, but does that mean I have to create another helper table, next to the onboarding helper table?

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [March 19, 2024, 12:38pm UTC](https://community.glideapps.com/t/find-duplicate-email-on-collection-item-entry/71797/6 "2024-03-19T12:38:21Z")

</div>

Not necessarily.  
You just need to switch from using a native form to using a custom form. Where you collect the input values doesn’t matter. The main point is, when you use a custom form the input values will be written to user specific columns, so you can use them to create a relation to existing data, and then use the state of that relation to determine whether or not a duplicate is being created. You can then warn the user and stop them from submitting the form.

---

<div class="post-metadata">

**Author:** ![Paradize](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/paradize/32/72367_2.png) [@Paradize](https://community.glideapps.com/u/Paradize)\
**Post date:** [March 19, 2024, 12:45pm UTC](https://community.glideapps.com/t/find-duplicate-email-on-collection-item-entry/71797/7 "2024-03-19T12:45:36Z")

</div>

Yes, that works, however I have:

1 agency → multiple clients

In the onboarding flow the agency will add multiple clients. What is the easiest way to save the multiple creators in the helper table, if I have one row in the helper table with all user specific columns.

Can I add an array or a list to one column/cell and populate it with more and more emails of the different clients added?

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [March 19, 2024, 1:30pm UTC](https://community.glideapps.com/t/find-duplicate-email-on-collection-item-entry/71797/8 "2024-03-19T13:30:50Z")

</div>

How do they do it now? Presumably one by one?  
Is there any reason why they can’t continue to do that?  
Adding them as a batch is possible, but would require using the API.
