A financial services company needs to generate a highly personalized email containing a complex data table built from three different data extensions: `Customers`, `Accounts`, and `Transactions`. Due to performance concerns with nested `LookupRows` calls within a `FOR` loop during the send context, an architect has recommended pre-processing the data. The goal is to aggregate transaction data into a single JSON object and store it in a staging Data Extension before the send.
Q2
A retail company's e-commerce platform needs to trigger a transactional 'Order Confirmation' email immediately after a purchase. The development team is deciding between the SOAP API's `TriggeredSend` object and the REST API's Transactional Messaging endpoint (`/messaging/v1/email/messages/`). The payload contains customer details, order line items, and a unique promotional code for their next purchase.
Q3
A marketing team at a large university uses a SQL Query Activity to segment students for a new scholarship announcement. The query joins the `Student_Master` DE (containing `StudentID`, `GPA`, `Major`) with the `Course_Enrollment` DE (containing `StudentID`, `CourseCode`). The goal is to find all students with a GPA over 3.5 who are enrolled in any 'CS' prefixed course. The query is timing out. **Query Snippet**: ```sql SELECT s.StudentID, s.GPA, s.Major FROM Student_Master s INNER JOIN Course_Enrollment c ON s.StudentID = c.StudentID WHERE s.GPA > 3.5 AND c.CourseCode LIKE 'CS%' ``` Assuming `StudentID` is the primary key on `Student_Master` and a sendable relationship exists, what is the most effective optimization to prevent the query from timing out?
Q4
True or False: When a contact is deleted from Contact Builder through the official Contact Delete process, their corresponding records in all Sendable Data Extensions are automatically removed, but records in Non-sendable Data Extensions remain untouched.
Q5Multiple answers
A developer is building a CloudPage that functions as a custom preference center. The page needs to retrieve a subscriber's current preferences from a Data Extension named `Preferences_DE` upon loading, and then update them when the subscriber submits a form. The form submission is handled by the same CloudPage.
Q6
Northern Trail Outfitters (NTO) is launching a 'Track Your Order' CloudPage for customers. The page will accept an Order ID from a URL parameter (`.../track?order=12345`) and display sensitive order details, including the customer's shipping address and the items purchased. The development team is concerned about security, specifically preventing unauthorized users from guessing Order IDs and viewing other customers' data. The initial plan is to use `RequestParameter("order")` to get the Order ID, then use `LookupRows()` on the `Orders_DE` to retrieve the details. The `Orders_DE` contains `OrderID`, `CustomerID`, `ShippingAddress`, and `OrderDetails`. To ensure the page is only viewed by the intended recipient, the links are sent in a transactional email and contain the subscriber's `SubscriberKey` as another parameter (`...&subKey=XYZ`). The security team has mandated that a user accessing the page must be the actual customer associated with the order. They have also flagged potential Cross-Site Scripting (XSS) vulnerabilities if order details are displayed directly.
Q7
A developer needs to prevent an email from being sent to a subscriber if their `Status` field in the sendable data extension is 'Inactive'. The check must be performed at send time. To accomplish this, the developer should use the `_____(1, "Subscriber status is inactive")` function in an AMPscript block within the email body.
Q8
A company has a multi-brand architecture using separate Marketing Cloud Business Units (BUs) for each brand. They need to maintain a single, centralized data extension of all customers who have opted out of communications across all brands. This 'Global Unsubscribe' list must be accessible for suppression in sends from every BU.
Q9
A developer is building an integration that programmatically creates and updates hundreds of assets (emails, templates, content blocks) in Content Builder. After implementing the logic using the REST API, they notice the process is slow and occasionally fails with `429 Too Many Requests` errors. The current implementation sends one API request per asset.
Q10
A marketing email needs to display a personalized greeting, "Hi [FirstName]," but must fall back to "Hi Valued Customer," if the `FirstName` attribute is empty or does not exist for a subscriber.