The MOOChub API
and its Open edX
Integration at the
German UDS

The story of the MOOChub API is a demonstration of the power of collaborative work and open standards in online education. Born from a student project and nurtured by a consortium of German and Austrian MOOC platforms, MOOChub has evolved into a key enabler of course discovery and accessibility, culminating in its integration with the Open edX platform of the German University of Digital Science's (German UDS), a project supported and developed by Abstract Technology GmbH as a certified Open edX service partner.
From Student Project to National Reach
Initially, the MOOChub API format was conceived to facilitate the aggregation of course catalogs across different platforms, including openHPI, onCampus, and iMooX.
The goal was ambitious: to create a unified view
of online learning opportunities.
Early attempts to engage major players like edX and Coursera were unsuccessful, but the consortium adopted a bottom-up approach, focusing on building a strong foundation within the German-speaking educational landscape.
This strategy proved remarkably effective. As other platforms and aggregators recognized the value of a shared standard, they embraced the MOOChub format. The inclusion of MOOChub-compliant courses in prominent search indexes like OERSI, and later in government-backed learning portals such as digitalcampus.bayern, meinbildungsraum.de, and findig.sh, solidified its position as a standard. This widespread adoption was crucial for the German UDS, enabling them to seamlessly list their Open edX-based courses on these vital platforms.
The integration of MOOChub into the German UDS online academy was a significant step. It allowed the German UDS, a pioneer in online higher education since it is renown as Europe's first fully online university, to effectively reach a broader audience through established aggregation channels. This integration is particularly relevant given the growing number of European Open edX platforms, including FUN, NAU, and the platform of UP Valencia, hinting at the potential for wider European adoption.
Beyond the technical implementation, the MOOChub story highlights the importance of thoughtful standardization. The API format's design philosophy centered on leveraging existing standards like JSON-Schema, rather than creating yet another incompatible format. This pragmatic approach, combined with ongoing efforts to align with similar initiatives and incorporate established vocabularies (ESCO, ISCED_F, OEFOS), has been instrumental in its success. The inclusion of these standardized vocabularies allows for more granular course descriptions and facilitates the development of automated learning paths for upskilling and reskilling.
Technical details of the Implementation
The MOOChub API integration within the Open edX platform of the German UDS follows a modular architecture that ensures scalability, interoperability, and efficiency. The system is built on the Django Rest Framework (DRF) and integrates seamlessly with the Open edX platform through custom models, serializers, and pagination mechanisms.
The API is designed to aggregate, transform, and expose course metadata in a structured format that aligns with MOOChub’s standardized schema. Below is the data flow process:
Step 1: Data Extraction from Open edX
Course information is retrieved from the CourseOverview model in Open edX.
- Additional attributes such as instructors, pricing, duration, and language are fetched from related models (CourseMode, CourseInstructorRole, etc.).
The API processes learning objectives, metadata alignment (ESCO, ISCED_F), and structured vocabularies
Step 2: Data Transformation & Serialization
The retrieved data is structured using Django Rest Framework (DRF) serializers.
The MoocHubInfoSerializer and MoocHubCourseAttributesSerializer convert course details into MOOChub-compatible JSON-LD format.
Step 3: Data Exposure via API Endpoint
The API exposes course data via a RESTful endpoint using ListAPIView (MoocHubAPIListView).
- The response follows JSON:API standards, ensuring compatibility with external aggregators and search indexes.
The API supports pagination, filtering, and sorting for efficient querying.
API Endpoint Details:
{
"links": {
"self": "https://example-lms.com/api/moochub/courses/?page=1",
"first": "https://example-lms.com/api/moochub/courses/?page=1",
"last": "https://example-lms.com/api/moochub/courses/?page=10",
"next": "https://example-lms.com/api/moochub/courses/?page=2"
},
"data": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"type": "Course",
"attributes": {
"name": "Introduction to python",
"courseCode": "python101",
"abstract": "A beginner-friendly python course.",
"startDate": "2024-06-01T00:00:00Z",
"endDate": "2024-12-01T00:00:00Z",
"image": {
"type": "ImageObject",
"contentUrl": "https://campus.german-uds.de/static/ai101.jpg",
"license": [{"identifier": "proprietary"}]
},
"instructor": [
{"name": "Dr. Jane Doe", "type": "Person"}
],
"access": ["free"],
"url": "https://example-lms.com/courses/python101",
"courseMode": ["online"],
"pacing": "self-paced",
"workload": {"timeValue": 5, "timeUnit": "h/week"}
}
}
]
}
Looking Ahead
The MOOChub API's journey, from a student project to a nationally recognized standard, demonstrates the impact of open collaboration and adherence to established best practices. Its integration with Open edX at the German UDS, facilitated by the expertise of Abstract Technology GmbH, exemplifies how these principles can empower institutions to broaden their reach and contribute to a more accessible and connected learning ecosystem. The ongoing development and standardization efforts promise to further enhance the discoverability and interoperability of online learning resources, both within Germany and potentially across Europe.
The successful implementation of MOOCHub at Germany's UDS demonstrates the power of open source solutions such as Open edX and MOOCHub to address complex challenges in online education. As the German UDS continues to grow and evolve, this accomplishment will provide a solid foundation for delivering high quality, personalised learning experiences to students, and as the selected Open edX service provider, we look forward to continuing to support and facilitate the project's growth.
MOOCHub Partner