On this page: Design and personalize your API triggered campaign content with contextual data passed in the API payload so each message is tailored in real time for every recipient.
To configure the message content, navigate to the Content tab or click the Edit content button.
Design the content design
The content creation process depends on the channel you selected. Learn detailed steps to create your message content in the following pages:
Attach personalized PDF files attachments
For transactional API-triggered email campaigns, you can include up to five PDF attachments in an email, including both static and personalized attachments. Each recipient can receive different personalized PDFs. Learn how to attach personalized PDF files
Personalize content using contextual data contextual
You can pass additional data into the API payload that you can leverage to personalize your message.
Let’s take this example, where customers want to reset their password, and you want to send them a password reset URL that is generated in a third-party tool. With API triggered campaigns, you can pass this generated URL into the API payload, and leverage it into the campaign to add it into the message.
To do this, you need to pass them into the API payload, and add them in your message using the personalization editor. Use the {{context.<contextualAttribute>}} syntax, where <contextualAttribute> should match the name of the variable in your API payload containing the data that you want to pass.
Note that, for now, no contextual attribute is available for use in the left rail menu. Attributes must be typed directly in your personalization expression, with no check being performed by Journey Optimizer.
Must read
- The contextual attributes passed into the request cannot exceed 200kb and are always considered of type string.
- The
context.systemsyntax is restricted to Adobe internal usage only, and should not be used to pass contextual attributes. - Unlike profile-enabled events, the contextual data passed in the REST API is used for one-off communication and not stored against profile. At maximum, profile is created with the namespace details, if it was found missing.
- Using a large number or heavy contextual data in your content may impact performances.
- Because no check is performed, make sure the contextual attribute path entered manually in your expression matches the payload structure exactly, including nesting and key names.
Test and check your content
Once your content is defined, use the Simulate content button to preview and test your content. You can use either simulation method:
- Click Simulate content to test content variations with sample input data or AI auto-generation.
- Click Simulate content, then select Simulate content (AEP profiles) from the dropdown to preview with test profiles.
Learn how to preview and test content. To browse back to the campaign creation screen, click the left arrow.
Next steps next
Once your campaign configuration and content are ready, you can define the campaign audience. Learn more
This section contains structured knowledge intended to support interpretation, retrieval, and question answering related to this topic.
For complete understanding, this information should be combined with the documentation on this page. Neither source is intended to stand alone; the page describes the feature, while this section provides additional context that helps disambiguate terminology, intent, applicability, and constraints.
- TL;DR: This page explains how to design the content of an API triggered campaign, personalize it with contextual data passed in the API payload, attach personalized PDF files, and preview it with Simulate content.
Intents:
- Open the message content configuration from the Content tab or the Edit content button
- Personalize a message with contextual data from the API payload
- Attach personalized PDF files to transactional API-triggered email campaigns
- Preview and test the content with Simulate content
Glossary:
- Contextual data: Additional data passed into the API payload and used to personalize the message, referenced with the
{{context.<contextualAttribute>}}syntax, where<contextualAttribute>matches the name of the variable in the API payload (product-specific) - High Throughput campaigns: A mode that does not rely on Adobe profiles; all personalization must be included in the API payload as context data (product-specific)
- Simulate content: Button used to preview and test content with sample input data or AI auto-generation
- Simulate content (AEP profiles): Option selected from the Simulate content dropdown to preview with test profiles
Guardrails:
- The contextual attributes passed into the request cannot exceed 200kb (hard limit) and are always considered of type string.
- The
context.systemsyntax is restricted to Adobe internal usage only and should not be used to pass contextual attributes. - Contextual data passed in the REST API is used for one-off communication and is not stored against profile. At maximum, a profile is created with the namespace details, if it was found missing.
- Using a large number or heavy contextual data in your content may impact performances.
- For now, no contextual attribute is available for use in the left rail menu. Attributes must be typed directly in the personalization expression, with no check performed by Journey Optimizer.
- A transactional API-triggered email campaign can include up to five PDF attachments in an email, including both static and personalized attachments.
Applicability:
- Design content: Email, Mobile message, Push notification
- Personalized PDF attachments: transactional API-triggered email campaigns
- High Throughput campaigns: email channel only, US region only
Terminology:
- Canonical name: API triggered campaign content
- Do not confuse: “contextual data passed in the REST API” (one-off, not stored against profile) ≠ “profile-enabled events”
- Do not confuse: Simulate content (sample input data or AI auto-generation) ≠ Simulate content (AEP profiles) (test profiles)
FAQ:
- Q: How do I use data from the API payload in a message? — Pass the data into the API payload and add it in the message with the personalization editor, using
{{context.<contextualAttribute>}}. - Q: Can contextual attributes be picked from the left rail menu? — No. No contextual attribute is available there; attributes must be typed directly in the personalization expression.
- Q: What is the size limit for contextual attributes? — They cannot exceed 200kb and are always considered of type string.
- Q: Is contextual data stored against the profile? — No. It is used for one-off communication and not stored against profile. At maximum, a profile is created with the namespace details, if it was found missing.
- Q: How many PDF attachments can an email include? — For transactional API-triggered email campaigns, up to five, static and personalized attachments included.
- Q: How do I preview content? — Click Simulate content to test with sample input data or AI auto-generation, or select Simulate content (AEP profiles) from the dropdown to preview with test profiles.
Examples:
- A customer wants to reset a password. A password reset URL is generated in a third-party tool, passed into the API payload, and added to the message with
{{context.<contextualAttribute>}}.
Related pages:
- Creating email content: Email (email/create-email.md)
- Creating mobile message content: Mobile message (mobile/create-mobile-message.md)
- Creating push notification content: Push notification (push/create-push.md)
- High Throughput campaigns: High Throughput campaigns (campaigns/api-triggered-high-throughput.md)
- Personalized PDF attachments: Learn how to attach personalized PDF files (email/pdf-attachments.md#personalized-attachments)
- Previewing and testing content: Learn how to preview and test content (content-management/preview-test.md)
- Next step, defining the audience: Learn more (campaigns/api-triggered-campaign-audience.md)