Create and manage events of all types - live, online, and webinar - with full control over details, speakers, sponsors, and scheduling.Documentation Index
Fetch the complete documentation index at: https://memberpulseptyltd.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Capabilities
| Action | ROLE_CLIENT_ADMIN | ROLE_CLIENT_USER |
|---|---|---|
| View events | ✅ | ✅ |
| Create events | ✅ | ❌ |
| Edit events | ✅ | ❌ |
| Delete events | ✅ | ❌ |
| Clone events | ✅ | ❌ |
| Manage speakers | ✅ | ❌ |
Features
Event Types
Live Events
In-person events at physical venues
Online Events
Virtual events via video conferencing
Webinars
Broadcast-style online presentations
Acceptance Criteria
Frontend
- Event list with status and date filters
- Clone event functionality
- Preview event as member would see it
- Rich text editor for descriptions
- Image upload with cropping
- Date/time picker with timezone
- Drag-and-drop schedule builder
- Speaker management interface
Backend / API
- Backend behavior supports this feature as documented.
Permissions
- Access is restricted per the Capabilities matrix on this page (or equivalent role rules).
Business Rules
- Event title is required
- Start date must be in the future (for new events)
- Live events require location details
- Online events require meeting link (manual URL or auto-generated via Zoom integration)
- Published events visible based on visibility setting
- Cancelled events hidden from public, registrations notified
- End date must be after start date
Error Handling
- Error states return clear messages and appropriate HTTP status codes.
Create Event
Basic Details
- Event title and description
- Event type (live, online, webinar)
- Featured image upload
- CPD points allocation
Location
For live events:
- Venue name and address
- City, state, country
- Map integration
- Meeting provider (Zoom recommended)
- Meeting link (auto-generated via Zoom integration, or manual URL)
- Access instructions (passwords, dial-in, etc.)
Acceptance Criteria
Frontend
- Create event wizard with multi-step form
Backend / API
- Backend behavior supports this feature as documented.
Permissions
- Access is restricted per the Capabilities matrix on this page (or equivalent role rules).
Business Rules
- All business rules for this feature are enforced.
Error Handling
- Error states return clear messages and appropriate HTTP status codes.
UI Spec (from supplied spreadsheet)
The following field inventory is sourced fromworkspace/sources/entity-registry.csv (“Events”).
This is a UI/requirements inventory (not the ERD). Some rows (e.g. datatables) describe UI elements rather than stored fields.
Core event fields
| Field | Input Type | Required | Notes |
|---|---|---|---|
| Event ID | Number | Required | System generated, locked |
| Event Name | Text | Required | model: name |
| Event Short Description | Text | Required | Used for tile |
| Event Description | WYSIWYG (Textarea) | Required | model: description |
| Event Location | Text | Required | Google Maps selection; model: location |
| Event Start Date / Time | Date + Text | Required | model: eventStart |
| Event End Date / Time | Date + Text | Required | model: eventEnd |
| Event Topic | Select | Required | From event settings |
| Event Category | Select | Required | model: eventCategories |
| Event Series | Select | Required | model: eventSeries |
| Event Branches | Select | Required | model: eventBranches |
| CPD Category | Selector | Required | model: cpdCategories |
| Event Type | Select | Required | model: eventType |
| Is Online | - | - | model: isOnline |
| Zoom Link | Checkbox | Not Required | model: zoomLink |
| Event Featured Image | File | Not Required | model: featuredImage |
| Schedule for later | Yes / No | - | model: scheduleForLater |
| Publish Date / Time | Date + Time | - | model: publishDateTime |
| Free Event | True / False | Required | model: isFreeEvent |
| List of Participants | Datatable | - | Columns: Full name, Email, Ticket Type Purchased |
Speakers & sponsors
| Field | Input Type | Required | Notes |
|---|---|---|---|
| Speaker Name | Text | Required | model: speakerName |
| Speaker Bio | Text | Required | model: speakerBio |
| Speaker Website URL | URL | Required | model: speakerWebsite |
| Speaker Image | File | Required | model: speakerImageName |
| Is Main Speaker | True / False | Required | model: isMainSpeaker |
| Request Sponsors | True / False | Required | Adds sponsorship request workflow |
| Sponsorship Type | Text | Required | Repeater when request sponsors enabled |
| Sponsorship Cost | Number | Required | - |
| Sponsorship Description | WYSIWYG (Textarea) | Required | - |
| Sponsor Name | Text | Not Required | model: sponsorName |
| Sponsor URL | URL | Not Required | model: sponsorUrl |
| Sponsor Logo | File | Not Required | model: sponsorLogoName |
Data Model Cross‑Reference (Entities)
- Event record:
Event - Ticketing + registration/check-in state:
Event Ticket - Sponsorships:
Sponsorship - CPD:
CPD RecordandCPD Category
Online Events: Zoom Integration (auto meeting link)
For Zoom-hosted online events, the platform can create the Zoom meeting/webinar automatically and store the meeting link on the event. Expected behavior:- When the event is saved/published with Zoom enabled, the backend creates (or updates) the Zoom meeting
- The generated join URL is stored as the event’s meeting link
- The meeting link is shown to registered members (and optionally sent in confirmation emails)
Acceptance Criteria
Frontend
- Event form supports selecting Zoom as the meeting provider.
- Meeting link field is read-only when Zoom auto-generation is enabled.
Backend / API
- Zoom meetings/webinars are created/updated automatically based on event start/end time.
Permissions
- Only
ROLE_CLIENT_ADMINcan connect/configure Zoom and enable auto meeting creation.
Business Rules
- Zoom join links are only visible to users who are allowed to access the event.
Error Handling
- If Zoom meeting creation fails, the UI shows an actionable error and allows retry.
CRM tags (pre/post)
When CRM sync is enabled, events apply predefined tags:event.registered.prewhen a member registersevent.attended.postwhen a member attends (check-in or Zoom import)event.no_show.postwhen a member is marked as a no-show
CRM Tag
Clone Event
Save time by duplicating existing events:- Select event to clone
- All details copied to new draft
- Modify as needed (dates, speakers, etc.)
- Publish when ready
Acceptance Criteria
Frontend
- Clone Event workflow is implemented in the UI as described.
Backend / API
- Backend behavior supports Clone Event as documented.
Permissions
- Access is restricted per the Capabilities matrix on this page (or equivalent role rules).
Business Rules
- All business rules for this feature are enforced.
Error Handling
- Error states return clear messages and appropriate HTTP status codes.
Speaker Management
- Add Speaker
- Speaker Library
- Name and bio
- Photo upload
- Contact details
- Social links
- Designate as main speaker
Acceptance Criteria
Frontend
- Speaker Management workflow is implemented in the UI as described.
Backend / API
- Backend behavior supports Speaker Management as documented.
Permissions
- Access is restricted per the Capabilities matrix on this page (or equivalent role rules).
Business Rules
- All business rules for this feature are enforced.
Error Handling
- Error states return clear messages and appropriate HTTP status codes.
Sponsorship Assignment
This enables the association/client to attach one or more sponsors to an event, including sponsor logos and sponsor CTA links.- Add sponsors to event
- Set sponsorship tier per sponsor
- Display sponsor logos on event page
- Track sponsor visibility metrics
Acceptance Criteria
Frontend
- Sponsorship Assignment workflow is implemented in the UI as described.
Backend / API
- Backend behavior supports Sponsorship Assignment as documented.
Permissions
- Access is restricted per the Capabilities matrix on this page (or equivalent role rules).
Business Rules
- All business rules for this feature are enforced.
Error Handling
- Error states return clear messages and appropriate HTTP status codes.
Implementation Contracts
Backend (API)
Data Model
Error Handling
| Error | HTTP Status | Message |
|---|---|---|
| Past start date | 400 | ”Event start date must be in the future” |
| Invalid dates | 400 | ”End date must be after start date” |
| Missing location | 400 | ”Live events require venue details” |
| Missing link | 400 | ”Online events require meeting link” |
AI-Powered Webinar Processing
For webinars with recordings, the system automatically processes the video/recording to generate chapters and transcription.Recording Extraction
When a webinar ends, the system:AI-Generated Chapters
The system analyzes webinar content and automatically creates chapters:- Topic Detection: Identifies major topic shifts and key discussion points
- Timestamp Markers: Precise timestamps for each chapter
- Chapter Titles: AI-generated descriptive titles for each section
- Summary Text: Brief description of what each chapter covers
Transcription Features
- Full Transcript
- Member Experience
- Complete word-for-word transcription
- Speaker identification (when available)
- Timestamp markers throughout
- Searchable text content
Acceptance Criteria
Frontend
- Recording processing status indicator on event detail page
- Chapter navigation sidebar in video player
- Searchable transcript panel alongside video
- Click-to-jump functionality from transcript to video timestamp
- Download options for transcript (PDF, TXT)
- Edit interface for admin to modify AI-generated chapters and transcript
Backend / API
- Automatic recording retrieval from Zoom after webinar ends
- AI transcription service integration
- AI chapter generation service integration
- Storage of processed transcripts and chapters
Permissions
- Only
ROLE_CLIENT_ADMINcan edit AI-generated chapters and transcripts - Members can only view/download if they have access to the event
Business Rules
- Processing begins automatically when recording is available
- Admin notified when processing is complete
- Failed processing attempts are retried up to 3 times
- Transcript and chapters can be manually edited by admin
- Original recording preserved alongside processed content
Error Handling
- If recording retrieval fails, admin is notified to manually upload
- If transcription fails, event displays recording without transcript
- Processing errors logged with detailed diagnostics