I have a Marketing CloudPage form that captures data and updates the existing records Salesforce using the UpdateSalesforceObject parameter. Subscribers access the page via CloudPageURL from the Marketing Cloud email.

We now have an added requirement to direct subscribers to this page using text messaging outside of marketing cloud. I need to be able to create a link combination that also gets them to this page.

I tried to create the ‘CloudpageURL’ using a few combinations including domain+sitepath + subscriber key example.com/consentformpage?id=003H47 but all gave me an error 500 on the page.

  • Are you passing all the parameters that are later used in the script? How do you retrieve those parameters in your script?
    – zuzannamj
    May 20, 2020 at 22:15
  • I am not passing additional parameters in the CloudPageUrl, just CloudPageURL(PageID). I am using RetrieveSaleforceObjects on the cloud page to display certain information based on Salesforce fields. May 21, 2020 at 12:43
  • CloudPagesURL function passes a bunch of parameters itself, so if you want to redirect someone to the CloudPage from an external source, you need to make sure that all required parameters are passed - for instance, the Contact/Lead Id if you’re retrieving data from Sales Cloud. Can you post the script from your CloudPage?
    – zuzannamj
    May 21, 2020 at 12:47
  • yes, I can post the script. Looking into what you said about ensuring I have all of the required parameters, I see I do have additional (extra) parameters in the RetrieveSalesforceObject and UpdateSingleSalesforceObject that are not captured in input or hidden fields. May 21, 2020 at 13:15

1 Answer 1


As mentioned in the comments, the CloudPagesURL function by default passes along a bunch of parameters:

This function provides a convenient method of linking to landing pages (created in CloudPages) from email messages.

When an email is sent that includes a link to a landing page with this function, a URL link is generated to the landing page and is appended with an encrypted query string.

This encrypted query string provides a reference to the email, which means that system personalization strings can be used on a landing page to retrieve values related to the sent email. And as the string is encrypted, no Subscriber information is passed in clear text.

Now if you want to redirect someone to a CloudPage from an external source, and you have a script on the CloudPage that uses any of the system personalization strings, for example, the subscriber key - you need to make sure you pass them as parameters in the URL.

For example, if you were setting a subscriber key variable in your script:

SET @subscriberkey = _subscriberkey

You will now need to pass it in the URL:


And in your script, retrieve it using the QueryParameter function:

SET @subscriberkey = QueryParameter('subscriberkey')

If possible, avoid passing sensitive data in cleartext. Take a look at the encryption/decryption AMPscript functions to see if you would be able to use any of them to obfuscate personal data:


You must log in to answer this question.

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