Documentation Index

Fetch the complete documentation index at: https://docs.blackthorn.io/llms.txt

Use this file to discover all available pages before exploring further.

Session Selection & Session Rules in Event Builder

Prev Next

Control exactly how attendees choose sessions — how many they must pick, which sessions clash, and which belong to the same track — and set it all up inside Event Builder. Session selection now works on two levels: simple per-ticket totals (pick 3 sessions), and Session Rules for finer logic like "one session per time slot" or "at least two from the Leadership track."

The two levels of session control

  • Ticket totals — on each ticket (Event Item), set how many sessions an attendee picks overall: a minimum, a maximum, and whether at least one is required. You can also add instructional text above the session picker.
  • Session Rules — grouped constraints within a ticket. Each rule is a named group of sessions with its own min/max, typed as either a Time Block (sessions competing for the same time slot) or a Content Group (sessions grouped by topic/track), and optionally mutually exclusive (pick at most one).

Before you start: turn on enforcement

Session Rules are only enforced when Enable Session Rules is turned on in Event Settings. It's off by default — until you enable it, you can build rules but they won't constrain attendees at checkout. Set it on the Event Settings record for the event.

Set per-ticket session limits

On the ticket (Event Item) — in the Event Wizard ticket step, or on the Event Item record:

  • Min Total Sessions / Max Total Sessions — the number of sessions an attendee must and can pick across the whole ticket.
  • Require At Least One Session — force at least one selection.
  • Session Selection Header — instructional text shown above the picker at checkout (for example, "Please select 2 sessions").

Create Session Rules in Event Builder

Event Builder has a dedicated Session Rules module:

  1. Open Event Builder and go to the Session Rules area.
  2. Pick the Ticket the rules apply to (rules are scoped to one ticket at a time).
  3. Create a rule and set:
    • Rule TypeTime Block or Content Group (required; there's no default, so choose one).
    • Min Sessions / Max Sessions — how many sessions from this group an attendee must/can pick.
    • Mutually Exclusive — check this to allow at most one session from the group. (Use it instead of a min/max greater than one, not alongside it.)
  4. Assign sessions to the rule — one at a time, or with the Bulk Add Sessions option. Each session carries a Session Rule so it inherits the group's constraints.

A rules summary in the builder lets you sanity-check how a ticket's rules fit together before you publish.

Auto-detect time blocks

If your sessions naturally fall into competing time slots, you don't have to build every Time Block rule by hand. On the Event record, run the Recalculate Time Blocks action: it groups sessions whose start times fall close together into Time Block rules automatically.

  • It's manual — you run it when you want it; it doesn't fire on its own.
  • It's non-destructive — it won't overwrite Time Block rules you built manually; it fills in the gaps, and a session with no near-neighbors becomes its own block.
  • The grouping window is 15 minutes and is fixed — sessions starting within 15 minutes of each other are treated as the same time block (and blocks chain, so 9:00, 9:10, and 9:20 land together).

Session exclusions

Beyond time blocks, you can stop an attendee from registering for two specific sessions that shouldn't go together (for example, the same content offered twice). On the Add/Edit Session panel:

  • Excluded Sessions — mark other sessions that can't be registered alongside this one by the same attendee.
  • Exclude From Overlap — exempt this session from time-overlap blocking (useful for something like an all-day exhibit hall that shouldn't clash with anything).

Exclusions are direct pairs and apply per attendee: if A excludes B and B excludes C, that does not automatically exclude A and C, and two different attendees can each take opposite ends of an excluded pair.

What attendees see

With enforcement on, the session picker respects your limits: the header text guides the choice, the picker blocks selecting more than a group or ticket allows (or fewer than required), and time-block/exclusion conflicts prevent incompatible picks. If a group required selection is missing in a group checkout, the error names the specific attendee who still needs to choose.

Permissions

Session Rules ship with the packaged permission sets — no custom setup. Assign Blackthorn Events Admin or Blackthorn Event Organizer to the users who build events, and they'll have the Session Rules tab and full access to create and manage rules and exclusions.


For Salesforce admins — technical reference

Objects & fields

Object Label API Name Type Default Notes
Session Rule (new) Rule Type Rule_Type__c Picklist (restricted) none — required Values: Time Block, Content Group.
Session Rule Min Sessions Min_Sessions__c Number (18,0) blank Blank/0 = no minimum; must be ≤ Max.
Session Rule Max Sessions Max_Sessions__c Number (18,0) blank Blank/0 = no maximum; must be ≥ Min.
Session Rule Mutually Exclusive Mutually_Exclusive__c Checkbox false Effective max of 1; don't combine with Min/Max > 1.
Session Rule Description Description__c Long Text (1024) blank Admin documentation only; not attendee-facing.
Session Rule Event Item Event_Item__c Lookup → Event Item required Rules are scoped per ticket.
Event Item Min Total Sessions Min_Total_Sessions__c Number (18,0) blank Total picks required across the ticket.
Event Item Max Total Sessions Max_Total_Sessions__c Number (18,0) blank Total picks allowed across the ticket.
Event Item Session Selection Header Session_Selection_Header__c Text (255) blank Instructional text above the picker.
Event Item Require At Least One Session Require_At_Least_One_Session__c Checkbox false
Session Session Rule Session_Rule__c Lookup → Session Rule blank Assigns the session to a rule.
Session Exclude From Overlap Exclude_From_Overlap__c Checkbox false Exempts the session from time-overlap blocking.
Session Exclusion (new junction) Session A / Session B Session_A__c / Session_B__c Lookups Stores exclusion pairs; managed via the Excluded Sessions picker, not edited directly.
Event Settings Enable Session Rules Enable_Session_Rules__c Checkbox false Master switch — rules aren't enforced until this is on.

Notes for admins

  • The ticket session-limit fields (Min_Total_Sessions__c, Max_Total_Sessions__c, Session_Selection_Header__c, Require_At_Least_One_Session__c) are in the packaged Event Builder ticket field set and on the Event Item layout — no manual layout change needed.
  • Enable Session Rules (Enable_Session_Rules__c) is an Event Settings field, not a builder control. Default off; enforcement is inactive until you turn it on.
  • Recalculate Time Blocks is a screen action on the Event object (API name Auto_Detect_Time_Blocks), placed on the Event layout. Its 15-minute proximity window is fixed in code — there is no per-event setting to change it.
  • Exclusions persist to the Session_Exclusion__c junction object (there is no "Excluded Sessions" field); pairs are canonicalized and de-duplicated automatically.
  • Access is delivered through the Blackthorn Events Admin and Blackthorn Event Organizer permission sets, including visibility of the new Session Rule tab.