Email validation for Forms or Workflow conditions

Is there a way to do email address validation in Smartsheet forms or in Workflows? Using condtions such as contains '@' or '@domain.com' isn't sufficient and I can't alert form submitters that they did not submit to the form correctly.

Comments

  • Andrée Starå
    Andrée Starå ✭✭✭✭✭✭

    Hi Eric,

    Why wouldn't CONTAINS or similar work?

    What do you want to check?

    Can you describe your process in more detail and maybe share the sheet(s)/copies of the sheet(s) or some screenshots? (Delete/replace any confidential/sensitive information before sharing) That would make it easier to help. (share too, andree@getdone.se)

    I hope that helps!

    Have a fantastic day & Happy New Year!

    Best,

    Andrée Starå

    Workflow Consultant / CEO @ WORK BOLD

    SMARTSHEET EXPERT CONSULTANT & PARTNER

    Andrée Starå | Workflow Consultant / CEO @ WORK BOLD

    W: www.workbold.com | E:andree@workbold.com | P: +46 (0) - 72 - 510 99 35

    Feel free to contact me for help with Smartsheet, integrations, general workflow advice, or anything else.

  • I believe I have the same question. In my case, I am creating a form that requires a field be completed using an email address rather than just a name. How can I make an email address format the required value?

  • Hi @KATY PRUETT

    Do you have a column in your sheet that's a Contact List type of column? You can make this a required field.

    Here's more information on the Contact List type of column: https://help.smartsheet.com/articles/2480241-column-type-reference#contactlist

    Join us at Smartsheet ENGAGE 2024 🎉
    October 8 - 10, Seattle, WA | Register now

  • @Genevieve P I just tried the suggestion above and it doesn't seem to work as I expected.

    I have a form where I want to make sure that people give me an email address that contains at least an "@" symbol and a "." so if the individual on the form enters kasel, it should prevent them from saving or give an error, vs if they say kasel@gmail.com it lets them save.

  • Hi @Kasel Lesak

    Could you implement @Andrée Starå 's solution of setting up a workflow to check if there's an @ or .?

    If you put it in a workflow as a condition, like this, then you could send an Update Request to the user who submitted the form (this would require that they log in to fill out the form so Smartsheet can capture the email that way).


    Otherwise, I would make sure that your helper text is extremely clear:


    Join us at Smartsheet ENGAGE 2024 🎉
    October 8 - 10, Seattle, WA | Register now

  • David Grooms
    David Grooms ✭✭
    edited 03/19/21

    Has anyone at Smartsheet seen how ridiculously easy format validation is on the FREE Google forms app?

    I couldn't put my help text in clearer words. NO ONE reads or follows that help text.

    There seem to be forum posts going back to 2016 of people asking for this very basic functionality. But I only see responses with goofy workarounds and no indication that Smartsheet understands the value.

  • Ross George
    Ross George ✭✭
    edited 05/13/21

    I agree with David - this is pretty basic functionality for many competitors so its seems strange it hasn't been implemented. As always, there is a hack that will get you 70% of a solution...

    I'm not sure the proposed hack works either. If I want to add a Contacts list to the form but allow the user to enter a new email then I don't think I can use CONTAINS to do what is suggested. The form field would need to be a text entry.

  • Daniel Hibbets
    edited 09/28/21

    Here is a solution: On a Form you want to have Email entry: Name@doman.com: That column on the back end needs to be a text field. Then you have a second column with the formula " =Email@row" That column should be set up as a contact field and for all your automations. This will duplicate the email into two columns- One as a Text, second as a Contact. Now to Validate the information. Set up a Third Column and use the following formula: =IF(CONTAINS("@doman.com", [Email]@row), "True", IF(CONTAINS("@Doman2.com", [Requestor Email]@row), "True", "False"))

    This will allow you to have a Domain validation check on entries. If the Email is not from @domain.com or @Domain2.com, it will produce a False in the Validation column and allow you to prevent it from going further into workflows or approvals or even kick an error back out, you could also have it auto cancel or delete a ticket based on that false information. If True it proceeds to other processes.

    Also your Email Entry Column now can have Email validation on the text field to ensure it's at least a proper email address, if its from a bad domain like a gmail.com then the above solution handles that so personal emails can't be used in a process.

  • brianswilson
    brianswilson ✭✭✭
    edited 07/28/22

    It would be better if some kind of regular expression matching could be implemented. This would allow users to set up varied types of matching, not just emails. This would be a very powerful feature to implement. Users could set up something like "[:alphanumeric:]_[:alphanumeric:]@domain.com" or "[:alphanumeric:].[:alphanumeric:]@domain.com" to validate emails, but could also use the feature to validate other types of data.

  • Sylvia
    Sylvia ✭✭

    Is there a solution to have validation two fields in the form ?

    I'm using a form to capture email address and want to make sure the user types the correct email address.

    So, I have created a new field for email but how can we validate two fields?

    If the user types second wrong, smartsheet should prompt the user to enter new email address.

    Any input will be highly appreciated. Thank you!