> ## Documentation Index
> Fetch the complete documentation index at: https://docs.junojourney.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Attending Events

> How to RSVP, manage your attendance, and handle waitlists.

export const InternalNote = ({children}) => {
  const [isInternal, setIsInternal] = useState(false);
  useEffect(() => {
    const user = window.__mintlify_user__;
    if (user?.groups?.includes("internal")) setIsInternal(true);
  }, []);
  if (!isInternal) return null;
  return <div className="internal-note">
      <strong className="internal-note-title">🔒 Internal Note</strong>
      <div>{children}</div>
    </div>;
};

export const FeatureAvailability = ({module, feature}) => {
  const label = feature || module;
  return <Info title="Feature availability">
      {label ? <>This feature requires the <strong>{label}</strong> module. </> : <>This feature may not be enabled for your organization. </>}
      If you don't see it in Juno, contact your administrator.
    </Info>;
};

<FeatureAvailability module="Events" />

## Joining an event

To register for an event:

1. Browse to the event detail page
2. Click **Join** or **RSVP**
3. You're registered — the event appears in your calendar and My Library

If you've connected your external calendar (Google or Outlook), the event syncs automatically.

***

## RSVP statuses

| Status        | What it means                          |
| ------------- | -------------------------------------- |
| **Going**     | You've confirmed attendance            |
| **Maybe**     | You've tentatively accepted            |
| **Not Going** | You've declined                        |
| **Waiting**   | Event is full — you're on the waitlist |

You can change your RSVP at any time before the event starts.

***

## Waitlist

When an event reaches capacity, new registrations go to a **waitlist**. If a spot opens up, your admin can approve you from the waitlist. You'll receive a notification when moved to the attendee list.

***

## Registration policies

| Policy                | How it works                                            |
| --------------------- | ------------------------------------------------------- |
| **Single session**    | Register for one session only                           |
| **Multiple sessions** | Register for several sessions of the same event         |
| **All sessions**      | Automatically registered for all sessions when you join |

***

## Attendance mode

For hybrid events that offer both in-person and remote participation, you may be asked **"How will you attend?"** when registering for a session. Select one of:

| Option                | When to pick it                                                      |
| --------------------- | -------------------------------------------------------------------- |
| **Remotely via link** | You're joining the session online via the video conference link      |
| **In person**         | You're attending at the physical location shown in the event details |

The attendance mode selector only appears when the event organizer has enabled it on the session. You can update your choice at any time before the session starts by reopening the event registration details.

***

## Cancelling

Open the event and click **Leave** or change your RSVP to **Not Going**. This frees your spot for someone on the waitlist.

***

## Video conference

If the event is virtual, a conference link (Zoom, Google Meet, or Microsoft Teams) appears in the event details. Click it to join when the session starts.

***

## Session changes

If the organizer reschedules or updates a session you're registered for, Juno notifies you. The notification lists exactly what changed — for example, a new start time, a different room, or an updated video conference link — and links back to the event so you can review and re-confirm your attendance.

Notifications arrive in the Notification Center and through any channel your organization has enabled (email, Slack, Microsoft Teams). If you've connected Google Calendar or Outlook, the entry in your external calendar is updated automatically as well — see [Calendar Sync](/events/calendar-sync).

<InternalNote>
  Attendees stored in `session.attendees[]` with `responseStatus` (accepted/needsAction/tentative/declined). Waitlist in `session.waitingList` keyed by userId. Admin approval via `useTrainingTeamApprovalMutation`. Registration policy (`eventSessionRegistrationPolicy`: singleSession/multiSessions/allSessions) determines session auto-enrollment. Video conference provider in `videoConference.provider`.
</InternalNote>
