Hey @ghassan, I did some searching and found some information about how this field is handled in Discovery. I am completely unfamiliar with edx-search and how it is connected to LMS, CMS and Discovery, so I do not know whether or not this information will be helpful to you.
Anyway, I found the CourseRun.hidden
field in Discovery:
This field seems to control whether the course should be returned from the Discovery APIs, and it’s apparently controlled by the Studio catalog_visibility
setting.
To confirm this, I looked at the refresh_course_metadata
management command, which uses the CoursesApiDataLoader
to update Discovery’s hidden
field from the edx-platform Course API’s hidden
field: course-discovery/api.py at 31afc6df508dd8b177fdb3dcb345893df9cedc6a · openedx/course-discovery · GitHub.
Indeed, the edx-platform Course API’s hidden
field is based on catalog_visibility
: edx-platform/serializers.py at 203e2e9c041c8dd41bd49e75625687fbf47423a3 · openedx/edx-platform · GitHub.
So, it sounds like that if one invokes Disovery’s refresh_course_metadata
command, the hidden
field in Discovery will be updated from edx-platform’s catalog_visibility
setting. Again, not sure how this relates to edx-search.