CRM, Leads, Campaigns & Portals
Customer relationships, lead qualification, marketing campaigns, and self-service portals.
5. Audience Segments and Email Templates
Defining who is reached and what is sent
Campaigns rely on two supporting features. Audience Segments, on the SegmentsListPage, define the groups a campaign targets. Segments can be static or criteria-driven dynamic, and dynamic matching is case-insensitive, implemented in segment_criteria.go. A static segment is a fixed list, while a dynamic segment is defined by criteria so its membership follows the data.
Email Templates, on the TemplatesListPage, define the content that campaigns send. Each template includes a subject, an HTML body and a plain-text body, template-data expressed as JSON, a set of available template variables, and a preview capability.
Template building blocks:
- Subject — the email subject line.
- HTML and plain-text body — two renderings so recipients receive appropriate content.
- Template-data JSON and variables — allow content to be personalised through available variables.
- Preview — lets the author see the result before sending.
The division of labour is clear: segments answer who receives a campaign, and templates answer what they receive. A typical flow is to build a dynamic segment from criteria so it automatically includes matching contacts, design an email template with both body formats and the needed variables, preview it, and then target the campaign at the segment using that template. This combination makes campaign outreach both targeted and consistent.