Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 31 additions & 1 deletion content/en/cloud/security/roles/academy-roles.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ tags: [academy, roles]

{{< cardpane >}}
{{% card header="Learner" %}}
Learner = A [User](../roles/user-role.md) who has registered for academy content.
<img src="/cloud/security/images/learner.svg" link="images/learner.svg" width="100%" alt="Learner Roles" />
{{% /card %}}
{{< /cardpane >}}
Expand Down Expand Up @@ -84,5 +85,34 @@ While the maximum number of instances is unlimited, the available seats for Lear

- Check [Permissions Reference](/cloud/reference/default-permissions/)

**Status as a Learner**

A learner in the academy system has two types of status that work together:

1. **[User](../roles/user-role.md) Account Status**
- **Active**: Can log in and access academy, register for new courses, continue existing courses
- **Inactive**: Account is disabled/deleted

2. **Academy Registration Status** - Progress in specific content

| Status | What it means |
|-------------|-------------|
| registered | They signed up but haven't started |
| completed | They finished the course |
| failed | They didn't pass |
| withdrawn | They left the course |

**What this means:**
1. Active User + Registered = Ready to start learning
2. Active User + Completed = Finished, show achievements
3. Active User + Failed/Withdrawn = May need re-enrollment
4. Inactive User + Any Status = No academy access (show login prompt)

**Reference:** See the complete [Academy Registration Status schema](https://github.com/meshery/schemas/blob/master/models/v1beta1/academy/academy.go#L16) for technical implementation details.

{{% /card %}}
{{< /cardpane >}}
{{< /cardpane >}}

{{< alert title="API Limitation" color="warning" >}}
The current API only returns registrations with "registered" status. We do not currently retrieve completed, failed, or withdrawn registrations through standard endpoints.
{{< /alert >}}