How a student gets access to a course, how to grant access manually, what the access period depends on, and how to extend, freeze and revoke access
Course access links a student to a course. In a school, access works through groups: a student can study while they are in at least one group of the course. So granting access manually means adding the student to a group. To learn about groups, see Groups and cohorts.
To grant access manually, you need the “School user management” permission (in a corporate school — “Company user management”) and one of the “Course management” or “Course curator” permissions — without them, you cannot choose a group.
To one student
To several students
When creating a user
1
Open the card
In People → All users, click the student. In the card, choose Actions → Grant access or click Grant access on the Learning tab.
2
Choose a course and a group
On the Granting access tab, choose a course in the Search by courses field, then a group of this course in the Search by groups field. Both fields are required.
3
Add more accesses (optional)
Click Add access to grant several courses at once. You can add up to 50 accesses. You cannot choose the same course twice.
4
Confirm
Click Grant access. If a course or group is not filled in, the button is inactive, and a hint shows which access has the error.
1
Open adding
In Courses → course → Students, click Add students. Or open a group and click Add students on the Students page.
2
Choose a course and a group
In step 1, choose a course and a group. If you opened adding from a group, this step is skipped.
3
Choose students
Find school users by name. You can choose up to 250 people at a time.
4
Add
Click Add participants. People who are already in the group are not duplicated.
In the Add user form, fill in the Access block: a course and a group. Learn more in Adding users.
If the student had no access to the course, it is created. If the access was turned off, it is turned on again — the student’s progress is kept.
The student is assigned a curator from the curators of this group. Curators are assigned in turn. If the student already had a curator, the curator of the new group replaces them. If the group has no curators, the previous curator stays.
If the group has a group chat or channel turned on, the student is added to them.
If Telegram is connected to the group and the student has Telegram linked, the school bot sends them invitation links.
If webhooks are set up in the school, the “Registration for the course via LMS” event is sent.
You cannot grant access from the card to a blocked or deleted user. A deleted user cannot get access at all, and a blocked one has to be unblocked first: Actions → Activate. You also can’t add a blocked user to a group manually — an error appears, so remove them from the selection. Automatic enrollment scenarios skip blocked users.
Access closes automatically when the period ends. The course lessons become unavailable with the “Access expired” status. The student stays in the group, and their progress, answers and grades are kept. If you extend the period, the student continues from the same place.
There is no field where you can change the end date manually. You can extend access like this:
For one student — add them to another group of this course without an access time limit. A student who is in at least one group without a limit studies with no end date.
For the whole group — increase the period in Limit access time to the course or turn off the limit. The change applies to all students of the group.
With a fixed-period tariff (commercial schools only) — the student buys the tariff again. The days are added to the current end date, or to the purchase date if the period has already ended.
For a tariff with a fixed number of days, groups do not affect the period: access ends on the date calculated from the tariff.
Student card → course → the toggle next to the Access until field
Access is turned off, the student stays in the group. The same toggle turns access back on
Removing from a group
Group → Students → the delete icon in the student’s row
The student leaves the group, its chats and Telegram. If they have no other groups in this course, access is turned off
Deleting a group
Group → Settings → Delete group
The same for all students of the group
Blocking the user
Student card → Actions → Block
The student cannot sign in to the school. Course accesses are kept
Freezing and removing from a group do not delete the student’s progress.
The freeze toggle is inactive if the student is not in any group of the course. For a course bundle, freezing also turns off access to all courses in the bundle.
Add them to a group of this course without an access time limit — then they will study with no end date. If you need a new specific period, create a separate group with the limit you need from a common date and add the student there. If access was granted by a tariff with a fixed number of days (in a commercial school), the only way to extend it is a repeat purchase.
Can I grant access without a group?
No. A group is required when you grant access manually: access is valid while the student is in at least one group of the course. Every course has at least one group — “Group 1” is created automatically with the course.
Access is granted, but the student does not see the lessons. Why?
Check the student card: whether access is frozen and whether the period has expired. Then check the group settings: lessons may open on a schedule, be turned off for the group on the Access to lessons page, or be closed by a missed deadline. The card shows the status of each lesson on the course progress tab.
What happens to progress if I revoke access?
Progress is kept. If you give access back — turn the freeze toggle back on or add the student to a group again — they continue from the same place.
A student is in two groups with different periods. Which period applies?
If at least one of the groups has no access time limit, the student studies with no end date. If all groups have a limit, the latest end date applies.
What date does the “Since joining the group” period count from?
From the date the student enrolled in the course — for example, from the payment or the first time access was granted. If you later add the student to another group of the same course, the countdown there also starts from that date, not from the day they were added.
Why is the freeze toggle inactive?
The student is not in any group of the course. Add them to a group — access turns on.
What happens if I remove a student from a group?
They leave the group chat, channel and Telegram chats. If they have no other groups in this course, course access is turned off. Progress is kept.
How do I move a student to another group without losing access?
First add them to the new group, then remove them from the old one. If you do it the other way around, access turns off for a while. When the student is added to the new group, they are assigned that group’s curator.
I granted access again, but it stayed frozen. Why?
The student is already in the selected group, so granting access to the same group again changes nothing. Turn access on with the toggle next to the Access until field in the student card.
Why can't I choose a group when granting access?
The group list is available to staff with the “Course management” or “Course curator” permission. Also, you need to choose a course first — the group field becomes active after that.
Updated: 2026-10-17 07:07 UTC
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Exode — Product documentation","colors":{"primary":"#0e32cf","light":"#3a9cfc","dark":"#0e32cf"},"logo":{"light":"https://mintcdn.com/exode-faq/RM155sfnW-prDXlV/logo/dark.svg?fit=max\u0026auto=format\u0026n=RM155sfnW-prDXlV\u0026q=85\u0026s=226b8c34c13ebf24544dd5b62ed2a413","dark":"https://mintcdn.com/exode-faq/nK1GoAso5impPdQT/logo/light.svg?fit=max\u0026auto=format\u0026n=nK1GoAso5impPdQT\u0026q=85\u0026s=e9f1d77186583292eb8e9ff7839322c2"},"favicon":"https://mintcdn.com/exode-faq/Qt_iwajwYtzMNgtj/favicon.ico?fit=max\u0026auto=format\u0026n=Qt_iwajwYtzMNgtj\u0026q=85\u0026s=ab877d4deb8ab432bb3f59ae7580f411","navbar":{"links":[{"icon":"phone","href":"tel:781139570","label":"78-113-95-70"},{"href":"https://docs.exode.biz/en/welcome","label":"API"}],"primary":{"type":"button","label":"Support","href":"https://t.me/exode_biz_support"}},"footer":{"socials":{"telegram":"https://t.me/exode_biz","instagram":"https://www.instagram.com/exode_uz"}},"styling":{"latex":false},"navigation":{"languages":[{"language":"en","navbar":{"links":[{"icon":"phone","href":"tel:781139570","label":"78-113-95-70"},{"href":"https://docs.exode.biz/en/welcome","label":"API"}],"primary":{"type":"button","label":"Support","href":"https://t.me/exode_biz_support"}},"href":"en/welcome"},{"language":"ru","navbar":{"links":[{"icon":"phone","href":"tel:781139570","label":"78-113-95-70"},{"href":"https://docs.exode.biz/ru/welcome","label":"API"}],"primary":{"type":"button","label":"Поддержка","href":"https://t.me/exode_biz_support"}},"href":"ru/welcome"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"exode-faq","hasAudioNarration":false,"actualSubdomain":"exode-faq","customDomains":["faq.exode.biz"],"gitSource":{"type":"github","owner":"aslanorlov","repo":"exode-faq","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"collectionId":"f8ffc1b8-5299-4bc5-b826-b92fb598100f","liveDeploymentHistoryId":"6ad325650d7b01a838871775","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ad325650d7b01a838871775"},"entitlements":{},"buildId":"6ad325650d7b01a838871775","clientVersion":"0.0.4021","searchFilterCounts":[{"language":"en","tag":"General","count":54},{"language":"ru","tag":"Общее","count":54},{"language":"en","tag":"Corporate training and HR","count":14},{"language":"ru","tag":"Корпобучение и HR","count":14},{"language":"en","tag":"Online schools","count":12},{"language":"ru","tag":"Онлайн-школы","count":12},{"language":"en","tag":"Getting started","count":7},{"language":"en","tag":"Courses","count":7},{"language":"en","tag":"School setup","count":7},{"language":"ru","tag":"Начало работы","count":7},{"language":"ru","tag":"Курсы","count":7},{"language":"ru","tag":"Настройка школы","count":7},{"language":"en","tag":"Sales and payments","count":6},{"language":"ru","tag":"Продажи и платежи","count":6},{"language":"en","tag":"Communication and content","count":5},{"language":"en","tag":"Lessons and modules","count":5},{"language":"en","tag":"School customization","count":5},{"language":"ru","tag":"Общение и контент","count":5},{"language":"ru","tag":"Уроки и модули","count":5},{"language":"ru","tag":"Кастомизация школы","count":5}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"en/general/users/adding-to-course","slug":"/en/general/users/adding-to-course","pageMetadata":{"title":"Course access","description":"How a student gets access to a course, how to grant access manually, what the access period depends on, and how to extend, freeze and revoke access","href":"/en/general/users/adding-to-course"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"How a student gets access to a course, how to grant access manually, what the access period depends on, and how to extend, freeze and revoke access\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,em:`em`,hr:`hr`,li:`li`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Accordion,AccordionGroup,Heading,Note,Step,Steps,Tab,Table,Tabs,Tip,Warning}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!AccordionGroup)_missingMdxReference(`AccordionGroup`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);if(!Tab)_missingMdxReference(`Tab`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tabs)_missingMdxReference(`Tabs`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Course access links a student to a course. In a school, access works through groups: a student can study while they are in at least one group of the course. So granting access manually means adding the student to a group. To learn about groups, see `,_jsx(_components.a,{href:`/en/general/groups/creating-groups`,children:`Groups and cohorts`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`how-a-student-gets-access`,children:`How a student gets access`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Method`}),_jsx(_components.th,{children:`What happens`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Paying for a tariff`}),` (commercial schools only)`]}),_jsx(_components.td,{children:`The student joins the group set in the tariff’s “Group to add a student to after payment” field`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Enrolling in a free course`})}),_jsx(_components.td,{children:`The student joins the most recently created group of the course`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Granted by staff`})}),_jsx(_components.td,{children:`The student joins the group the staff member chose`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Course bundle`})}),_jsx(_components.td,{children:`Access to the bundle grants access to the courses in it`})]})]})]}),`\n`,_jsxs(_components.p,{children:[`To learn about tariffs and payment, see `,_jsx(_components.a,{href:`/en/online-schools/sales-payments/launches-and-pricing`,children:`Launch and tariffs`}),` (commercial schools only). To learn about bundles, see `,_jsx(_components.a,{href:`/en/general/courses/course-packages`,children:`Course bundles`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`In a corporate school, courses are not sold: enrollment methods are set on the course’s `,_jsx(_components.strong,{children:`Access \u0026 assignments`}),` page — see `,_jsx(_components.a,{href:`/en/corporate/courses`,children:`Courses in a company`}),` and `,_jsx(_components.a,{href:`/en/corporate/auto-assignment`,children:`Automatic course assignment`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`grant-access-manually`,children:`Grant access manually`}),`\n`,_jsx(_components.p,{children:`To grant access manually, you need the “School user management” permission (in a corporate school — “Company user management”) and one of the “Course management” or “Course curator” permissions — without them, you cannot choose a group.`}),`\n`,_jsxs(Tabs,{children:[_jsx(Tab,{title:`To one student`,id:`to-one-student`,children:_jsxs(Steps,{children:[_jsx(Step,{title:`Open the card`,children:_jsxs(_components.p,{children:[`In `,_jsx(_components.strong,{children:`People → All users`}),`, click the student. In the card, choose `,_jsx(_components.strong,{children:`Actions → Grant access`}),` or click `,_jsx(_components.strong,{children:`Grant access`}),` on the `,_jsx(_components.strong,{children:`Learning`}),` tab.`]})}),_jsx(Step,{title:`Choose a course and a group`,children:_jsxs(_components.p,{children:[`On the `,_jsx(_components.strong,{children:`Granting access`}),` tab, choose a course in the `,_jsx(_components.strong,{children:`Search by courses`}),` field, then a group of this course in the `,_jsx(_components.strong,{children:`Search by groups`}),` field. Both fields are required.`]})}),_jsx(Step,{title:`Add more accesses (optional)`,children:_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Add access`}),` to grant several courses at once. You can add up to 50 accesses. You cannot choose the same course twice.`]})}),_jsx(Step,{title:`Confirm`,children:_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Grant access`}),`. If a course or group is not filled in, the button is inactive, and a hint shows which access has the error.`]})})]})}),_jsx(Tab,{title:`To several students`,id:`to-several-students`,children:_jsxs(Steps,{children:[_jsx(Step,{title:`Open adding`,children:_jsxs(_components.p,{children:[`In `,_jsx(_components.strong,{children:`Courses → course → Students`}),`, click `,_jsx(_components.strong,{children:`Add students`}),`. Or open a group and click `,_jsx(_components.strong,{children:`Add students`}),` on the `,_jsx(_components.strong,{children:`Students`}),` page.`]})}),_jsx(Step,{title:`Choose a course and a group`,children:_jsx(_components.p,{children:`In step 1, choose a course and a group. If you opened adding from a group, this step is skipped.`})}),_jsx(Step,{title:`Choose students`,children:_jsx(_components.p,{children:`Find school users by name. You can choose up to 250 people at a time.`})}),_jsx(Step,{title:`Add`,children:_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Add participants`}),`. People who are already in the group are not duplicated.`]})})]})}),_jsx(Tab,{title:`When creating a user`,id:`when-creating-a-user`,children:_jsxs(_components.p,{children:[`In the `,_jsx(_components.strong,{children:`Add user`}),` form, fill in the `,_jsx(_components.strong,{children:`Access`}),` block: a course and a group. Learn more in `,_jsx(_components.a,{href:`/en/general/users/adding-users`,children:`Adding users`}),`.`]})})]}),`\n`,_jsx(Heading,{level:`2`,id:`what-happens-when-you-grant-access`,children:`What happens when you grant access`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`If the student had no access to the course, it is created. If the access was turned off, it is turned on again — the student’s progress is kept.`}),`\n`,_jsx(_components.li,{children:`The student is assigned a curator from the curators of this group. Curators are assigned in turn. If the student already had a curator, the curator of the new group replaces them. If the group has no curators, the previous curator stays.`}),`\n`,_jsx(_components.li,{children:`If the group has a group chat or channel turned on, the student is added to them.`}),`\n`,_jsx(_components.li,{children:`If Telegram is connected to the group and the student has Telegram linked, the school bot sends them invitation links.`}),`\n`,_jsxs(_components.li,{children:[`If `,_jsx(_components.a,{href:`/en/general/developers/webhooks`,children:`webhooks`}),` are set up in the school, the “Registration for the course via LMS” event is sent.`]}),`\n`]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`You cannot grant access from the card to a blocked or deleted user. A deleted user cannot get access at all, and a blocked one has to be unblocked first: `,_jsx(_components.strong,{children:`Actions → Activate`}),`. You also can’t add a blocked user to a group manually — an error appears, so remove them from the selection. Automatic enrollment scenarios skip blocked users.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`access-period`,children:`Access period`}),`\n`,_jsx(_components.p,{children:`The access period depends on the group and the tariff:`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Situation`}),_jsx(_components.th,{children:`How long access lasts`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[`The group has `,_jsx(_components.strong,{children:`Limit access time to the course`}),` turned on`]}),_jsx(_components.td,{children:`The course closes after the set time from the student’s enrollment in the course or from a common date — as set in the group`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`The student is in several groups of the course`}),_jsx(_components.td,{children:`If at least one group has no limit, access is unlimited. If all groups have a limit, the latest date applies`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`A tariff with a fixed number of access days (commercial schools only)`}),_jsx(_components.td,{children:`Access lasts the set number of days from the purchase. A repeat purchase adds days to the current end date`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`None of these conditions is set`}),_jsx(_components.td,{children:`Unlimited access`})]})]})]}),`\n`,_jsxs(_components.p,{children:[`To learn how to set up a limit in a group, see `,_jsx(_components.a,{href:`/en/general/groups/group-settings`,children:`Group settings`}),`.`]}),`\n`,_jsx(_components.p,{children:`The student’s course card shows the access state:`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`What you see`}),_jsx(_components.th,{children:`What it means`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Access without restrictions`})}),_jsx(_components.td,{children:`No end date is set`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`A countdown to a date`}),_jsx(_components.td,{children:`Access is valid until the shown date`})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Access expired`}),` and a date`]}),_jsx(_components.td,{children:`The period has ended`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`No access to the course`})}),_jsx(_components.td,{children:`Access is turned off: frozen manually or the student was removed from all groups of the course`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`when-the-period-ends`,children:`When the period ends`}),`\n`,_jsx(_components.p,{children:`Access closes automatically when the period ends. The course lessons become unavailable with the “Access expired” status. The student stays in the group, and their progress, answers and grades are kept. If you extend the period, the student continues from the same place.`}),`\n`,_jsx(Heading,{level:`2`,id:`extend-access`,children:`Extend access`}),`\n`,_jsx(_components.p,{children:`There is no field where you can change the end date manually. You can extend access like this:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`For one student`}),` — add them to another group of this course without an access time limit. A student who is in at least one group without a limit studies with no end date.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`For the whole group`}),` — increase the period in `,_jsx(_components.strong,{children:`Limit access time to the course`}),` or turn off the limit. The change applies to all students of the group.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`With a fixed-period tariff`}),` (commercial schools only) — the student buys the tariff again. The days are added to the current end date, or to the purchase date if the period has already ended.`]}),`\n`]}),`\n`,_jsx(Note,{children:_jsx(_components.p,{children:`For a tariff with a fixed number of days, groups do not affect the period: access ends on the date calculated from the tariff.`})}),`\n`,_jsx(Heading,{level:`2`,id:`freeze-or-revoke-access`,children:`Freeze or revoke access`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Method`}),_jsx(_components.th,{children:`Where`}),_jsx(_components.th,{children:`What happens`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Freezing`})}),_jsxs(_components.td,{children:[`Student card → course → the toggle next to the `,_jsx(_components.strong,{children:`Access until`}),` field`]}),_jsx(_components.td,{children:`Access is turned off, the student stays in the group. The same toggle turns access back on`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Removing from a group`})}),_jsxs(_components.td,{children:[`Group → `,_jsx(_components.strong,{children:`Students`}),` → the delete icon in the student’s row`]}),_jsx(_components.td,{children:`The student leaves the group, its chats and Telegram. If they have no other groups in this course, access is turned off`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Deleting a group`})}),_jsxs(_components.td,{children:[`Group → `,_jsx(_components.strong,{children:`Settings`}),` → `,_jsx(_components.strong,{children:`Delete group`})]}),_jsx(_components.td,{children:`The same for all students of the group`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Blocking the user`})}),_jsxs(_components.td,{children:[`Student card → `,_jsx(_components.strong,{children:`Actions → Block`})]}),_jsx(_components.td,{children:`The student cannot sign in to the school. Course accesses are kept`})]})]})]}),`\n`,_jsx(_components.p,{children:`Freezing and removing from a group do not delete the student’s progress.`}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:`The freeze toggle is inactive if the student is not in any group of the course. For a course bundle, freezing also turns off access to all courses in the bundle.`})}),`\n`,_jsx(Heading,{level:`2`,id:`frequently-asked-questions`,children:`Frequently asked questions`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`How do I extend access for one student?`,id:`how-do-i-extend-access-for-one-student`,children:_jsx(_components.p,{children:`Add them to a group of this course without an access time limit — then they will study with no end date. If you need a new specific period, create a separate group with the limit you need from a common date and add the student there. If access was granted by a tariff with a fixed number of days (in a commercial school), the only way to extend it is a repeat purchase.`})}),_jsx(Accordion,{title:`Can I grant access without a group?`,id:`can-i-grant-access-without-a-group`,children:_jsx(_components.p,{children:`No. A group is required when you grant access manually: access is valid while the student is in at least one group of the course. Every course has at least one group — “Group 1” is created automatically with the course.`})}),_jsx(Accordion,{title:`Access is granted, but the student does not see the lessons. Why?`,id:`access-is-granted-but-the-student-does-not-see-the-lessons-why`,children:_jsxs(_components.p,{children:[`Check the student card: whether access is frozen and whether the period has expired. Then check the group settings: lessons may open on a schedule, be turned off for the group on the `,_jsx(_components.strong,{children:`Access to lessons`}),` page, or be closed by a missed deadline. The card shows the status of each lesson on the course progress tab.`]})}),_jsx(Accordion,{title:`What happens to progress if I revoke access?`,id:`what-happens-to-progress-if-i-revoke-access`,children:_jsx(_components.p,{children:`Progress is kept. If you give access back — turn the freeze toggle back on or add the student to a group again — they continue from the same place.`})}),_jsx(Accordion,{title:`A student is in two groups with different periods. Which period applies?`,id:`a-student-is-in-two-groups-with-different-periods-which-period-applies`,children:_jsx(_components.p,{children:`If at least one of the groups has no access time limit, the student studies with no end date. If all groups have a limit, the latest end date applies.`})}),_jsx(Accordion,{title:`What date does the “Since joining the group” period count from?`,id:`what-date-does-the-since-joining-the-group-period-count-from`,children:_jsx(_components.p,{children:`From the date the student enrolled in the course — for example, from the payment or the first time access was granted. If you later add the student to another group of the same course, the countdown there also starts from that date, not from the day they were added.`})}),_jsx(Accordion,{title:`Why is the freeze toggle inactive?`,id:`why-is-the-freeze-toggle-inactive`,children:_jsx(_components.p,{children:`The student is not in any group of the course. Add them to a group — access turns on.`})}),_jsx(Accordion,{title:`What happens if I remove a student from a group?`,id:`what-happens-if-i-remove-a-student-from-a-group`,children:_jsx(_components.p,{children:`They leave the group chat, channel and Telegram chats. If they have no other groups in this course, course access is turned off. Progress is kept.`})}),_jsx(Accordion,{title:`How do I move a student to another group without losing access?`,id:`how-do-i-move-a-student-to-another-group-without-losing-access`,children:_jsx(_components.p,{children:`First add them to the new group, then remove them from the old one. If you do it the other way around, access turns off for a while. When the student is added to the new group, they are assigned that group’s curator.`})}),_jsx(Accordion,{title:`I granted access again, but it stayed frozen. Why?`,id:`i-granted-access-again-but-it-stayed-frozen-why`,children:_jsxs(_components.p,{children:[`The student is already in the selected group, so granting access to the same group again changes nothing. Turn access on with the toggle next to the `,_jsx(_components.strong,{children:`Access until`}),` field in the student card.`]})}),_jsx(Accordion,{title:`Why can't I choose a group when granting access?`,id:`why-cant-i-choose-a-group-when-granting-access`,children:_jsx(_components.p,{children:`The group list is available to staff with the “Course management” or “Course curator” permission. Also, you need to choose a course first — the group field becomes active after that.`})})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(_components.p,{children:_jsx(_components.em,{children:`Updated: 2026-10-17 07:07 UTC`})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Course access","description":"How a student gets access to a course, how to grant access manually, what the access period depends on, and how to extend, freeze and revoke access","href":"/en/general/users/adding-to-course"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"How a student gets access","slug":"how-a-student-gets-access","depth":2,"children":[]},{"title":"Grant access manually","slug":"grant-access-manually","depth":2,"children":[]},{"title":"What happens when you grant access","slug":"what-happens-when-you-grant-access","depth":2,"children":[]},{"title":"Access period","slug":"access-period","depth":2,"children":[]},{"title":"When the period ends","slug":"when-the-period-ends","depth":2,"children":[]},{"title":"Extend access","slug":"extend-access","depth":2,"children":[]},{"title":"Freeze or revoke access","slug":"freeze-or-revoke-access","depth":2,"children":[]},{"title":"Frequently asked questions","slug":"frequently-asked-questions","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/exode-faq/0f03cceb9db709c8/lang-detect.js"],"subdomain":"exode-faq","siteName":"Exode — Product documentation","title":"Course access - Exode — Product documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/en/general/users/adding-to-course","matchLevel":0},"ru":{"href":"/ru/general/users/adding-to-course","matchLevel":1}}},"lastModified":"2026-10-17T07:36:12.779Z","originalFileLocation":"en/general/users/adding-to-course.mdx","locale":"en"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"How a student gets access to a course, how to grant access manually, what the access period depends on, and how to extend, freeze and revoke access\">\u003cmeta data-mint-head name=\"application-name\" content=\"Exode — Product documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/exode-faq/Wp7VM_dlt_4QlPSi/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/exode-faq/Wp7VM_dlt_4QlPSi/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/exode-faq/Wp7VM_dlt_4QlPSi/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/exode-faq/Wp7VM_dlt_4QlPSi/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/exode-faq/Wp7VM_dlt_4QlPSi/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/exode-faq/Wp7VM_dlt_4QlPSi/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/exode-faq/Wp7VM_dlt_4QlPSi/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/exode-faq/Wp7VM_dlt_4QlPSi/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/exode-faq/Wp7VM_dlt_4QlPSi/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Course access - Exode — Product documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"How a student gets access to a course, how to grant access manually, what the access period depends on, and how to extend, freeze and revoke access\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Exode — Product documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://faq.exode.biz/en/general/users/adding-to-course\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://exode-faq.mintlify.app/_mintlify/api/og/v2?division=People\u0026amp;title=Course+access\u0026amp;description=How+a+student+gets+access+to+a+course%2C+how+to+grant+access+manually%2C+what+the+access+period+depends+on%2C+and+how+to+extend%2C+freeze+and+revoke+access\u0026amp;theme=4b81d533b2a2f5ec2be885ba\u0026amp;signature=cee601fe975145a843df79884e06303bb4e896b0cd155b969564d35af2d2c828\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Course access - Exode — Product documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"How a student gets access to a course, how to grant access manually, what the access period depends on, and how to extend, freeze and revoke access\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://exode-faq.mintlify.app/_mintlify/api/og/v2?division=People\u0026amp;title=Course+access\u0026amp;description=How+a+student+gets+access+to+a+course%2C+how+to+grant+access+manually%2C+what+the+access+period+depends+on%2C+and+how+to+extend%2C+freeze+and+revoke+access\u0026amp;theme=4b81d533b2a2f5ec2be885ba\u0026amp;signature=cee601fe975145a843df79884e06303bb4e896b0cd155b969564d35af2d2c828\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/exode-faq/Wp7VM_dlt_4QlPSi/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Exode — Product documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0e32cf\">\u003clink data-mint-head rel=\"canonical\" href=\"https://faq.exode.biz/en/general/users/adding-to-course\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/en/general/users/adding-to-course.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://faq.exode.biz/en/general/users/adding-to-course\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ru\" href=\"https://faq.exode.biz/ru/general/users/adding-to-course\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://faq.exode.biz/en/general/users/adding-to-course\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://faq.exode.biz/#organization\",\"name\":\"Exode — Product documentation\",\"url\":\"https://faq.exode.biz\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/exode-faq/RM155sfnW-prDXlV/logo/dark.svg?fit=max\u0026auto=format\u0026n=RM155sfnW-prDXlV\u0026q=85\u0026s=226b8c34c13ebf24544dd5b62ed2a413\"}},{\"@type\":\"WebSite\",\"@id\":\"https://faq.exode.biz#website\",\"name\":\"Exode — Product documentation\",\"url\":\"https://faq.exode.biz\",\"publisher\":{\"@id\":\"https://faq.exode.biz/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://faq.exode.biz/en/general/users/adding-to-course#webpage\",\"url\":\"https://faq.exode.biz/en/general/users/adding-to-course\",\"name\":\"Course access\",\"description\":\"How a student gets access to a course, how to grant access manually, what the access period depends on, and how to extend, freeze and revoke access\",\"dateModified\":\"2026-10-17T07:36:12.779Z\",\"isPartOf\":{\"@id\":\"https://faq.exode.biz#website\"},\"breadcrumb\":{\"@id\":\"https://faq.exode.biz/en/general/users/adding-to-course#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://faq.exode.biz/en/general/users/adding-to-course#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"People\",\"item\":\"https://faq.exode.biz/en/general/users/adding-users\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Course access\",\"item\":\"https://faq.exode.biz/en/general/users/adding-to-course\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://faq.exode.biz/en/general/users/adding-to-course#article\",\"headline\":\"Course access\",\"name\":\"Course access\",\"description\":\"How a student gets access to a course, how to grant access manually, what the access period depends on, and how to extend, freeze and revoke access\",\"url\":\"https://faq.exode.biz/en/general/users/adding-to-course\",\"mainEntityOfPage\":{\"@id\":\"https://faq.exode.biz/en/general/users/adding-to-course#webpage\"},\"dateModified\":\"2026-10-17T07:36:12.779Z\",\"publisher\":{\"@id\":\"https://faq.exode.biz/#organization\"},\"isPartOf\":{\"@id\":\"https://faq.exode.biz#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Exode — Product documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Exode — Product documentation","nav":{"global":null,"languages":[{"language":"en","navbar":{"links":[{"icon":"phone","href":"tel:781139570","label":"78-113-95-70"},{"href":"https://docs.exode.biz/en/welcome","label":"API"}],"primary":{"type":"button","label":"Support","href":"https://t.me/exode_biz_support"}},"tabs":[{"tab":"General","groups":[{"group":"Getting started","pages":[{"title":"Introduction","href":"/en/welcome"},{"title":"Platform overview","href":"/en/general/getting-started/overview"}]},{"group":"Creating a school","pages":[{"title":"Registration and school creation","href":"/en/general/school-creation/registration"},{"title":"School type: course sales or corporate training","href":"/en/general/school-creation/school-type"},{"title":"School address and domain","href":"/en/general/school-creation/domain"}]},{"group":"School setup","pages":[{"group":"School customization","root":{"title":"School customization","href":"/en/general/school-setup/customization"},"pages":[{"title":"Logo and icon","href":"/en/general/school-setup/logo-and-icon"},{"title":"Themes","href":"/en/general/school-setup/themes"},{"title":"Course catalog","href":"/en/general/school-setup/course-catalog"},{"title":"Left site menu","href":"/en/general/school-setup/left-menu"},{"title":"Website footer","href":"/en/general/school-setup/footer"}]},{"title":"Available languages","href":"/en/general/school-setup/languages"},{"title":"Login and registration","href":"/en/general/school-setup/registration-settings"}]},{"group":"Roles and permissions","pages":[{"title":"Roles in the school","href":"/en/general/roles-permissions/user-roles"},{"title":"Access rights","href":"/en/general/roles-permissions/access-rights"}]},{"group":"Courses","pages":[{"title":"Course settings","href":"/en/general/courses/settings"},{"title":"Course types","href":"/en/general/courses/course-types"},{"title":"Creating courses","href":"/en/general/courses/creating-courses"},{"title":"Course bundles","href":"/en/general/courses/course-packages"},{"title":"Content protection","href":"/en/general/courses/content-protection"},{"title":"SEO optimization","href":"/en/general/courses/seo"},{"title":"Reviews","href":"/en/general/courses/reviews"}]},{"group":"Lessons and modules","pages":[{"title":"Creating lessons and modules","href":"/en/general/lessons-modules/creating"},{"title":"Lesson content","href":"/en/general/lessons-modules/content"},{"group":"Practice","root":{"title":"Practice","href":"/en/general/lessons-modules/practice"},"pages":[{"title":"Lesson and practice settings","href":"/en/general/lessons-modules/settings"},{"title":"Task types","href":"/en/general/lessons-modules/task-types"},{"title":"Practice check","href":"/en/general/lessons-modules/checking-practice"}]}]},{"group":"Task database","pages":[{"title":"Creating tasks","href":"/en/general/task-bank/creating-tasks"},{"title":"Using tasks","href":"/en/general/task-bank/using-tasks"}]},{"group":"Rewards and gamification","pages":[{"group":"Certificates","root":{"title":"Certificates","href":"/en/general/gamification/certificates"},"pages":[{"title":"Setting up certificates","href":"/en/general/gamification/creating-certificates"},{"title":"Editing the certificate","href":"/en/general/gamification/editing-certificates"},{"title":"Where the student sees the certificate","href":"/en/general/gamification/certificate-display"}]},{"title":"Gamification: stars and rating","href":"/en/general/gamification/gamification"}]},{"group":"People","pages":[{"title":"Adding users","description":"How people get into the school: self-registration, buying a course, creation by staff and adding a list. What a new user gets and what the limits are","href":"/en/general/users/adding-users"},{"title":"Course access","href":"/en/general/users/adding-to-course"},{"title":"User card","description":"What the student card shows and what you can do in it: courses and progress, profile, sessions, payments, password, blocking and deletion","href":"/en/general/users/user-card"},{"title":"Video watch filter","href":"/en/general/users/video-watch-filter"}]},{"group":"Groups","pages":[{"title":"Groups and cohorts","href":"/en/general/groups/creating-groups"},{"title":"Group settings","href":"/en/general/groups/group-settings"}]},{"group":"Communication and content","pages":[{"title":"Messenger","href":"/en/general/communication/messenger"},{"title":"Notifications","href":"/en/general/communication/notifications"},{"title":"Knowledge base and AI assistant","href":"/en/general/communication/knowledge-base"},{"title":"Stories","href":"/en/general/communication/stories"},{"title":"School Telegram bot","href":"/en/general/communication/telegram-bot"}]},{"group":"Analytics","pages":[{"title":"Home analytics","href":"/en/general/analytics/main-analytics"},{"title":"How metrics are calculated","href":"/en/general/analytics/detailed-analytics"},{"title":"Tables and exports","href":"/en/general/analytics/dashboards"},{"title":"Student progress","href":"/en/general/analytics/personal-analytics"}]},{"group":"Mobile app","pages":[{"title":"Mobile app","href":"/en/general/mobile-app/mobile-app"}]},{"group":"Reference","pages":[{"title":"Glossary","href":"/en/general/reference/glossary"},{"title":"What's available on the platform","href":"/en/general/reference/feature-status"}]},{"group":"For developers","pages":[{"title":"Technical documentation","href":"/en/general/developers/technical-overview"},{"title":"Webhooks","href":"/en/general/developers/webhooks"},{"title":"Custom code","href":"/en/general/developers/custom-code"},{"title":"API","href":"/en/general/developers/api"}]}]},{"tab":"Online schools","pages":[{"title":"Online schools","href":"/en/online-schools/getting-started/user-scenarios"}]},{"tab":"Corporate training and HR","pages":[{"title":"Corporate training and HR","href":"/en/corporate/overview"}]}]},{"language":"ru","navbar":{"links":[{"icon":"phone","href":"tel:781139570","label":"78-113-95-70"},{"href":"https://docs.exode.biz/ru/welcome","label":"API"}],"primary":{"type":"button","label":"Поддержка","href":"https://t.me/exode_biz_support"}},"pages":[{"title":"ru","href":"/ru/general/users/adding-to-course"}]}]},"title":"Course access - Exode — Product documentation","buildId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","deploymentId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","dynamics":[],"chunks":[]}