Skills

Education Cloud Course Catalog Migrate

Use this skill to migrate course catalog data from external sources (CSV, PDF, website)...

Install

npx skills add forcedotcom/sf-skills --skill education-cloud-course-catalog-migrate -g -a claude-code -y
Repository
forcedotcom/sf-skills1.1k
Category
Documents
Updated
5d ago
License
Apache-2.0
Context cost
Mediumabout 3,000 tokens
Runs scripts
Yes, review before use

What it does

Use this skill to migrate course catalog data from external sources (CSV, PDF, website) and bulk-create Learning and LearningCourse records in Education Cloud. Triggers when a user wants to import courses, parse course catalog documents, or set up a course catalog for an academic term. Handles multi-source data ingestion, intelligent interpretation of course structures (lecture+lab linked courses via IsLinkedOnly flag, credit hours, course types), batch creation via sObject REST API, data quality validation, conflict resolution for existing courses, and gap identification. Explains what's missing (descriptions, types) and requests additional sources. Pauses for clarification on multi-component courses and conflicting data. DO NOT TRIGGER for creating individual Learning Course records manually, for creating Learning Programs (different workflow), or for enrollment/registration workflows.

Migrating Course Catalog to Education Cloud

Import course catalog data from multiple sources (CSV, PDF, website) and bulk-create Learning Course records with structure detection and data quality validation.

Scope

  • In scope: Multi-source ingestion (CSV, PDF, web), Learning + LearningCourse bulk creation via sObject REST API (Composite batches up to 200), linked course detection (lecture+lab via IsLinkedOnly), credit hour parsing (Duration/DurationUnit), course type mapping, data quality validation, conflict resolution, gap identification/remediation
  • Out of scope: Creating individual Learning Course records manually (delegate to metadata generation skills), creating Learning Programs (Learning.Type = 'LearningProgram' + separate child object), creating External Learning (Learning.Type = 'ExternalLearning'), course sections/offerings (CourseOffering object), enrollment/registration workflows (no dedicated skill yet, ask the user), SIS sync (separate integration workflow)

Required Inputs

Gather or infer before proceeding:

  • Target org: Active Salesforce org with Education Cloud enabled
  • Primary data source: CSV file, PDF document, or website URL with course catalog data
  • Business Account: the Academic Operations Business Account to link courses to (e.g., College of Engineering)
  • Academic term (optional): context only, not stored on Learning Course

Additional sources (gathered during workflow):

  • Supplementary data sources for missing fields (descriptions, types, mappings)
  • Lecture-lab mapping files (if multi-component courses detected)
  • Conflict resolution decisions (if existing courses found)
Read the whole SKILL.md on GitHub

More in Documents