microCourse Example
This example demonstrates creating bite-sized, mobile-friendly microlearning experiences using the microCourse kind.
What is a microCourse?
microCourses are short, focused learning experiences with a flat structure of topics. Unlike courseGroup which uses sections → lessons → topics, microCourses have topics at the top level, making them perfect for quick learning.
Basic microCourse Example
Create a simple microCourse with text topics:
curl -X POST "https://{your-instance-url}/incoming/v2/content/course/create" \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_API_TOKEN' \
-d '{
"courseAttributes": [
{
"title": "5 Quick Sales Tips",
"kind": "microCourse",
"availableToPublic": true,
"topics": [
{
"title": "Listen First",
"type": "text",
"body": "<p>Before pitching, spend time understanding your customer'\''s needs and pain points.</p>"
},
{
"title": "Ask Questions",
"type": "text",
"body": "<p>Open-ended questions help you discover what really matters to your prospect.</p>"
},
{
"title": "Follow Up",
"type": "text",
"body": "<p>Consistent follow-up shows professionalism and keeps you top of mind.</p>"
}
]
}
]
}'
Response Example
["micro_mno345"]
microCourse with Mixed Topic Types
Use different types of content:
{
"courseAttributes": [
{
"title": "Daily Product Knowledge",
"kind": "microCourse",
"availableToPublic": false,
"topics": [
{
"title": "Welcome",
"type": "text",
"body": "<h2>Today's Topic</h2><p>Learn about our automation features that save customers 10+ hours per week.</p>"
},
{
"title": "Key Benefits",
"type": "text",
"body": "<ul><li>Save time</li><li>Reduce errors</li><li>Scale effortlessly</li></ul>",
"preTextBlock": "<p><strong>Remember:</strong> These are the key selling points.</p>"
},
{
"title": "Knowledge Check",
"type": "quiz",
"body": "<p>Test your understanding of today's topic.</p>"
}
]
}
]
}
Note: Quiz questions must be configured through the admin UI after creation.
microCourse with SCORM Topic
Include interactive SCORM content:
{
"courseAttributes": [
{
"title": "Quick Compliance Check",
"kind": "microCourse",
"availableToPublic": false,
"topics": [
{
"title": "Introduction",
"type": "text",
"body": "<p>Welcome to this quick compliance review.</p>"
},
{
"title": "Interactive Module",
"type": "shareableContentObject",
"scormUrl": "https://cdn.example.com/scorm/compliance-quick.zip",
"width": 800,
"height": 600,
"embeddedEnabled": true
},
{
"title": "Summary",
"type": "text",
"body": "<p>You've completed the compliance review!</p>",
"postTextBlock": "<p>Remember to apply these principles in your daily work.</p>"
}
]
}
]
}
microCourse with Multiple SCORM Topics
Create a microCourse with multiple interactive SCORM modules:
{
"courseAttributes": [
{
"title": "Safety Training Series",
"kind": "microCourse",
"availableToPublic": false,
"sku": "SAFETY-101",
"topics": [
{
"title": "Module 1: Workplace Hazards",
"type": "shareableContentObject",
"scormUrl": "https://cdn.example.com/scorm/safety-hazards.zip",
"width": 1024,
"height": 768,
"embeddedEnabled": true,
"body": "<p>Learn to identify common workplace hazards.</p>",
"preTextBlock": "<p><strong>Duration:</strong> 5 minutes</p>"
},
{
"title": "Module 2: Personal Protective Equipment",
"type": "shareableContentObject",
"scormUrl": "https://cdn.example.com/scorm/safety-ppe.zip",
"width": 1024,
"height": 768,
"embeddedEnabled": true,
"body": "<p>Understanding when and how to use PPE.</p>",
"preTextBlock": "<p><strong>Duration:</strong> 4 minutes</p>"
},
{
"title": "Module 3: Emergency Procedures",
"type": "shareableContentObject",
"scormUrl": "https://cdn.example.com/scorm/safety-emergency.zip",
"width": 1024,
"height": 768,
"embeddedEnabled": true,
"body": "<p>Know what to do in case of an emergency.</p>",
"preTextBlock": "<p><strong>Duration:</strong> 3 minutes</p>"
},
{
"title": "Completion",
"type": "text",
"body": "<h2>Great Job!</h2><p>You've completed all three safety modules.</p>",
"postTextBlock": "<p><strong>Next Step:</strong> Download your completion certificate from your profile.</p>"
}
]
}
]
}
Best Practices for Multiple SCORM Topics:
- Keep each module focused on a single concept
- Use consistent dimensions across all SCORM topics
- Include text topics between SCORM modules for context
- Add
preTextBlockto set expectations for duration - Use descriptive titles that indicate progression (Module 1, 2, 3)
microCourse with Article Topics
Use article-style topics for multilingual content:
{
"courseAttributes": [
{
"title": "Global Product Update",
"kind": "microCourse",
"availableToPublic": true,
"topics": [
{
"title": "Product Updates",
"type": "article",
"languages": [
{
"language": "en",
"label": "English",
"title": "New Features",
"body": "<p>We've launched 3 new features this month...</p>"
},
{
"language": "es",
"label": "Español",
"title": "Nuevas Funciones",
"body": "<p>Hemos lanzado 3 nuevas funciones este mes...</p>"
}
]
}
]
}
]
}
microCourse with PDF Content
Include PDF documents:
{
"courseAttributes": [
{
"title": "Quick Reference Guide",
"kind": "microCourse",
"availableToPublic": true,
"topics": [
{
"title": "Getting Started",
"type": "text",
"body": "<p>Download and review the quick reference guide below.</p>"
},
{
"title": "Reference Guide",
"type": "pdfViewer",
"pdfUrl": "https://cdn.example.com/reference-guide.pdf",
"caption": "API Quick Reference",
"searchDisabled": false,
"printDisabled": false,
"fileDownloadDisabled": false
}
]
}
]
}
Note: PDF files are uploaded separately and associated with the topic.
microCourse with Pre/Post Text
Add context before and after topics:
{
"courseAttributes": [
{
"title": "Leadership Principles",
"kind": "microCourse",
"availableToPublic": false,
"topics": [
{
"title": "Lead by Example",
"type": "text",
"preTextBlock": "<p><strong>Principle 1:</strong></p>",
"body": "<p>Great leaders demonstrate the behaviors they expect from their team...</p>",
"postTextBlock": "<p><strong>Action Item:</strong> Identify one behavior to model this week.</p>"
},
{
"title": "Empower Others",
"type": "text",
"preTextBlock": "<p><strong>Principle 2:</strong></p>",
"body": "<p>Effective leaders create opportunities for their team to grow...</p>",
"postTextBlock": "<p><strong>Action Item:</strong> Delegate one task this week.</p>"
}
]
}
]
}
Time-Limited microCourse
Create a microCourse available for a specific period:
{
"courseAttributes": [
{
"title": "Weekly Product Tip",
"kind": "microCourse",
"availableToPublic": true,
"courseStartDate": "2024-01-15T00:00:00Z",
"courseEndDate": "2024-01-22T23:59:59Z",
"topics": [
{
"title": "This Week's Tip",
"type": "text",
"body": "<p>Learn how to use keyboard shortcuts to boost your productivity...</p>"
}
]
}
]
}
Use Cases
Mobile Learning
Perfect for:
- On-the-go training
- Quick refreshers
- Daily tips
- Bite-sized content
Daily Learning
Ideal for:
- Daily product tips
- Weekly insights
- Regular updates
- Drip content
Just-in-Time Training
Great for:
- Point-of-need support
- Quick how-tos
- Troubleshooting guides
- Feature announcements
Quick Assessments
Excellent for:
- Knowledge checks
- Quick quizzes
- Spot checks
- Pulse surveys
Best Practices
1. Keep It Short
Target: 2-5 topics per microCourse
- Each topic: 1-2 minutes of content
- Total time: 5-10 minutes maximum
- Focus on single learning objective
2. Mobile-First Design
{
"topics": [
{
"body": "<p>Short sentences.</p><p>Clear formatting.</p><p>Easy to scan.</p>"
}
]
}
Best practices:
- Short paragraphs
- Bullet points
- Large, readable text
- Minimal scrolling
3. One Concept Per Topic
Good:
- ✅ "Listen to Customers"
- ✅ "Ask Open Questions"
- ✅ "Follow Up Promptly"
Bad:
- ❌ "Sales Techniques" (too broad)
- ❌ "Everything About Selling" (too much)
4. Use Visual Hierarchy
<h2>Main Point</h2>
<p>Supporting detail...</p>
<h3>Key Takeaway</h3>
<ul>
<li>Action 1</li>
<li>Action 2</li>
</ul>
5. Include Clear CTAs
{
"postTextBlock": "<p><strong>Next Step:</strong> Try this technique in your next customer call.</p>"
}
Topic Types for microCourses
| Type | Best For | Notes |
|---|---|---|
text | Tips, explanations | Most common |
article | Multilingual content | Supports multiple languages |
quiz | Knowledge checks | Questions configured in UI |
test | Assessments | Graded quizzes |
shareableContentObject | SCORM content | Interactive modules |
pdfViewer | Documents | Reference materials |
video | Video content | Short clips |
Content Guidelines
Do:
- ✅ One idea per topic
- ✅ Actionable takeaways
- ✅ Clear, concise language
- ✅ Visual elements when helpful
- ✅ Mobile-friendly formatting
Don't:
- ❌ Long paragraphs
- ❌ Complex concepts
- ❌ Too much text
- ❌ Multiple unrelated topics
- ❌ Dense technical jargon
microCourse Series
Create connected microCourses for sequential learning:
{
"title": "Git Fundamentals - Part 1",
"kind": "microCourse",
"sku": "GIT-101-01",
"topics": [
{
"title": "What is Git?",
"type": "text",
"body": "<p>Git is a distributed version control system...</p>"
}
]
}
Use SKU or custom fields to link related microCourses.
Common Errors
Missing topics Array
{
"error": "microCourse requires topics array"
}
Solution: Include at least one topic in the topics array.
Empty topics Array
{
"error": "topics array cannot be empty"
}
Solution: Add at least one topic object.
Invalid Topic Type
{
"error": "Invalid topic type 'invalid_type'"
}
Solution: Use valid TopicType values (text, quiz, video, etc.).
Missing Topic Fields
{
"error": "Topic requires title and type fields"
}
Solution: Ensure each topic has title and type fields.
Comparison: microCourse vs courseGroup
| Feature | microCourse | courseGroup |
|---|---|---|
| Structure | Flat (topics) | Hierarchical (sections→lessons→topics) |
| Complexity | Low | High |
| Best For | Quick learning | Comprehensive courses |
| Mobile | ✓✓✓ | ✓✓ |
| Setup Time | Fast | Slower |
| Max Topics | Unlimited | Unlimited |
Use microCourse when:
- Content is short and focused
- Don't need complex structure
- Targeting mobile learners
- Want quick setup
Use courseGroup when:
- Need organized sections
- Building comprehensive courses
- Want sequential progression
- Need complex hierarchy
Next Steps
- Review other format examples:
- Explore Field Reference
- Learn about Get Course Structure