From deb0d67d113e39dc6675d88fe5b58b9c75fa242a Mon Sep 17 00:00:00 2001 From: Muhammad Faraz Maqsood Date: Tue, 6 Oct 2026 18:06:00 +0500 Subject: [PATCH] fix: give CourseEnrollmentsApiListSerializer its own schema ref_name CourseEnrollmentsApiListSerializer's Meta subclasses its parent's, so it inherited ref_name = "CourseEnrollment". Both serializers were published under one schema component, and in the full /api-docs schema the subset serializer won: the enrollment create and retrieve endpoints were documented with course_id instead of course_details, and clients generated from the schema were typed accordingly. --- openedx/core/djangoapps/enrollments/serializers.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/openedx/core/djangoapps/enrollments/serializers.py b/openedx/core/djangoapps/enrollments/serializers.py index 7a0a68d2e93d..b10af010d6f6 100644 --- a/openedx/core/djangoapps/enrollments/serializers.py +++ b/openedx/core/djangoapps/enrollments/serializers.py @@ -107,6 +107,9 @@ def __init__(self, *args, **kwargs): class Meta(CourseEnrollmentSerializer.Meta): fields = CourseEnrollmentSerializer.Meta.fields + ("course_id",) + # The parent's ref_name would otherwise be inherited, publishing this + # serializer under the same schema component name as its parent. + ref_name = "CourseEnrollmentsApiList" class ModeSerializer(serializers.Serializer): # pylint: disable=abstract-method