Core concepts
Six concepts form the backbone of everything in Active Reach. Understanding them makes the rest of the platform click.
Contacts
A contact is a person your business communicates with. Contacts have:
- Identity — email, phone number, user ID (from your app or SDK)
- Properties — name, city, language, plan tier, or any custom field you define
- Event history — every action they’ve taken (purchases, page views, email opens)
- Segment memberships — which audiences they belong to, updated in real-time
Contacts are created automatically when you import data, when someone interacts with your SDK, or when a CRM sync pushes a record. You can also create them via the API.
Events
An event is something a contact does. Examples:
order_completedwith properties like amount, product, and currencypage_viewedwith the URL and referreremail_openedwith the campaign ID
Events power everything — segmentation, journey triggers, analytics, attribution. The more events you track, the smarter the platform becomes.
Events come in via:
- The Web SDK or Mobile SDKs (client-side tracking)
- The REST API (server-side tracking)
- Integration webhooks (Shopify orders, CRM updates, ad conversions)
Segments
A segment is a dynamic group of contacts defined by rules. For example:
- “Purchased in the last 30 days AND opened an email in the last 7 days”
- “Located in Mumbai AND on the Pro plan”
- “Completed onboarding but hasn’t made a purchase”
Segments update in real-time as contacts match or stop matching the rules. You use them to target campaigns, trigger journeys, and filter analytics.
Active Reach also offers AI-generated segments — describe the audience you want in plain language, and the platform translates it into segment rules.
Campaigns
A campaign is a one-time or recurring message sent to a segment through one or more channels. Campaigns support:
- Multi-channel — send via WhatsApp, email, SMS, RCS, push, or in-app in a single campaign
- A/B testing — compare message variants and automatically pick the winner
- Send-time optimization — the platform learns when each contact is most likely to engage and times delivery to match
- Approval workflows — require team sign-off before a campaign goes live
Journeys
A journey is a multi-step automation triggered by an event, a segment change, a date, or an API call. Journeys use a visual canvas with drag-and-drop nodes:
| Node type | What it does |
|---|---|
| Trigger | Entry point — “when a contact does X” or “when a contact enters segment Y” |
| Wait | Pause for a duration, until an event, or until a specific time |
| Send | Deliver a message via any channel |
| Branch | Split the path based on a condition (contact property, event, engagement) |
| Split | A/B test — distribute contacts across variants |
| Exit | End the journey for this contact |
Journeys run continuously. Once published, contacts flow through them as they match the trigger.
Workspaces, locations, and properties
Active Reach uses a three-layer account model under each organization (the brand portfolio holder):
- Workspace — the brand-tenant. One per brand. Owns contacts, segments, channels, journeys, campaigns, ads, loyalty program, and brand voice. Contacts and events are isolated per workspace and never leak between brands.
- Location — an outlet (store) within the brand. First-class object. Per-outlet overrides live here: local hours, manager phone, payment merchant, per-outlet channel sender mapping. The chip strip on every dashboard page narrows the view to a single outlet via
?location=loc_X. While narrowed, a persistent scope indicator sits at the top of every workspace page so a filtered view is never silent — see multi-workspace overview. - Property — an SDK install (web app, mobile app, kiosk). Owns in-app and push surfaces and its own VAPID / FCM / APNs keys.
Multi-brand operators do not create multiple workspaces under one org. They use agency mode — a separate Aegis org per brand, linked to an agency org. See Workspace vs organization for the full mental model.
How they fit together
Contact → does an Event → matches a Segment → triggers a Journey → sends a CampaignThat’s the core loop. Analytics, playbooks, loyalty, and ads are all extensions built on top of these six primitives.