Course Slug Auto-Generation & Uniqueness Enforcement
Course Slug Auto-Generation & Uniqueness Enforcement
Available from: v1.0.67
Every course on the platform is identified by a human-readable, URL-safe slug — the short identifier that appears in course URLs. Starting in v1.0.67, slugs are generated automatically and kept unique within your organization without any manual effort.
How Slug Generation Works
When a new course is created, the platform:
- Takes the course title as the source string.
- Converts it to lowercase.
- Replaces spaces and special characters with hyphens (
-). - Strips any characters that are not alphanumeric or hyphens.
Example:
| Course Title | Generated Slug |
|---|---|
Introduction to Python | introduction-to-python |
AI & Machine Learning 101 | ai-machine-learning-101 |
Web Design: Basics | web-design-basics |
Uniqueness Enforcement
Slugs are unique within an organization. The same slug can exist in two different organizations without conflict, but no two courses within the same organization may share a slug.
Automatic Conflict Resolution
If a generated slug already exists in the organization, the platform appends an incrementing numeric suffix automatically:
introduction-to-python ← first course
introduction-to-python-2 ← second course with same title
introduction-to-python-3 ← third course with same title
This happens transparently — instructors do not need to take any action.
Custom Slug Overrides
Instructors can override the auto-generated slug by specifying a custom value when creating or editing a course.
Rules for custom slugs
- Must be URL-safe: lowercase letters, numbers, and hyphens only.
- Must be unique within the organization. If the provided slug is already in use, the platform will reject the request with a conflict error.
- Cannot be empty.
When to use a custom slug
- You want a shorter or more memorable URL.
- You are migrating content from an external platform and need to preserve existing URLs.
- The auto-generated slug does not accurately reflect the course content.
Course URLs
Once a slug is set, it is used in all course-related URLs within your organization's tenant, for example:
https://<your-org>.example.com/courses/<slug>
Note: Changing a course slug after publication will break any previously shared links. Redirect existing URLs manually if you change a slug on a live course.
Summary
| Behaviour | Detail |
|---|---|
| Auto-generated from | Course title |
| Scope of uniqueness | Per organization |
| Conflict handling | Numeric suffix appended automatically |
| Custom override | Supported; uniqueness still enforced |
| Available from | v1.0.67 |