Skip to main content

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 preTextBlock to 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

TypeBest ForNotes
textTips, explanationsMost common
articleMultilingual contentSupports multiple languages
quizKnowledge checksQuestions configured in UI
testAssessmentsGraded quizzes
shareableContentObjectSCORM contentInteractive modules
pdfViewerDocumentsReference materials
videoVideo contentShort 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

FeaturemicroCoursecourseGroup
StructureFlat (topics)Hierarchical (sections→lessons→topics)
ComplexityLowHigh
Best ForQuick learningComprehensive courses
Mobile✓✓✓✓✓
Setup TimeFastSlower
Max TopicsUnlimitedUnlimited

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