Use this skill when you want your AI agent to create, modify, or edit a template variant - “build an SMS variant”, “add a French locale”, “create a tenant-specific welcome email” - without making up brand variable keys or missing the per-channel content shape. The skill loads the variant envelope, per-channel content schemas, and Handlebars/JSONNET syntax references into your agent’s context whenever it detects a template task. Every generated variant validates againstDocumentation Index
Fetch the complete documentation index at: https://docs.suprsend.com/llms.txt
Use this file to discover all available pages before exploring further.
https://schema.suprsend.com/template/v2/variant_schema.json and is ready to push with the suprsend-cli skill.
Install
Try it
Paste this into your agent:How variants work
Every SuprSend template is modeled as a collection of variants. A variant pairs a channel, locale, optional tenant, and optional condition with channel-specific content. Even a simple template with no multi-tenant or multi-language requirements is just one variant - usuallytenant_id: null, locale: "en", conditions: null. Adding more locales, more tenants, or conditional content means adding more variants under the same template.
The content object inside a variant validates against a channel-specific schema selected by the channel field.
Channels
The variant’schannel field selects which content schema applies.
All 9 channels and their channel values
All 9 channels and their channel values
| Channel | channel value | Reference |
|---|---|---|
email | Email content schema | |
| SMS | sms | SMS content schema |
whatsapp | WhatsApp content schema | |
| In-app Inbox | inbox | Inbox content schema |
| Slack | slack | Slack content schema |
| Microsoft Teams | ms_teams | MS Teams content schema |
| Android Push | androidpush | Android push content schema |
| iOS Push | iospush | iOS push content schema |
| Web Push | webpush | Web push content schema |
Brand variables
Templates can reference tenant/brand properties. There are three shapes - the skill teaches your agent which to use for each case.- Reserved $brand.* keys
- Custom tenant properties
- Per-recipient URLs
These are the only keys valid directly under
$brand.. Any other key under $brand. will not resolve and will break preview rendering - put it under $brand.properties. instead.| Variable | Renders |
|---|---|
{{$brand.brand_id}} | Tenant slug / id |
{{$brand.brand_name}} | Tenant display name. The key is brand_name, not name. |
{{$brand.logo}} | Tenant logo URL |
{{$brand.primary_color}} | Primary brand color |
{{$brand.secondary_color}} | Secondary brand color |
{{$brand.tertiary_color}} | Tertiary brand color |
{{$brand.timezone}} | Tenant timezone |
{{$brand.embedded_preference_url}} | Brand-level embedded preference URL |
{{$brand.hosted_preference_domain}} | Brand-level hosted preference domain |
{{$brand.blocked_channels}} | List of channels blocked at the brand level |
{{$brand.social_links.<network>}} | Brand social link. Built-in <network> keys: x, twitter, facebook, instagram, linkedin, youtube, tiktok, discord, telegram, medium, website |
Common anti-patterns
These are the mistakes the skill is built to prevent.| Wrong | Correct |
|---|---|
{{$brand.name}} | {{$brand.brand_name}} |
{{$brand.support_url}} | {{$brand.properties.support_url}} |
{{$brand.unsubscribe_url}} | {{$brand.properties.unsubscribe_url}} |
{{$brand.address}} | {{$brand.properties.address}} |
{{$brand.$hosted_preference_url}} | {{$hosted_preference_url}} (per-recipient) or {{$brand.hosted_preference_domain}} (brand config) - pick based on intent |
What you can build
A few real things people generate with this skill:- Welcome email in English - single variant, default tenant, default locale.
- French locale variant - add a
locale: "fr"variant to an existing template. - Tenant-specific welcome email - one variant per tenant, sharing the same template slug.
- Multi-channel template - email + SMS + push variants for the same notification.
- Slack message with JSONNET
body_block- dynamic block construction.
Templating syntax
The skill carries both supported templating syntaxes:Multi-variant patterns
| Pattern | Reference |
|---|---|
| Different content per tenant/brand | Multi-tenant Variants |
| Translation keys vs. per-locale variants | Multi-lingual Variants |
Related skills
suprsend-workflow-schema- workflow delivery nodes (send_email,send_multi_channel, etc.) reference variants by template slug. Use it for the workflow shape that wraps these variants.suprsend-cli-suprsend template push/pull/commit/get/listmove variant JSON between your editor and a SuprSend workspace.
Learn more
Template Schema Guide
The full variant envelope, selection rules, and complete examples on GitHub.
Templates in SuprSend
How templates work end-to-end in SuprSend.
suprsend-workflow-schema skill
Generate the workflow JSON that delivers these variants.
Agent Skills Overview
All available skills.