0

I would like to create a simple cloud page that our brand teams can use to trigger their own test sends. I'd like to do this without having to setup 100+ triggered sends. My goal would look like this

  • Step 1 -- I provide brand team with emailID # and tell them it is ready for testing.
  • Step 2 -- Brand team navigates to the cloud page and submits a form with 3 fields: EmailAddress, SubscriberKey, EmailID
  • Step 3 -- SFMC receives form submission in DE, send is triggered based on the "EmailID" value passed from the form.

Is this possible?

1 Answer 1

1

Yes, but not as simply as it sounds.

Basically, you would have to use the REST API to send an email test send based off subscriber data.

So to do this, you would need to either have a default 'test data' DE that you use, or you would have to have this as a field in your form for the Brand team to add in.

See this article from my blog for detailed info on testing/preview via REST API.

The endpoint we would be looking at is: POST: /guide/v1/emails/preview/send.

This API Endpoint would require the following payload:

{
  "dataSource": {
    "id": "{{deid}}",
    "row": {{row}},
    "type": "DataExtension"
  },
  "emailID": "{{emailid}}",
  "isMultipart": true,
  "options": {
    "EnableETURLs": "true"
  },
  "recipients": [
    "{{insertYourEmailHere}}"
  ],
  "sendManagement": {
    "sendClassificationID": "{{sendClassificationID}}",
    "deliveryProfileID": "{{deliveryProfileID}}",
    "senderProfileID": "{{senderProfileID}}"
  },
  "subjectPrefix": "[Test]:",
  "suppressTracking": true,
  "trackLinks": true
}

So you would need:

  • Data Extension ID (deid)
  • Row Number (row) [Optional]
  • Email ID (emailid)
  • Recipient email address list
  • sendClassificationID (sendClassificationID)
  • deliveryProfileID (deliveryProfileID) [Optional]
  • senderProfileID (senderProfileID) [Optional]

The sendClassificationID would need to be gathered via SOAP API to get the value to add there.

So whatever way you are able to create your process to allow for the above, you can then create an automated test send page that is not reliant on User-Initiated Sends (Automation Studio Sends) or Triggered Send Definitions.

3
  • Thank you this is awesome! So when you say I need a test DE, you're saying I need a DE to receive the form data and that entry into the DE will trigger the send? Or is the API triggering the send and just referencing the DE? I haven't read your article yet. Doing that now. Thanks again!
    – en-rep
    Commented Sep 30, 2020 at 13:47
  • You need a DE that would mimic the sendable data you would use for the live send. That is what the Test Send Call will use to process the AMPScript personalization, etc. Commented Sep 30, 2020 at 14:19
  • 1
    Oh that makes sense -- I basically am firing a row of data into a test DE based on the form data, and then the API endpoint references the row like you have shown above.
    – en-rep
    Commented Sep 30, 2020 at 15:54

You must log in to answer this question.

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