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

# Inviting and Enrolling Students in Your Puddin Course

> Add students to your Puddin course by sending email invitations, importing a CSV roster, or connecting your LMS for automatic enrolment.

Before students can access an assignment and begin writing, they need to be enrolled in your Puddin course. Puddin gives you three ways to bring students in: a direct email invitation, a bulk CSV import for larger cohorts, or an LMS integration that syncs your existing roster automatically. Choose the method that fits your institution's setup — or combine them if needed.

<Tabs>
  <Tab title="Manual Email Invite">
    Use manual invitations when you need to add individual students or a small group quickly.

    <Steps>
      <Step title="Open the Students panel">
        From your course dashboard, select **Students** in the left sidebar, then click **Invite Students**.
      </Step>

      <Step title="Enter student email addresses">
        Type or paste one or more student email addresses into the invite field, separating multiple addresses with a comma or a new line. Each address will receive a separate invitation email.
      </Step>

      <Step title="Set the student role">
        Confirm the role as **Student**. If you are adding a teaching assistant who needs access to submissions without full teacher permissions, select **Reviewer** instead.
      </Step>

      <Step title="Send the invitation">
        Click **Send Invitations**. Each student receives an email with a personalised link to create their Puddin account and join the course. The link expires after 7 days.

        <Tip>
          If a student does not receive the email, ask them to check their spam or junk folder. University email filters sometimes block invitation links from new senders.
        </Tip>
      </Step>
    </Steps>

    ### Resend an invitation

    From the **Students** panel, find the student whose status shows **Invited** (meaning they haven't yet accepted). Click the **⋯** menu next to their name and select **Resend Invitation**. A fresh link is generated and sent; the previous link is invalidated.

    <Note>
      You can resend an invitation as many times as needed. Each resend generates a new link and cancels the old one.
    </Note>
  </Tab>

  <Tab title="CSV Import">
    Use CSV import to enrol a full class roster in one step without sending individual invitations.

    <Steps>
      <Step title="Download the CSV template">
        In the **Students** panel, click **Import CSV**, then select **Download Template**. The template contains the required columns: `first_name`, `last_name`, `email`. Optional columns include `student_id` and `group`.
      </Step>

      <Step title="Populate the template">
        Fill in one row per student. Ensure email addresses match the accounts your students will use to log in — mismatched emails will result in separate accounts.

        <Warning>
          Do not add extra columns to the template. Puddin's importer reads fixed column positions; additional or reordered columns will cause the import to fail.
        </Warning>
      </Step>

      <Step title="Upload the CSV file">
        Return to **Import CSV** and drag your completed file into the upload area, or click **Choose File**. Puddin validates the file and shows a preview of the rows to be imported.
      </Step>

      <Step title="Review and confirm">
        Check the preview for any flagged rows (highlighted in amber). Common issues include duplicate email addresses or missing required fields. Correct errors in your file and re-upload, or skip flagged rows and add them manually later. Click **Confirm Import** to complete enrolment.
      </Step>
    </Steps>

    After a successful import, each student receives an invitation email with a link to activate their account. Their status in the **Students** panel shows **Invited** until they log in for the first time, at which point it changes to **Active**.
  </Tab>

  <Tab title="LMS Enrolment">
    Connect Puddin to your Learning Management System (LMS) to sync your course roster automatically. Supported platforms include Canvas, Moodle, Blackboard, and D2L Brightspace.

    <Note>
      LMS integration is configured at the institution level by your Puddin administrator. If you don't see an LMS option in your course settings, contact your administrator to enable the integration.
    </Note>

    <Steps>
      <Step title="Open course settings">
        Go to **Course Settings → Integrations** and locate your institution's connected LMS under **Available Integrations**.
      </Step>

      <Step title="Link your LMS course">
        Click **Connect** next to your LMS. A dialogue will prompt you to authenticate with your LMS credentials and select the specific course to sync. Select the matching course and confirm.
      </Step>

      <Step title="Sync the roster">
        Once the course is linked, click **Sync Now** to import the current enrolment list. Students who are enrolled in the LMS course are automatically added to Puddin with **Active** status — no invitation email is sent; students access Puddin using their existing LMS login (SSO).
      </Step>

      <Step title="Enable automatic sync (optional)">
        Toggle **Auto-sync** on to keep rosters updated. Any student added or removed from the LMS course will be reflected in Puddin within 24 hours, or immediately when you trigger a manual sync.
      </Step>
    </Steps>

    <Info>
      Students added via LMS integration access Puddin through your institution's SSO. They do not receive a Puddin-specific password or separate account — their LMS credentials are used.
    </Info>
  </Tab>
</Tabs>

## Managing enrolment status

The **Students** panel shows every enrolled student and their current status. Use this panel to monitor who has accepted their invitation, who is actively writing, and who has not yet joined.

| Status        | Meaning                                                                          |
| ------------- | -------------------------------------------------------------------------------- |
| **Invited**   | Invitation sent; student has not yet created or activated their account.         |
| **Active**    | Student has logged in and can access published assignments.                      |
| **Suspended** | Access temporarily paused. The student cannot open assignments until reinstated. |
| **Removed**   | Student has been removed from the course. Their submission data is retained.     |

To change a student's status, click the **⋯** menu next to their name in the Students panel and select the appropriate action.

<Warning>
  Removing a student from a course does not delete their submission records or writing process data. All evidence captured before removal is retained and remains accessible in the assignment's submission view.
</Warning>
