I have a processing url which is AMPScript like below in which email_address is a paramater which is passed. This email_address has a + sign in it.

https://pages.email.xyz.com/processing-in/[email protected]

whenever i am doing a raiseerror to check this value, i am not getting the + sign in the email address. I am getting a blank space in between like xyz [email protected]

How i can capture this entire email address and insert it in DE.


  • The error is due to the data type of email address in the data extension. An email address cannot have space and special characters. You should change the data type of the field knowing that as a consequence you couldn't use this field in order to send email to subscribers
    – cmbob
    Commented Jan 27, 2017 at 6:38
  • We cant change the data type. Is there any workaround for this... Commented Jan 27, 2017 at 6:44
  • The only way is to remove the space ([email protected]). But do you confirm that this email is existing?
    – cmbob
    Commented Jan 27, 2017 at 6:47
  • The business wants to [email protected] this mail should get passed...i am not sure how to do it.. Commented Jan 27, 2017 at 7:00
  • 3
    When you use to RequestParameter()/QueryParameters() to pull that email from url to page that function replaces the "+" sign in it with space. I haven't done any testing on that and I'm not sure if only this sign is replaced with space - if yes you can just replace all spaces back with "+" sign. Alternatively you can encrypt/encode that parameter and then decrypt/decode it after getting it from url - should work as well . Commented Jan 27, 2017 at 12:20

1 Answer 1


Here's an example based on @MBB's comment:


var @email

set @email = iif(empty(RequestParameter("email_address")),QueryParameter("email_address"),"")

set @email = replace(@email," ","+")


Email: %%=v(@email)=%%


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .