# Models

## The Achievement object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Achievement":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"icon_url":{"type":"string","readOnly":true},"name":{"type":"string","maxLength":75},"description":{"type":"string","maxLength":300},"icon":{"type":"string","maxLength":100},"has_vc":{"type":"boolean"},"tags":{},"type":{"type":"string","maxLength":36},"template_id":{"type":"string","nullable":true,"maxLength":100},"updated_at":{"type":"string","format":"date-time","readOnly":true},"created_at":{"type":"string","format":"date-time","readOnly":true},"level_id":{"type":"string","nullable":true},"updated_by":{"type":"string"},"created_by":{"type":"string"}},"required":["created_at","created_by","description","has_vc","icon_url","name","tags","type","updated_at","updated_by"]}}}}
```

## The AchievementBasic object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"AchievementBasic":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"achievement_name":{"type":"string"},"description":{"type":"string","maxLength":300},"icon":{"type":"string","maxLength":100},"icon_url":{"type":"string","readOnly":true},"level_id":{"type":"string","nullable":true},"tags":{},"template_id":{"type":"string","nullable":true,"maxLength":100}},"required":["achievement_name","description","icon_url","tags"]}}}}
```

## The AddMember object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"AddMember":{"type":"object","description":"Accepts exactly one identity: muid, user_id, or external_name.","properties":{"muid":{"type":"string"},"user_id":{"type":"string"},"external_name":{"type":"string","maxLength":100},"role":{"type":"string","nullable":true,"maxLength":50}}}}}}
```

## The AffiliationList object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"AffiliationList":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","maxLength":75},"organization_count":{"type":"string","readOnly":true},"created_by":{"type":"string"},"updated_by":{"type":"string"},"updated_at":{"type":"string","format":"date-time","readOnly":true},"created_at":{"type":"string","format":"date-time","readOnly":true}},"required":["created_at","created_by","organization_count","title","updated_at","updated_by"]}}}}
```

## The AreaOfInterestAPI object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"AreaOfInterestAPI":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"name":{"type":"string","maxLength":75}},"required":["name"]}}}}
```

## The BankTransfer object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"BankTransfer":{"type":"object","description":"Serializer for bank transfer donation requests (amount >= 5L)","properties":{"amount":{"type":"string","format":"decimal","pattern":"^-?\\d{0,10}(?:\\.\\d{0,2})?$"},"name":{"type":"string","maxLength":255},"donation_name":{"type":"string","maxLength":100},"email":{"type":"string","format":"email"},"phone_number":{"type":"string","maxLength":20},"pan_number":{"type":"string","maxLength":10},"address":{"type":"string"},"company":{"type":"string","maxLength":255},"donation_type":{"enum":["one-time","monthly","yearly"],"type":"string","description":"* `one-time` - one-time\n* `monthly` - monthly\n* `yearly` - yearly","default":"one-time"},"is_organisation":{"type":"boolean","default":false},"proof_url":{"type":"string","format":"uri","maxLength":2000},"reference_code":{"type":"string","maxLength":50}},"required":["amount","email","name","reference_code"]}}}}
```

## The CampusDetailsPublic object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"CampusDetailsPublic":{"type":"object","properties":{"org_id":{"type":"string","readOnly":true},"college_name":{"type":"string","readOnly":true},"campus_code":{"type":"string","readOnly":true},"campus_zone":{"type":"string","readOnly":true},"campus_level":{"type":"string","readOnly":true},"total_karma":{"type":"string","readOnly":true},"total_members":{"type":"string","readOnly":true},"active_members":{"type":"string","readOnly":true},"rank":{"type":"string","readOnly":true},"social_links":{"type":"string","readOnly":true}},"required":["active_members","campus_code","campus_level","campus_zone","college_name","org_id","rank","social_links","total_karma","total_members"]}}}}
```

## The CampusLeaderboard object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"CampusLeaderboard":{"type":"object","properties":{"user_id":{"type":"string"},"full_name":{"type":"string","readOnly":true},"muid":{"type":"string"},"karma":{"type":"integer"},"rank":{"type":"string","readOnly":true},"level":{"type":"string"},"join_date":{"type":"string"},"last_karma_gained":{"type":"string"},"graduation_year":{"type":"string"},"department":{"type":"string"},"is_alumni":{"type":"boolean"},"ig_count":{"type":"integer","default":0},"lc_count":{"type":"integer","default":0},"profile_pic":{"type":"string","readOnly":true}},"required":["department","full_name","graduation_year","is_alumni","join_date","karma","last_karma_gained","level","muid","profile_pic","rank","user_id"]}}}}
```

## The CampusList object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"CampusList":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","maxLength":100},"code":{"type":"string","maxLength":12}},"required":["code","title"]}}}}
```

## The CategoryList object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"CategoryList":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"created_by":{"type":"string","readOnly":true},"updated_by":{"type":"string","readOnly":true},"name":{"type":"string","maxLength":255},"description":{"type":"string","nullable":true},"entity_id":{"type":"string","maxLength":36},"entity_type":{"enum":["event"],"type":"string","description":"* `event` - Event"},"updated_at":{"type":"string","format":"date-time","readOnly":true},"created_at":{"type":"string","format":"date-time","readOnly":true}},"required":["created_at","created_by","entity_id","entity_type","name","updated_at","updated_by"]}}}}
```

## The ChangePassword object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"ChangePassword":{"type":"object","properties":{"current_password":{"type":"string"},"new_password":{"type":"string","minLength":8},"confirm_password":{"type":"string","minLength":8}},"required":["confirm_password","current_password","new_password"]}}}}
```

## The ChannelList object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"ChannelList":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"created_by":{"type":"string"},"updated_by":{"type":"string"},"name":{"type":"string","maxLength":75},"discord_id":{"type":"string","maxLength":36},"updated_at":{"type":"string","format":"date-time","readOnly":true},"created_at":{"type":"string","format":"date-time","readOnly":true}},"required":["created_at","created_by","discord_id","id","name","updated_at","updated_by"]}}}}
```

## The CircleInvite object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"CircleInvite":{"type":"object","description":"Validates the invite request body for POST /invite/<circle_id>/.","properties":{"muid":{"type":"string","description":"muid of the user to invite, e.g. user@mulearn"},"lead":{"type":"boolean","default":false}},"required":["muid"]}}}}
```

## The CircleInviteStatus object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"CircleInviteStatus":{"type":"object","description":"Serializes a pending invitation from the invitee's perspective.","properties":{"link_id":{"type":"string","readOnly":true},"circle_id":{"type":"string","readOnly":true},"circle_title":{"type":"string","readOnly":true},"ig":{"type":"string","readOnly":true},"is_lead_invite":{"type":"boolean","readOnly":true},"invited_by":{"type":"string","readOnly":true},"created_at":{"type":"string","format":"date-time","readOnly":true}},"required":["circle_id","circle_title","created_at","ig","invited_by","is_lead_invite","link_id"]}}}}
```

## The CircleJoinRequest object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"CircleJoinRequest":{"type":"object","description":"Serializes a user-initiated join request (is_invited=False, accepted=None) from the lead's perspective.","properties":{"link_id":{"type":"string","readOnly":true},"user_id":{"type":"string","readOnly":true},"full_name":{"type":"string","readOnly":true},"profile_pic":{"type":"string","readOnly":true,"nullable":true},"muid":{"type":"string","readOnly":true},"requested_at":{"type":"string","format":"date-time","readOnly":true}},"required":["full_name","link_id","muid","profile_pic","requested_at","user_id"]}}}}
```

## The CircleMeetingLogCreateEdit object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"CircleMeetingLogCreateEdit":{"type":"object","properties":{"circle_id":{"type":"string"},"title":{"type":"string","maxLength":100},"description":{"type":"string","maxLength":1000},"mode":{"enum":["online","offline"],"type":"string","description":"* `online` - Online\n* `offline` - Offline"},"platform":{"enum":["Zoom","Google Meet","Microsoft Teams","Discord","Other",null],"type":"string","nullable":true,"description":"Required for online meetings. One of: Zoom, Google Meet, Microsoft Teams, Other\n\n* `Zoom` - Zoom\n* `Google Meet` - Google Meet\n* `Microsoft Teams` - Microsoft Teams\n* `Discord` - Discord\n* `Other` - Other"},"meet_link":{"type":"string","format":"uri","nullable":true,"description":"Required for online meetings. Full URL of the meeting."},"meet_place":{"type":"string","nullable":true,"description":"Required for offline meetings. Address/venue name."},"coord_x":{"type":"number","format":"double","nullable":true,"description":"Required for offline meetings. Latitude coordinate."},"coord_y":{"type":"number","format":"double","nullable":true,"description":"Required for offline meetings. Longitude coordinate."},"meet_time":{"type":"string","format":"date-time"},"duration":{"type":"integer","maximum":2147483647,"minimum":-2147483648},"is_recurring":{"type":"boolean"},"recurrence_type":{"type":"string","nullable":true,"maxLength":10},"recurrence":{"type":"integer","maximum":2147483647,"minimum":-2147483648,"nullable":true},"is_report_needed":{"type":"boolean"},"report_description":{"type":"string","nullable":true,"maxLength":1000}},"required":["circle_id","description","duration","meet_time","mode","title"]}}}}
```

## The CircleMeetupInfo object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"CircleMeetupInfo":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","readOnly":true},"description":{"type":"string","maxLength":1000},"mode":{"enum":["online","offline"],"type":"string","description":"* `online` - Online\n* `offline` - Offline"},"meet_place":{"type":"string","readOnly":true},"meet_link":{"type":"string","nullable":true,"maxLength":200},"meet_time":{"type":"string","format":"date-time","readOnly":true},"ig":{"type":"string","readOnly":true},"is_report_needed":{"type":"boolean","readOnly":true},"report_description":{"type":"string","readOnly":true},"coord_x":{"type":"number","format":"double","readOnly":true},"coord_y":{"type":"number","format":"double","readOnly":true},"duration":{"type":"integer","readOnly":true},"is_started":{"type":"string","readOnly":true},"is_ended":{"type":"string","readOnly":true},"attendees":{"type":"string","readOnly":true},"is_member":{"type":"string","readOnly":true},"meet_code":{"type":"string","readOnly":true},"created_by_id":{"type":"string","readOnly":true}},"required":["attendees","coord_x","coord_y","created_by_id","description","duration","ig","is_ended","is_member","is_report_needed","is_started","meet_code","meet_place","meet_time","mode","report_description","title"]}}}}
```

## The CircleMeetupMin object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"CircleMeetupMin":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","readOnly":true},"description":{"type":"string","maxLength":1000},"org":{"type":"string","readOnly":true},"ig_id":{"type":"string","readOnly":true},"ig_name":{"type":"string","readOnly":true},"mode":{"enum":["online","offline"],"type":"string","description":"* `online` - Online\n* `offline` - Offline"},"is_recurring":{"type":"boolean"},"recurrence_type":{"type":"string","nullable":true,"maxLength":10},"recurrence":{"type":"integer","maximum":2147483647,"minimum":-2147483648,"nullable":true},"meet_place":{"type":"string","readOnly":true},"is_rsvp":{"type":"string","readOnly":true},"circle_id":{"type":"string","readOnly":true},"coord_x":{"type":"number","format":"double","readOnly":true},"coord_y":{"type":"number","format":"double","readOnly":true},"meet_time":{"type":"string","format":"date-time","readOnly":true},"meet_link":{"type":"string","nullable":true,"maxLength":200},"is_started":{"type":"string","readOnly":true},"is_ended":{"type":"string","readOnly":true},"is_joined":{"type":"string","readOnly":true},"attendees_count":{"type":"string","readOnly":true},"created_by":{"type":"string","readOnly":true},"created_by_id":{"type":"string","readOnly":true}},"required":["attendees_count","circle_id","coord_x","coord_y","created_by","created_by_id","description","ig_id","ig_name","is_ended","is_joined","is_rsvp","is_started","meet_place","meet_time","mode","org","title"]}}}}
```

## The CircleMeetupPublic object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"CircleMeetupPublic":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","readOnly":true},"description":{"type":"string","maxLength":1000},"org":{"type":"string","readOnly":true},"ig_id":{"type":"string","readOnly":true},"ig_name":{"type":"string","readOnly":true},"mode":{"enum":["online","offline"],"type":"string","description":"* `online` - Online\n* `offline` - Offline"},"is_recurring":{"type":"boolean"},"recurrence_type":{"type":"string","nullable":true,"maxLength":10},"recurrence":{"type":"integer","maximum":2147483647,"minimum":-2147483648,"nullable":true},"meet_place":{"type":"string","readOnly":true},"circle_id":{"type":"string"},"meet_time":{"type":"string","format":"date-time","readOnly":true},"meet_link":{"type":"string","nullable":true,"maxLength":200},"is_started":{"type":"string","readOnly":true},"is_ended":{"type":"string","readOnly":true},"created_by":{"type":"string","readOnly":true}},"required":["circle_id","created_by","description","ig_id","ig_name","is_ended","is_started","meet_place","meet_time","mode","org","title"]}}}}
```

## The CircleSentInvites object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"CircleSentInvites":{"type":"object","description":"Serializes outgoing invites from the lead's perspective.","properties":{"link_id":{"type":"string","readOnly":true},"user_id":{"type":"string","readOnly":true},"full_name":{"type":"string","readOnly":true},"profile_pic":{"type":"string","readOnly":true,"nullable":true},"muid":{"type":"string","readOnly":true},"is_lead_invite":{"type":"boolean","readOnly":true},"status":{"type":"string","readOnly":true},"invited_at":{"type":"string","format":"date-time","readOnly":true}},"required":["full_name","invited_at","is_lead_invite","link_id","muid","profile_pic","status","user_id"]}}}}
```

## The CollegeChange object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"CollegeChange":{"type":"object","properties":{"org_id":{"type":"string","maxLength":36},"department_id":{"type":"string","nullable":true,"maxLength":36}},"required":["org_id"]}}}}
```

## The CollegeData object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"CollegeData":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","maxLength":100},"district_name":{"type":"string"},"state":{"type":"string"},"total_users":{"type":"integer"},"level1":{"type":"integer"},"level2":{"type":"integer"},"level3":{"type":"integer"},"level4":{"type":"integer"}},"required":["district_name","level1","level2","level3","level4","state","title","total_users"]}}}}
```

## The CollegeInfo object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"CollegeInfo":{"type":"object","properties":{"org_title":{"type":"string"},"learning_circle_count":{"type":"string"},"user_count":{"type":"string"}},"required":["learning_circle_count","org_title","user_count"]}}}}
```

## The CollegeList object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"CollegeList":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"level":{"type":"integer","maximum":2147483647,"minimum":-2147483648},"org":{"type":"string"},"number_of_members":{"type":"string","readOnly":true},"total_karma":{"type":"string","readOnly":true},"no_of_lc":{"type":"string","readOnly":true},"no_of_alumni":{"type":"string","readOnly":true}},"required":["no_of_alumni","no_of_lc","number_of_members","org","total_karma"]}}}}
```

## The Comment object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Comment":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"comment":{"type":"string"},"project":{"type":"string"},"user":{"type":"string","readOnly":true},"user_id":{"type":"string","readOnly":true},"created_at":{"type":"string","format":"date-time","readOnly":true},"updated_at":{"type":"string","format":"date-time","readOnly":true}},"required":["comment","created_at","project","updated_at","user","user_id"]}}}}
```

## The CompanyTaskList object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"CompanyTaskList":{"type":"object","description":"Read-only list/detail serializer for company tasks.","properties":{"id":{"type":"string","maxLength":36},"hashtag":{"type":"string","maxLength":75},"discord_link":{"type":"string","nullable":true,"maxLength":200},"title":{"type":"string","maxLength":75},"description":{"type":"string","nullable":true},"karma":{"type":"integer","maximum":2147483647,"minimum":-2147483648,"nullable":true},"channel":{"type":"string"},"type":{"type":"string"},"active":{"type":"boolean"},"variable_karma":{"type":"boolean"},"usage_count":{"type":"integer","maximum":2147483647,"minimum":-2147483648},"level":{"type":"string"},"org":{"type":"string"},"ig":{"type":"string"},"event":{"type":"string","nullable":true,"maxLength":50},"bonus_karma":{"type":"integer","maximum":2147483647,"minimum":-2147483648,"nullable":true},"bonus_time":{"type":"string","format":"date-time","nullable":true},"approval_status":{"enum":["approved","pending","rejected"],"type":"string","description":"* `approved` - Approved\n* `pending` - Pending\n* `rejected` - Rejected"},"rejection_reason":{"type":"string","nullable":true},"reviewed_at":{"type":"string","format":"date-time","nullable":true},"requested_by_name":{"type":"string"},"requested_at":{"type":"string","format":"date-time","nullable":true},"skills":{"type":"string","readOnly":true},"created_at":{"type":"string","format":"date-time","readOnly":true},"updated_at":{"type":"string","format":"date-time","readOnly":true}},"required":["created_at","hashtag","skills","title","type","updated_at"]}}}}
```

## The Country object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Country":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"name":{"type":"string","maxLength":75}},"required":["name"]}}}}
```

## The CredentialInfo object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"CredentialInfo":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"}},"required":["description","name"]}}}}
```

## The Department object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Department":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","maxLength":100}},"required":["title"]}}}}
```

## The District object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"District":{"type":"object","properties":{"name":{"type":"string","maxLength":75},"zone":{"allOf":[{"$ref":"#/components/schemas/Zone"}],"readOnly":true}},"required":["name","zone"]},"Zone":{"type":"object","properties":{"name":{"type":"string","maxLength":75},"state":{"allOf":[{"$ref":"#/components/schemas/State"}],"readOnly":true}},"required":["name","state"]},"State":{"type":"object","properties":{"name":{"type":"string","maxLength":75},"country":{"type":"string","readOnly":true}},"required":["country","name"]}}}}
```

## The Donation object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Donation":{"type":"object","description":"Serializer for Donation model - payment tracking","properties":{"donation_type":{"enum":["one-time","monthly","yearly"],"type":"string","description":"* `one-time` - one-time\n* `monthly` - monthly\n* `yearly` - yearly"},"order_id":{"type":"string","nullable":true,"maxLength":100},"payment_id":{"type":"string","nullable":true,"maxLength":100},"donation_name":{"type":"string","nullable":true,"maxLength":100},"payment_method":{"type":"string","nullable":true,"maxLength":50},"amount":{"type":"string","format":"decimal","pattern":"^-?\\d{0,10}(?:\\.\\d{0,2})?$"},"currency":{"type":"string","maxLength":10},"is_paid":{"type":"boolean"},"payment_status":{"type":"string","maxLength":30},"reference_code":{"type":"string","nullable":true,"maxLength":50},"proof_url":{"type":"string","nullable":true},"donor":{"type":"string"}},"required":["amount","donation_type","donor"]}}}}
```

## The EligibleStudent object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"EligibleStudent":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"full_name":{"type":"string","maxLength":150},"email":{"type":"string","readOnly":true},"muid":{"type":"string","maxLength":100},"profile_pic":{"type":"string","readOnly":true},"karma":{"type":"integer","default":0},"level":{"type":"string"},"college_name":{"type":"string","readOnly":true},"interest_groups":{"type":"string","readOnly":true},"roles":{"type":"string","readOnly":true},"rank":{"type":"string","readOnly":true},"karma_distribution":{"type":"string","readOnly":true},"application_id":{"type":"string","readOnly":true},"application_status":{"type":"string","readOnly":true},"application_timeline":{"type":"string","readOnly":true},"candidate_links":{"type":"string","readOnly":true}},"required":["application_id","application_status","application_timeline","candidate_links","college_name","email","full_name","interest_groups","karma_distribution","muid","profile_pic","rank","roles"]}}}}
```

## The EventCalendarItem object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"EventCalendarItem":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","maxLength":200},"slug":{"type":"string","maxLength":220},"status":{"enum":["draft","pending_campus_approval","pending_approval","pending_mentor_approval","published","ongoing","completed","cancelled"],"type":"string","description":"* `draft` - Draft\n* `pending_campus_approval` - Pending Campus Approval\n* `pending_approval` - Pending Approval\n* `pending_mentor_approval` - Pending Mentor Approval\n* `published` - Published\n* `ongoing` - Ongoing\n* `completed` - Completed\n* `cancelled` - Cancelled"},"start":{"type":"string","format":"date-time","readOnly":true},"end":{"type":"string","format":"date-time","readOnly":true},"venue_type":{"enum":["physical","online","hybrid"],"type":"string","description":"* `physical` - Physical\n* `online` - Online\n* `hybrid` - Hybrid"},"organiser_name":{"type":"string","readOnly":true},"category_name":{"type":"string","readOnly":true,"nullable":true},"is_featured":{"type":"boolean"}},"required":["category_name","end","organiser_name","slug","start","title"]}}}}
```

## The EventCoOwner object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"EventCoOwner":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"entity_id":{"type":"string","maxLength":36},"user":{"type":"string","readOnly":true},"added_by":{"type":"string","readOnly":true},"added_at":{"type":"string","format":"date-time"}},"required":["added_at","added_by","entity_id","user"]}}}}
```

## The EventCollaborator object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"EventCollaborator":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"entity_type":{"enum":["user_ticket","co_owner","collab_ig","collab_campus","collab_campus_ig","collab_company"],"type":"string","description":"* `user_ticket` - User Ticket\n* `co_owner` - Co-owner\n* `collab_ig` - Collaborating IG\n* `collab_campus` - Collaborating Campus\n* `collab_campus_ig` - Collaborating Campus IG\n* `collab_company` - Collaborating Company"},"entity_id":{"type":"string","maxLength":36},"entity_detail":{"type":"string","readOnly":true},"role_label":{"type":"string","nullable":true,"maxLength":100},"invite_status":{"enum":["pending","accepted","rejected","",null],"type":"string","description":"* `pending` - Pending\n* `accepted` - Accepted\n* `rejected` - Rejected","nullable":true},"rejection_reason":{"type":"string","nullable":true,"maxLength":500},"responded_at":{"type":"string","format":"date-time","nullable":true},"created_at":{"type":"string","format":"date-time","readOnly":true}},"required":["created_at","entity_detail","entity_id","entity_type"]}}}}
```

## The EventDetail object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"EventDetail":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","maxLength":200},"slug":{"type":"string","maxLength":220},"description":{"type":"string","nullable":true},"cover_image":{"type":"string","readOnly":true},"banner_image":{"type":"string","readOnly":true},"category_id":{"type":"string","readOnly":true,"nullable":true},"category_name":{"type":"string","readOnly":true,"nullable":true},"status":{"enum":["draft","pending_campus_approval","pending_approval","pending_mentor_approval","published","ongoing","completed","cancelled"],"type":"string","description":"* `draft` - Draft\n* `pending_campus_approval` - Pending Campus Approval\n* `pending_approval` - Pending Approval\n* `pending_mentor_approval` - Pending Mentor Approval\n* `published` - Published\n* `ongoing` - Ongoing\n* `completed` - Completed\n* `cancelled` - Cancelled"},"scope":{"enum":["global","campus","ig","campus_ig","company"],"type":"string","description":"* `global` - Global\n* `campus` - Campus\n* `ig` - Interest Group\n* `campus_ig` - Campus IG\n* `company` - Company"},"scope_org":{"allOf":[{"$ref":"#/components/schemas/MinimalCampus"}],"readOnly":true,"nullable":true},"scope_ig":{"allOf":[{"$ref":"#/components/schemas/MinimalIG"}],"readOnly":true,"nullable":true},"scope_ci_id":{"type":"string","nullable":true,"maxLength":36},"organizer":{"$ref":"#/components/schemas/OrganizerInfo"},"venue":{"$ref":"#/components/schemas/EventVenue"},"start_datetime":{"type":"string","format":"date-time"},"end_datetime":{"type":"string","format":"date-time"},"registration_url":{"type":"string","nullable":true,"maxLength":500},"registration_deadline":{"type":"string","format":"date-time","nullable":true},"min_karma":{"type":"integer","maximum":9223372036854776000,"minimum":-9223372036854776000,"format":"int64","nullable":true},"is_featured":{"type":"boolean"},"is_collaboration":{"type":"boolean"},"interest_count":{"type":"integer","maximum":4294967295,"minimum":0,"format":"int64"},"tags":{"nullable":true},"user_limit":{"type":"integer","maximum":4294967295,"minimum":0,"format":"int64"},"linked_tasks":{"type":"string","readOnly":true},"co_owners":{"type":"string","readOnly":true},"collaborators":{"type":"string","readOnly":true},"viewer_interest_status":{"type":"string","readOnly":true},"viewer_can_access_registration":{"type":"string","readOnly":true},"viewer_access_blocked_reason":{"type":"string","readOnly":true},"created_by":{"allOf":[{"$ref":"#/components/schemas/MinimalUser"}],"readOnly":true},"updated_by":{"allOf":[{"$ref":"#/components/schemas/MinimalUser"}],"readOnly":true},"created_at":{"type":"string","format":"date-time","readOnly":true},"updated_at":{"type":"string","format":"date-time","readOnly":true}},"required":["banner_image","category_id","category_name","co_owners","collaborators","cover_image","created_at","created_by","end_datetime","linked_tasks","organizer","scope_ig","scope_org","slug","start_datetime","title","updated_at","updated_by","venue","viewer_access_blocked_reason","viewer_can_access_registration","viewer_interest_status"]},"MinimalCampus":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","maxLength":100},"org_type":{"type":"string","maxLength":25}},"required":["org_type","title"]},"MinimalIG":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"name":{"type":"string","maxLength":75},"icon":{"type":"string","maxLength":10}},"required":["icon","name"]},"OrganizerInfo":{"type":"object","description":"Reads organiser fields off the Event model directly.","properties":{"type":{"type":"string"},"ig":{"type":"string","readOnly":true},"campus":{"type":"string","readOnly":true},"company":{"type":"string","readOnly":true},"campus_ig_id":{"type":"string","nullable":true}},"required":["campus","campus_ig_id","company","ig","type"]},"EventVenue":{"type":"object","description":"Flattens venue_* fields from the Event model.","properties":{"type":{"type":"string"},"address":{"type":"string","nullable":true},"city":{"type":"string","nullable":true},"maps_url":{"type":"string","nullable":true},"online_link":{"type":"string","nullable":true},"platform":{"type":"string","nullable":true}},"required":["address","city","maps_url","online_link","platform","type"]},"MinimalUser":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"full_name":{"type":"string","maxLength":150},"muid":{"type":"string","maxLength":100},"profile_pic":{"type":"string","readOnly":true}},"required":["full_name","muid","profile_pic"]}}}}
```

## The EventListItem object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"EventListItem":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","maxLength":200},"slug":{"type":"string","maxLength":220},"cover_image":{"type":"string","readOnly":true},"status":{"enum":["draft","pending_campus_approval","pending_approval","pending_mentor_approval","published","ongoing","completed","cancelled"],"type":"string","description":"* `draft` - Draft\n* `pending_campus_approval` - Pending Campus Approval\n* `pending_approval` - Pending Approval\n* `pending_mentor_approval` - Pending Mentor Approval\n* `published` - Published\n* `ongoing` - Ongoing\n* `completed` - Completed\n* `cancelled` - Cancelled"},"scope":{"enum":["global","campus","ig","campus_ig","company"],"type":"string","description":"* `global` - Global\n* `campus` - Campus\n* `ig` - Interest Group\n* `campus_ig` - Campus IG\n* `company` - Company"},"start_datetime":{"type":"string","format":"date-time"},"end_datetime":{"type":"string","format":"date-time"},"venue":{"$ref":"#/components/schemas/EventVenue"},"organizer":{"$ref":"#/components/schemas/OrganizerInfo"},"is_featured":{"type":"boolean"},"is_collaboration":{"type":"boolean"},"interest_count":{"type":"integer","maximum":4294967295,"minimum":0,"format":"int64"},"min_karma":{"type":"integer","maximum":9223372036854776000,"minimum":-9223372036854776000,"format":"int64","nullable":true},"tags":{"nullable":true},"user_limit":{"type":"integer","maximum":4294967295,"minimum":0,"format":"int64"},"category_id":{"type":"string","readOnly":true,"nullable":true},"category_name":{"type":"string","readOnly":true,"nullable":true},"viewer_interest_status":{"type":"string","readOnly":true}},"required":["category_id","category_name","cover_image","end_datetime","organizer","slug","start_datetime","title","venue","viewer_interest_status"]},"EventVenue":{"type":"object","description":"Flattens venue_* fields from the Event model.","properties":{"type":{"type":"string"},"address":{"type":"string","nullable":true},"city":{"type":"string","nullable":true},"maps_url":{"type":"string","nullable":true},"online_link":{"type":"string","nullable":true},"platform":{"type":"string","nullable":true}},"required":["address","city","maps_url","online_link","platform","type"]},"OrganizerInfo":{"type":"object","description":"Reads organiser fields off the Event model directly.","properties":{"type":{"type":"string"},"ig":{"type":"string","readOnly":true},"campus":{"type":"string","readOnly":true},"company":{"type":"string","readOnly":true},"campus_ig_id":{"type":"string","nullable":true}},"required":["campus","campus_ig_id","company","ig","type"]}}}}
```

## The EventVenue object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"EventVenue":{"type":"object","description":"Flattens venue_* fields from the Event model.","properties":{"type":{"type":"string"},"address":{"type":"string","nullable":true},"city":{"type":"string","nullable":true},"maps_url":{"type":"string","nullable":true},"online_link":{"type":"string","nullable":true},"platform":{"type":"string","nullable":true}},"required":["address","city","maps_url","online_link","platform","type"]}}}}
```

## The EventWrite object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"EventWrite":{"type":"object","description":"Input serializer for POST /manage/ and PUT/PATCH /manage/<id>/.","properties":{"title":{"type":"string","maxLength":200},"description":{"type":"string","nullable":true},"cover_image":{"type":"string","nullable":true,"maxLength":512},"banner_image":{"type":"string","nullable":true,"maxLength":512},"category":{"type":"string","nullable":true},"start_datetime":{"type":"string","format":"date-time"},"end_datetime":{"type":"string","format":"date-time"},"registration_url":{"type":"string","nullable":true,"maxLength":500},"registration_deadline":{"type":"string","format":"date-time","nullable":true},"min_karma":{"type":"integer","maximum":9223372036854776000,"minimum":-9223372036854776000,"format":"int64","nullable":true},"venue_type":{"enum":["physical","online","hybrid"],"type":"string","description":"* `physical` - Physical\n* `online` - Online\n* `hybrid` - Hybrid"},"venue_address":{"type":"string","nullable":true,"maxLength":300},"venue_city":{"type":"string","nullable":true,"maxLength":100},"venue_maps_url":{"type":"string","nullable":true,"maxLength":500},"venue_online_link":{"type":"string","nullable":true,"maxLength":500},"venue_platform":{"type":"string","nullable":true,"maxLength":100},"scope":{"enum":["global","campus","ig","campus_ig","company"],"type":"string","description":"* `global` - Global\n* `campus` - Campus\n* `ig` - Interest Group\n* `campus_ig` - Campus IG\n* `company` - Company"},"scope_org":{"type":"string","nullable":true},"scope_ig":{"type":"string","nullable":true},"scope_ci_id":{"type":"string","nullable":true,"maxLength":36},"organiser_type":{"enum":["global_ig","campus_ig","campus","company","admin"],"type":"string","description":"* `global_ig` - Global IG\n* `campus_ig` - Campus IG\n* `campus` - Campus\n* `company` - Company\n* `admin` - Admin"},"organiser_ig":{"type":"string","nullable":true},"organiser_org":{"type":"string","nullable":true},"organiser_ci_id":{"type":"string","nullable":true,"maxLength":36},"is_collaboration":{"type":"boolean"},"is_featured":{"type":"boolean"},"tags":{"nullable":true},"user_limit":{"type":"integer","maximum":4294967295,"minimum":0,"format":"int64"}},"required":["end_datetime","start_datetime","title"]}}}}
```

## The ExternalUserDetails object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"ExternalUserDetails":{"type":"object","description":"Serializer for external API to fetch basic public user details.\n\nThis serializer is specifically designed for external website integration,\nreturning only non-sensitive public information about users.\n\nExcludes: email, mobile, password, and other sensitive fields","properties":{"full_name":{"type":"string","maxLength":150},"muid":{"type":"string","maxLength":100},"interest_groups":{"type":"string","readOnly":true},"organizations":{"type":"string","readOnly":true},"profile_pic":{"type":"string","readOnly":true},"karma":{"type":"integer","default":0}},"required":["full_name","interest_groups","muid","organizations","profile_pic"]}}}}
```

## The ForgotPassword object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"ForgotPassword":{"type":"object","properties":{"email":{"type":"string","format":"email"},"user_type":{"enum":["company","recruiter"],"type":"string","description":"* `company` - Company\n* `recruiter` - Recruiter"}},"required":["email","user_type"]}}}}
```

## The GetUserLink object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"GetUserLink":{"type":"object","properties":{"org_id":{"type":"string"},"org_title":{"type":"string"},"dept_id":{"type":"string","nullable":true},"dept_title":{"type":"string","nullable":true},"is_alumni":{"type":"boolean"}},"required":["is_alumni","org_id","org_title"]}}}}
```

## The InstitutesRetrival object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"InstitutesRetrival":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","maxLength":100},"district":{"type":"string"}},"required":["district","title"]}}}}
```

## The Institution object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Institution":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","maxLength":100},"code":{"type":"string","maxLength":12},"affiliation":{"type":"string","readOnly":true},"district":{"type":"string","readOnly":true},"zone":{"type":"string","readOnly":true},"state":{"type":"string","readOnly":true},"country":{"type":"string","readOnly":true},"user_count":{"type":"string","readOnly":true}},"required":["affiliation","code","country","district","state","title","user_count","zone"]}}}}
```

## The Integration object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Integration":{"type":"object","properties":{"param":{"type":"string"},"title":{"type":"string"}},"required":["param","title"]}}}}
```

## The InterestGroup object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"InterestGroup":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"name":{"type":"string","maxLength":75},"resource":{"type":"string","nullable":true},"about":{"type":"string","nullable":true},"prerequisites":{"type":"string","nullable":true},"career_opportunities":{"type":"string","nullable":true},"top_blogs":{"type":"string","nullable":true},"people_to_follow":{"type":"string","nullable":true},"leads":{"type":"string","nullable":true},"mentors":{"type":"string","nullable":true},"thinktank":{"type":"string","nullable":true},"office_hours":{"type":"string","nullable":true,"maxLength":200},"icon":{"type":"string","maxLength":10},"code":{"type":"string","maxLength":10},"category":{"enum":["maker","coder","creative","manager","others"],"type":"string","description":"* `maker` - maker\n* `coder` - coder\n* `creative` - creative\n* `manager` - manager\n* `others` - others"},"status":{"enum":["active","requested","cancelled","rejected"],"type":"string","description":"* `active` - active\n* `requested` - requested\n* `cancelled` - cancelled\n* `rejected` - rejected"},"members":{"type":"string","readOnly":true},"updated_by":{"type":"string"},"updated_at":{"type":"string","format":"date-time","readOnly":true},"created_by":{"type":"string"},"created_at":{"type":"string","format":"date-time","readOnly":true}},"required":["category","code","created_at","created_by","icon","members","name","status","updated_at","updated_by"]}}}}
```

## The IssueVC object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"IssueVC":{"type":"object","properties":{"subject_info":{"$ref":"#/components/schemas/SubjectInfo"},"credential_info":{"$ref":"#/components/schemas/CredentialInfo"},"template_id":{"type":"string"}},"required":["credential_info","subject_info","template_id"]},"SubjectInfo":{"type":"object","properties":{"type":{"type":"string"},"did":{"type":"string"},"full_name":{"type":"string"},"email":{"type":"string","format":"email"},"phone":{"type":"string"}},"required":["did","email","full_name","type"]},"CredentialInfo":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"}},"required":["description","name"]}}}}
```

## The KKEMUser object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"KKEMUser":{"type":"object","properties":{"mu_id":{"type":"string"},"email":{"type":"string","format":"email","maxLength":200},"jsid":{"type":"string","readOnly":true},"total_karma":{"type":"string","readOnly":true},"interest_groups":{"type":"string","readOnly":true}},"required":["email","interest_groups","jsid","mu_id","total_karma"]}}}}
```

## The KarmaActivityLog object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"KarmaActivityLog":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"full_name":{"type":"string"},"task_name":{"type":"string"},"status":{"type":"string","readOnly":true},"discordlink":{"type":"string"}},"required":["discordlink","full_name","status","task_name"]}}}}
```

## The LaunchPadID object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"LaunchPadID":{"type":"object","properties":{"launchpad_id":{"type":"string","maxLength":100}},"required":["launchpad_id"]}}}}
```

## The LaunchpadCompanies object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"LaunchpadCompanies":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"name":{"type":"string","maxLength":100},"poc_name":{"type":"string","maxLength":100},"poc_role":{"type":"string","maxLength":100},"poc_email":{"type":"string","maxLength":100},"website":{"type":"string","format":"uri","nullable":true,"maxLength":200},"description":{"type":"string","nullable":true},"address":{"type":"string","nullable":true,"maxLength":255},"poc_phone":{"type":"string","maxLength":20},"username":{"type":"string","maxLength":50},"password":{"type":"string","maxLength":255},"is_verified":{"type":"boolean"},"created_at":{"type":"string","format":"date-time","readOnly":true},"updated_at":{"type":"string","format":"date-time","readOnly":true}},"required":["created_at","id","name","password","poc_email","poc_name","poc_phone","poc_role","updated_at","username"]}}}}
```

## The LaunchpadCompanyPublic object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"LaunchpadCompanyPublic":{"type":"object","properties":{"name":{"type":"string","maxLength":100},"website":{"type":"string","format":"uri","nullable":true,"maxLength":200}},"required":["name"]}}}}
```

## The LaunchpadJobUpdate object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"LaunchpadJobUpdate":{"type":"object","properties":{"title":{"type":"string","maxLength":100},"skills":{"type":"string","nullable":true,"maxLength":255},"experience":{"type":"string","nullable":true,"maxLength":255},"location":{"type":"string","nullable":true,"maxLength":255},"salary_range":{"type":"string","nullable":true,"maxLength":50},"job_type":{"type":"string","nullable":true,"maxLength":50},"interest_groups":{"type":"string","maxLength":255},"opening_type":{"enum":["General","Task"],"type":"string","description":"* `General` - General\n* `Task` - Task"},"task_description":{"type":"string"},"hashtags":{"type":"string"}}}}}}
```

## The LaunchpadJobs object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"LaunchpadJobs":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"company":{"type":"string"},"recruiter":{"type":"string"},"title":{"type":"string","maxLength":100},"skills":{"type":"string","nullable":true},"experience":{"type":"string","nullable":true},"domain":{"type":"string","maxLength":255},"opening_type":{"type":"string","nullable":true,"default":"General"},"location":{"type":"string","nullable":true,"maxLength":255},"salary_range":{"type":"string","nullable":true,"maxLength":50},"job_type":{"type":"string","nullable":true,"maxLength":50},"minimum_karma":{"type":"integer","maximum":2147483647,"minimum":-2147483648,"nullable":true},"interest_groups":{"type":"string","maxLength":255},"task":{"type":"string","nullable":true},"created_at":{"type":"string","format":"date-time","readOnly":true},"updated_at":{"type":"string","format":"date-time","readOnly":true}},"required":["company","created_at","domain","id","interest_groups","recruiter","title","updated_at"]}}}}
```

## The LaunchpadLeaderBoard object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"LaunchpadLeaderBoard":{"type":"object","properties":{"rank":{"type":"integer"},"full_name":{"type":"string","maxLength":150},"actual_karma":{"type":"integer"},"karma":{"type":"integer"},"org":{"type":"string","nullable":true},"district_name":{"type":"string","nullable":true},"state":{"type":"string","nullable":true},"launchpad_id":{"allOf":[{"$ref":"#/components/schemas/LaunchPadID"}],"readOnly":true}},"required":["district_name","full_name","karma","launchpad_id","org","rank","state"]},"LaunchPadID":{"type":"object","properties":{"launchpad_id":{"type":"string","maxLength":100}},"required":["launchpad_id"]}}}}
```

## The LaunchpadParticipants object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"LaunchpadParticipants":{"type":"object","properties":{"full_name":{"type":"string","maxLength":150},"level":{"type":"string","nullable":true},"org":{"type":"string","nullable":true},"district_name":{"type":"string","nullable":true},"state":{"type":"string","nullable":true}},"required":["district_name","full_name","level","org","state"]}}}}
```

## The LaunchpadRecruiter object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"LaunchpadRecruiter":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"company":{"type":"string"},"name":{"type":"string","maxLength":100},"email":{"type":"string","maxLength":100},"phone":{"type":"string","maxLength":20},"password":{"type":"string","maxLength":255},"role":{"type":"string","nullable":true,"maxLength":50},"created_at":{"type":"string","format":"date-time","readOnly":true},"updated_at":{"type":"string","format":"date-time","readOnly":true}},"required":["company","created_at","email","id","name","password","phone","updated_at"]}}}}
```

## The LaunchpadUpdateUser object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"LaunchpadUpdateUser":{"type":"object","properties":{"full_name":{"type":"string","nullable":true,"maxLength":255},"email":{"type":"string","maxLength":255},"phone_number":{"type":"string","nullable":true,"maxLength":15},"role":{"enum":["IEEEAdmin","IEEEDC"],"type":"string","description":"* `IEEEAdmin` - IEEEAdmin\n* `IEEEDC` - IEEEDC"},"district":{"type":"string","nullable":true,"maxLength":100},"zone":{"type":"string","nullable":true,"maxLength":100},"remove_colleges":{"type":"array","items":{"type":"string"}},"add_colleges":{"type":"array","items":{"type":"string"}}},"required":["add_colleges","email","remove_colleges","role"]}}}}
```

## The LaunchpadUser object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"LaunchpadUser":{"type":"object","properties":{"id":{"type":"string","readOnly":true,"maxLength":36},"full_name":{"type":"string","nullable":true,"maxLength":255},"email":{"type":"string","maxLength":255},"phone_number":{"type":"string","nullable":true,"maxLength":15},"role":{"enum":["IEEEAdmin","IEEEDC"],"type":"string","description":"* `IEEEAdmin` - IEEEAdmin\n* `IEEEDC` - IEEEDC"},"district":{"type":"string","nullable":true,"maxLength":100},"zone":{"type":"string","nullable":true,"maxLength":100},"colleges":{"type":"array","items":{"type":"string"},"writeOnly":true}},"required":["colleges","email","id","role"]}}}}
```

## The LaunchpadUserList object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"LaunchpadUserList":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"full_name":{"type":"string","nullable":true,"maxLength":255},"email":{"type":"string","maxLength":255},"phone_number":{"type":"string","nullable":true,"maxLength":15},"role":{"type":"string","maxLength":20},"district":{"type":"string","nullable":true,"maxLength":100},"zone":{"type":"string","nullable":true,"maxLength":100},"colleges":{"type":"string","readOnly":true}},"required":["colleges","email","id","role"]}}}}
```

## The Leaderboard object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Leaderboard":{"type":"object","properties":{"name":{"type":"string","maxLength":100},"count":{"type":"integer"},"muid":{"type":"string","maxLength":100}},"required":["count","muid","name"]}}}}
```

## The LearningCircleDetail object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"LearningCircleDetail":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"ig":{"type":"string","readOnly":true},"title":{"type":"string","maxLength":100},"description":{"type":"string","nullable":true,"maxLength":500},"org":{"type":"string","readOnly":true,"nullable":true},"created_by":{"type":"string","readOnly":true}},"required":["created_by","ig","org","title"]}}}}
```

## The LearningCircleEnrollment object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"LearningCircleEnrollment":{"type":"object","properties":{"full_name":{"type":"string"},"muid":{"type":"string"},"email":{"type":"string"},"dwms_id":{"type":"string","nullable":true},"circle_name":{"type":"string"},"circle_ig":{"type":"string"},"organisation":{"type":"string"},"district":{"type":"string","nullable":true},"karma_earned":{"type":"integer"}},"required":["circle_ig","circle_name","district","dwms_id","email","full_name","karma_earned","muid","organisation"]}}}}
```

## The LearningCircleUser object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"LearningCircleUser":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"muid":{"type":"string","maxLength":100},"full_name":{"type":"string","maxLength":150},"email":{"type":"string","format":"email","maxLength":200},"mobile":{"type":"string","nullable":true,"maxLength":15}},"required":["email","full_name","muid"]}}}}
```

## The Location object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Location":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"location":{"type":"string","readOnly":true}},"required":["location"]}}}}
```

## The MentorList object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"MentorList":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"user_id":{"type":"string","readOnly":true},"user_full_name":{"type":"string","readOnly":true},"user_email":{"type":"string","readOnly":true},"mentor_tier":{"enum":["IG_MENTOR","MENTOR","COMPANY_MENTOR","CAMPUS_MENTOR"],"type":"string","description":"* `IG_MENTOR` - IG Mentor\n* `MENTOR` - Mentor\n* `COMPANY_MENTOR` - Company Mentor\n* `CAMPUS_MENTOR` - Campus Mentor"},"status":{"enum":["PENDING","APPROVED","REJECTED"],"type":"string","description":"* `PENDING` - Pending\n* `APPROVED` - Approved\n* `REJECTED` - Rejected"},"created_at":{"type":"string","format":"date-time","nullable":true},"updated_at":{"type":"string","format":"date-time","nullable":true}},"required":["user_email","user_full_name","user_id"]}}}}
```

## The MinimalCampus object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"MinimalCampus":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","maxLength":100},"org_type":{"type":"string","maxLength":25}},"required":["org_type","title"]}}}}
```

## The MinimalIG object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"MinimalIG":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"name":{"type":"string","maxLength":75},"icon":{"type":"string","maxLength":10}},"required":["icon","name"]}}}}
```

## The MinimalUser object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"MinimalUser":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"full_name":{"type":"string","maxLength":150},"muid":{"type":"string","maxLength":100},"profile_pic":{"type":"string","readOnly":true}},"required":["full_name","muid","profile_pic"]}}}}
```

## The MyEventInvite object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"MyEventInvite":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"entity_type":{"enum":["user_ticket","co_owner","collab_ig","collab_campus","collab_campus_ig","collab_company"],"type":"string","description":"* `user_ticket` - User Ticket\n* `co_owner` - Co-owner\n* `collab_ig` - Collaborating IG\n* `collab_campus` - Collaborating Campus\n* `collab_campus_ig` - Collaborating Campus IG\n* `collab_company` - Collaborating Company"},"entity_id":{"type":"string","maxLength":36},"entity_detail":{"type":"string","readOnly":true},"role_label":{"type":"string","nullable":true,"maxLength":100},"invite_status":{"enum":["pending","accepted","rejected","",null],"type":"string","description":"* `pending` - Pending\n* `accepted` - Accepted\n* `rejected` - Rejected","nullable":true},"rejection_reason":{"type":"string","nullable":true,"maxLength":500},"responded_at":{"type":"string","format":"date-time","nullable":true},"created_at":{"type":"string","format":"date-time","readOnly":true},"event_id":{"type":"string","readOnly":true},"event_title":{"type":"string","readOnly":true},"event_start_datetime":{"type":"string","format":"date-time","readOnly":true},"event_cover_image":{"type":"string","readOnly":true}},"required":["created_at","entity_detail","entity_id","entity_type","event_cover_image","event_id","event_start_datetime","event_title"]}}}}
```

## The Notification object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Notification":{"type":"object","properties":{"id":{"type":"string","format":"uuid","readOnly":true},"title":{"type":"string","maxLength":50},"description":{"type":"string","maxLength":200},"button":{"type":"string","nullable":true,"maxLength":10},"url":{"type":"string","nullable":true,"maxLength":100},"created_at":{"type":"string","format":"date-time","readOnly":true},"user":{"type":"string"},"created_by":{"type":"string"}},"required":["created_at","created_by","description","id","title","user"]}}}}
```

## The Order object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Order":{"type":"object","description":"Serializer for one-time order creation requests","properties":{"amount":{"type":"string","format":"decimal","pattern":"^-?\\d{0,10}(?:\\.\\d{0,2})?$"},"currency":{"type":"string","default":"INR"},"name":{"type":"string","maxLength":255},"donation_name":{"type":"string","maxLength":100},"email":{"type":"string","format":"email"},"phone_number":{"type":"string","maxLength":20},"pan_number":{"type":"string","maxLength":10},"address":{"type":"string"},"company":{"type":"string","maxLength":255},"donation_type":{"enum":["one-time","monthly","yearly"],"type":"string","description":"* `one-time` - one-time\n* `monthly` - monthly\n* `yearly` - yearly","default":"one-time"},"is_organisation":{"type":"boolean","default":false}},"required":["amount","email","name"]}}}}
```

## The Org object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Org":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","maxLength":100}},"required":["title"]}}}}
```

## The Organisation object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Organisation":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","maxLength":100},"code":{"type":"string","maxLength":12},"affiliation":{"type":"string","readOnly":true},"district":{"allOf":[{"$ref":"#/components/schemas/District"}],"readOnly":true}},"required":["affiliation","code","district","title"]},"District":{"type":"object","properties":{"name":{"type":"string","maxLength":75},"zone":{"allOf":[{"$ref":"#/components/schemas/Zone"}],"readOnly":true}},"required":["name","zone"]},"Zone":{"type":"object","properties":{"name":{"type":"string","maxLength":75},"state":{"allOf":[{"$ref":"#/components/schemas/State"}],"readOnly":true}},"required":["name","state"]},"State":{"type":"object","properties":{"name":{"type":"string","maxLength":75},"country":{"type":"string","readOnly":true}},"required":["country","name"]}}}}
```

## The OrganizationKarmaLogGetPostPatchDelete object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"OrganizationKarmaLogGetPostPatchDelete":{"type":"object","properties":{"org":{"type":"string"},"karma":{"type":"integer","maximum":2147483647,"minimum":-2147483648},"type":{"type":"string"}},"required":["karma","org","type"]}}}}
```

## The OrganizationKarmaTypeGetPostPatchDelete object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"OrganizationKarmaTypeGetPostPatchDelete":{"type":"object","properties":{"title":{"type":"string","maxLength":75},"karma":{"type":"integer","maximum":2147483647,"minimum":-2147483648},"description":{"type":"string","nullable":true,"maxLength":200}},"required":["karma","title"]}}}}
```

## The OrganizationVerify object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"OrganizationVerify":{"type":"object","properties":{"verified":{"type":"boolean"},"org_id":{"type":"string"}},"required":["org_id","verified"]}}}}
```

## The OrganizerInfo object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"OrganizerInfo":{"type":"object","description":"Reads organiser fields off the Event model directly.","properties":{"type":{"type":"string"},"ig":{"type":"string","readOnly":true},"campus":{"type":"string","readOnly":true},"company":{"type":"string","readOnly":true},"campus_ig_id":{"type":"string","nullable":true}},"required":["campus","campus_ig_id","company","ig","type"]}}}}
```

## The PatchedCollegeChange object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"PatchedCollegeChange":{"type":"object","properties":{"org_id":{"type":"string","maxLength":36},"department_id":{"type":"string","nullable":true,"maxLength":36}}}}}}
```

## The Project object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Project":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","maxLength":50},"description":{"type":"string"},"status":{"enum":["draft","published","archived"],"type":"string","description":"* `draft` - Draft\n* `published` - Published\n* `archived` - Archived"},"logo":{"type":"string","format":"uri","nullable":true},"images":{"type":"array","items":{"$ref":"#/components/schemas/ProjectImage"},"readOnly":true},"links":{"type":"array","items":{"$ref":"#/components/schemas/ProjectLink"},"readOnly":true},"skills":{"type":"array","items":{"$ref":"#/components/schemas/ProjectSkill"},"readOnly":true},"members":{"type":"array","items":{"$ref":"#/components/schemas/ProjectMember"},"readOnly":true},"votes":{"type":"array","items":{"$ref":"#/components/schemas/Vote"},"readOnly":true},"comments":{"type":"array","items":{"$ref":"#/components/schemas/Comment"},"readOnly":true},"created_by":{"type":"string","readOnly":true},"created_by_id":{"type":"string","readOnly":true},"updated_by":{"type":"string","readOnly":true},"created_at":{"type":"string","format":"date-time","readOnly":true},"updated_at":{"type":"string","format":"date-time","readOnly":true}},"required":["comments","created_at","created_by","created_by_id","description","images","links","members","skills","title","updated_at","updated_by","votes"]},"ProjectImage":{"type":"object","properties":{"image":{"type":"string","format":"uri","nullable":true}}},"ProjectLink":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"label":{"type":"string","maxLength":50},"url":{"type":"string","maxLength":500},"position":{"type":"integer","maximum":2147483647,"minimum":-2147483648}},"required":["label","url"]},"ProjectSkill":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"code":{"type":"string"},"icon":{"type":"string"}},"required":["code","icon","id","name"]},"ProjectMember":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"is_linked":{"type":"string","readOnly":true},"user_id":{"type":"string","readOnly":true},"muid":{"type":"string","readOnly":true},"full_name":{"type":"string","readOnly":true},"profile_pic":{"type":"string","readOnly":true},"external_name":{"type":"string","nullable":true,"maxLength":100},"role":{"type":"string","nullable":true,"maxLength":50},"created_at":{"type":"string","format":"date-time","readOnly":true}},"required":["created_at","full_name","is_linked","muid","profile_pic","user_id"]},"Vote":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"vote":{"enum":["upvote","downvote"],"type":"string","description":"* `upvote` - Upvote\n* `downvote` - Downvote"},"project":{"type":"string"},"user":{"type":"string","readOnly":true},"user_id":{"type":"string","readOnly":true},"created_at":{"type":"string","format":"date-time","readOnly":true},"updated_at":{"type":"string","format":"date-time","readOnly":true}},"required":["created_at","project","updated_at","user","user_id","vote"]},"Comment":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"comment":{"type":"string"},"project":{"type":"string"},"user":{"type":"string","readOnly":true},"user_id":{"type":"string","readOnly":true},"created_at":{"type":"string","format":"date-time","readOnly":true},"updated_at":{"type":"string","format":"date-time","readOnly":true}},"required":["comment","created_at","project","updated_at","user","user_id"]}}}}
```

## The ProjectImage object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"ProjectImage":{"type":"object","properties":{"image":{"type":"string","format":"uri","nullable":true}}}}}}
```

## The ProjectLink object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"ProjectLink":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"label":{"type":"string","maxLength":50},"url":{"type":"string","maxLength":500},"position":{"type":"integer","maximum":2147483647,"minimum":-2147483648}},"required":["label","url"]}}}}
```

## The ProjectMember object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"ProjectMember":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"is_linked":{"type":"string","readOnly":true},"user_id":{"type":"string","readOnly":true},"muid":{"type":"string","readOnly":true},"full_name":{"type":"string","readOnly":true},"profile_pic":{"type":"string","readOnly":true},"external_name":{"type":"string","nullable":true,"maxLength":100},"role":{"type":"string","nullable":true,"maxLength":50},"created_at":{"type":"string","format":"date-time","readOnly":true}},"required":["created_at","full_name","is_linked","muid","profile_pic","user_id"]}}}}
```

## The ProjectSkill object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"ProjectSkill":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"code":{"type":"string"},"icon":{"type":"string"}},"required":["code","icon","id","name"]}}}}
```

## The ProjectUpdate object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"ProjectUpdate":{"type":"object","description":"Accepts create / partial-update payload. Logo + images come as files;\nlinks + skills come as JSON-encoded strings (because the request is\nmultipart/form-data).","properties":{"title":{"type":"string","maxLength":50},"description":{"type":"string"},"status":{"enum":["draft","published","archived"],"type":"string","description":"* `draft` - Draft\n* `published` - Published\n* `archived` - Archived"},"logo":{"type":"string","format":"uri","nullable":true},"links_json":{"type":"string","writeOnly":true},"skill_ids_json":{"type":"string","writeOnly":true}}}}}}
```

## The PublicCompanyProfile object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"PublicCompanyProfile":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"name":{"type":"string","maxLength":75},"slug":{"type":"string","maxLength":100},"logo":{"type":"string","nullable":true},"description":{"type":"string"},"short_pitch":{"type":"string","nullable":true,"maxLength":900},"industry_sector":{"type":"string","nullable":true,"maxLength":75},"website_link":{"type":"string","nullable":true},"email":{"type":"string","nullable":true,"maxLength":100},"location":{"type":"string","nullable":true,"maxLength":150},"district_name":{"type":"string","readOnly":true},"state_name":{"type":"string","readOnly":true},"country_name":{"type":"string","readOnly":true},"company_size":{"type":"string","nullable":true,"maxLength":50},"linkedin_url":{"type":"string","nullable":true},"founded_year":{"type":"integer","maximum":65535,"minimum":0,"nullable":true},"remote_policy":{"type":"string","nullable":true,"maxLength":20},"culture_text":{"type":"string","nullable":true},"tech_stack":{"nullable":true},"perks":{"nullable":true},"testimonials":{"nullable":true},"gallery":{"nullable":true}},"required":["country_name","description","district_name","name","slug","state_name"]}}}}
```

## The Referral object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Referral":{"type":"object","properties":{"muid":{"type":"string"},"user":{"type":"string"},"invite_code":{"type":"string"},"is_coin":{"type":"boolean"}}}}}}
```

## The ReferralList object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"ReferralList":{"type":"object","properties":{"id":{"type":"string"},"full_name":{"type":"string"},"muid":{"type":"string"},"karma":{"type":"string","readOnly":true},"level":{"type":"string","readOnly":true}},"required":["full_name","id","karma","level","muid"]}}}}
```

## The Register object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Register":{"type":"object","properties":{"user":{"$ref":"#/components/schemas/User"},"integration":{"$ref":"#/components/schemas/Integration"},"referral":{"$ref":"#/components/schemas/Referral"}},"required":["user"]},"User":{"type":"object","properties":{"muid":{"type":"string","maxLength":100},"full_name":{"type":"string","maxLength":150},"email":{"type":"string","format":"email","maxLength":200},"mobile":{"type":"string","nullable":true,"maxLength":15},"gender":{"enum":["Male","Female","",null],"type":"string","description":"* `Male` - Male\n* `Female` - Female","nullable":true},"dob":{"type":"string","format":"date","nullable":true},"exist_in_guild":{"type":"boolean"},"joined":{"type":"string"},"roles":{"type":"string","readOnly":true},"profile_pic":{"type":"string","readOnly":true},"dynamic_type":{"type":"string","readOnly":true},"user_domains":{"type":"string","readOnly":true},"user_endgoals":{"type":"string","readOnly":true},"interested_in_work":{"type":"boolean"},"interested_in_gig_work":{"type":"boolean"}},"required":["dynamic_type","email","full_name","joined","muid","profile_pic","roles","user_domains","user_endgoals"]},"Integration":{"type":"object","properties":{"param":{"type":"string"},"title":{"type":"string"}},"required":["param","title"]},"Referral":{"type":"object","properties":{"muid":{"type":"string"},"user":{"type":"string"},"invite_code":{"type":"string"},"is_coin":{"type":"boolean"}}}}}}
```

## The ResetPassword object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"ResetPassword":{"type":"object","properties":{"token":{"type":"string"},"new_password":{"type":"string","minLength":8},"confirm_password":{"type":"string","minLength":8},"user_type":{"enum":["company","recruiter"],"type":"string","description":"* `company` - Company\n* `recruiter` - Recruiter"}},"required":["confirm_password","new_password","token","user_type"]}}}}
```

## The Role object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Role":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","maxLength":75}},"required":["id","title"]}}}}
```

## The RoleDropDown object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"RoleDropDown":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"title":{"type":"string","maxLength":75}},"required":["id","title"]}}}}
```

## The ShareUserProfileUpdate object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"ShareUserProfileUpdate":{"type":"object","properties":{"is_public":{"type":"boolean"},"updated_by":{"type":"string"},"updated_at":{"type":"string"}}}}}}
```

## The Skill object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Skill":{"type":"object","description":"Full skill serializer for CRUD operations","properties":{"id":{"type":"string","readOnly":true},"name":{"type":"string","maxLength":75},"code":{"type":"string","maxLength":20},"description":{"type":"string","nullable":true},"icon":{"type":"string","nullable":true,"maxLength":100},"is_active":{"type":"boolean"},"created_at":{"type":"string","format":"date-time","readOnly":true},"updated_at":{"type":"string","format":"date-time","readOnly":true}},"required":["code","created_at","id","name","updated_at"]}}}}
```

## The SkillDropdown object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"SkillDropdown":{"type":"object","description":"Minimal serializer for dropdown selections","properties":{"id":{"type":"string","maxLength":36},"name":{"type":"string","maxLength":75},"code":{"type":"string","maxLength":20}},"required":["code","name"]}}}}
```

## The State object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"State":{"type":"object","properties":{"name":{"type":"string","maxLength":75},"country":{"type":"string","readOnly":true}},"required":["country","name"]}}}}
```

## The StudentInfo object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"StudentInfo":{"type":"object","properties":{"full_name":{"type":"string"},"muid":{"type":"string"},"circle_name":{"type":"string"},"circle_ig":{"type":"string"},"organisation":{"type":"string"},"dwms_id":{"type":"string","nullable":true},"karma_earned":{"type":"integer"}},"required":["circle_ig","circle_name","dwms_id","full_name","karma_earned","muid","organisation"]}}}}
```

## The StudentLeaderboard object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"StudentLeaderboard":{"type":"object","properties":{"full_name":{"type":"string"},"total_karma":{"type":"integer","default":0},"institution":{"type":"string","readOnly":true},"profile_pic":{"type":"string","readOnly":true}},"required":["full_name","institution","profile_pic"]}}}}
```

## The SubjectInfo object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"SubjectInfo":{"type":"object","properties":{"type":{"type":"string"},"did":{"type":"string"},"full_name":{"type":"string"},"email":{"type":"string","format":"email"},"phone":{"type":"string"}},"required":["did","email","full_name","type"]}}}}
```

## The Subscription object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Subscription":{"type":"object","description":"Serializer for subscription creation requests","properties":{"amount":{"type":"string","format":"decimal","pattern":"^-?\\d{0,10}(?:\\.\\d{0,2})?$"},"currency":{"type":"string","default":"INR"},"name":{"type":"string","maxLength":255},"donation_name":{"type":"string","maxLength":100},"email":{"type":"string","format":"email"},"phone_number":{"type":"string","maxLength":20},"pan_number":{"type":"string","maxLength":10},"address":{"type":"string"},"company":{"type":"string","maxLength":255},"donation_type":{"enum":["one-time","monthly","yearly"],"type":"string","description":"* `one-time` - one-time\n* `monthly` - monthly\n* `yearly` - yearly"},"is_organisation":{"type":"boolean","default":false}},"required":["amount","donation_type","email","name"]}}}}
```

## The TaskCompletedLeaderBoard object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"TaskCompletedLeaderBoard":{"type":"object","properties":{"muid":{"type":"string","maxLength":100},"is_public":{"type":"boolean","default":false},"rank":{"type":"integer"},"full_name":{"type":"string","maxLength":150},"karma":{"type":"integer"},"org":{"type":"string","nullable":true},"district_name":{"type":"string","nullable":true},"state":{"type":"string","nullable":true},"profile_pic":{"type":"string","readOnly":true}},"required":["district_name","full_name","karma","muid","org","profile_pic","rank","state"]}}}}
```

## The UnverifiedOrganizationCreate object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UnverifiedOrganizationCreate":{"type":"object","properties":{"title":{"type":"string","maxLength":100},"org_type":{"type":"string","maxLength":25},"graduation_year":{"type":"integer","nullable":true},"department":{"type":"string","nullable":true}},"required":["org_type","title"]}}}}
```

## The UnverifiedOrganizations object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UnverifiedOrganizations":{"type":"object","properties":{"id":{"type":"string","readOnly":true},"title":{"type":"string","maxLength":100},"org_type":{"type":"string","maxLength":25},"graduation_year":{"type":"integer","maximum":2147483647,"minimum":-2147483648,"nullable":true},"department":{"type":"string","readOnly":true},"created_by":{"type":"string","readOnly":true},"created_at":{"type":"string","format":"date-time","readOnly":true}},"required":["created_at","created_by","department","id","org_type","title"]}}}}
```

## The User object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"User":{"type":"object","properties":{"muid":{"type":"string","maxLength":100},"full_name":{"type":"string","maxLength":150},"email":{"type":"string","format":"email","maxLength":200},"mobile":{"type":"string","nullable":true,"maxLength":15},"gender":{"enum":["Male","Female","",null],"type":"string","description":"* `Male` - Male\n* `Female` - Female","nullable":true},"dob":{"type":"string","format":"date","nullable":true},"exist_in_guild":{"type":"boolean"},"joined":{"type":"string"},"roles":{"type":"string","readOnly":true},"profile_pic":{"type":"string","readOnly":true},"dynamic_type":{"type":"string","readOnly":true},"user_domains":{"type":"string","readOnly":true},"user_endgoals":{"type":"string","readOnly":true},"interested_in_work":{"type":"boolean"},"interested_in_gig_work":{"type":"boolean"}},"required":["dynamic_type","email","full_name","joined","muid","profile_pic","roles","user_domains","user_endgoals"]}}}}
```

## The UserAchievements object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UserAchievements":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"user_id":{"type":"string"},"achievement":{"allOf":[{"$ref":"#/components/schemas/AchievementBasic"}],"readOnly":true},"is_issued":{"type":"boolean"},"vc_url":{"type":"string","maxLength":100}},"required":["achievement","user_id"]},"AchievementBasic":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"achievement_name":{"type":"string"},"description":{"type":"string","maxLength":300},"icon":{"type":"string","maxLength":100},"icon_url":{"type":"string","readOnly":true},"level_id":{"type":"string","nullable":true},"tags":{},"template_id":{"type":"string","nullable":true,"maxLength":100}},"required":["achievement_name","description","icon_url","tags"]}}}}
```

## The UserBasicDetails object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UserBasicDetails":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"full_name":{"type":"string","maxLength":150},"muid":{"type":"string","maxLength":100},"interest_groups":{"type":"string","readOnly":true},"organizations":{"type":"string","readOnly":true},"profile_pic":{"type":"string","readOnly":true},"karma":{"type":"string"}},"required":["full_name","interest_groups","karma","muid","organizations","profile_pic"]}}}}
```

## The UserCircleList object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UserCircleList":{"type":"object","description":"Serializes a UserCircleLink entry for the 'My Circles' list.","properties":{"circle_id":{"type":"string","readOnly":true},"title":{"type":"string","readOnly":true},"ig":{"type":"string","readOnly":true},"org":{"type":"string","readOnly":true,"nullable":true},"is_lead":{"type":"boolean","readOnly":true},"total_members":{"type":"string","readOnly":true},"joined_at":{"type":"string","format":"date-time","readOnly":true}},"required":["circle_id","ig","is_lead","joined_at","org","title","total_members"]}}}}
```

## The UserCountry object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UserCountry":{"type":"object","properties":{"country_name":{"type":"string"}},"required":["country_name"]}}}}
```

## The UserDetail object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UserDetail":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"muid":{"type":"string","maxLength":100},"email":{"type":"string","format":"email","maxLength":200},"role":{"type":"string","readOnly":true},"full_name":{"type":"string","maxLength":150}},"required":["email","full_name","muid","role"]}}}}
```

## The UserIgEdit object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UserIgEdit":{"type":"object","properties":{"interest_group":{"type":"array","items":{},"writeOnly":true}},"required":["interest_group"]}}}}
```

## The UserIgList object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UserIgList":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"name":{"type":"string","maxLength":75}},"required":["name"]}}}}
```

## The UserLeaderboard object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UserLeaderboard":{"type":"object","properties":{"full_name":{"type":"string","readOnly":true},"karma":{"type":"integer"},"interest_groups":{"type":"string","readOnly":true},"organizations":{"type":"string","readOnly":true}},"required":["full_name","interest_groups","karma","organizations"]}}}}
```

## The UserLevel object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UserLevel":{"type":"object","properties":{"name":{"type":"string","maxLength":36},"tasks":{"type":"string","readOnly":true},"karma":{"type":"integer","maximum":2147483647,"minimum":-2147483648}},"required":["karma","name","tasks"]}}}}
```

## The UserLog object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UserLog":{"type":"object","properties":{"task_name":{"type":"string","readOnly":true},"karma":{"type":"integer","maximum":2147483647,"minimum":-2147483648},"created_date":{"type":"string"}},"required":["created_date","karma","task_name"]}}}}
```

## The UserOrgLink object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UserOrgLink":{"type":"object","properties":{"department":{"type":"string","nullable":true},"graduation_year":{"type":"string","nullable":true},"organization":{"type":"string","nullable":true},"is_alumni":{"type":"boolean"},"is_student":{"type":"boolean","nullable":true,"default":false}},"required":["organization"]}}}}
```

## The UserPermute object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UserPermute":{"type":"object","properties":{"full_name":{"type":"string"},"user_domains":{"type":"string","readOnly":true},"college_name":{"type":"string","readOnly":true}},"required":["college_name","full_name","user_domains"]}}}}
```

## The UserProfile object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UserProfile":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"joined":{"type":"string","format":"date-time"},"full_name":{"type":"string","maxLength":150},"gender":{"enum":["Male","Female","",null],"type":"string","description":"* `Male` - Male\n* `Female` - Female","nullable":true},"muid":{"type":"string","maxLength":100},"roles":{"type":"string","readOnly":true},"role_verification":{"type":"string","readOnly":true},"college_id":{"type":"string","readOnly":true},"college_code":{"type":"string","readOnly":true},"org_district_id":{"type":"string","readOnly":true},"karma":{"type":"integer"},"rank":{"type":"string","readOnly":true},"karma_distribution":{"type":"string","readOnly":true},"level":{"type":"string"},"profile_pic":{"type":"string","readOnly":true},"cover_pic":{"type":"string","readOnly":true},"interest_groups":{"type":"string","readOnly":true},"is_public":{"type":"boolean"},"percentile":{"type":"string","readOnly":true}},"required":["college_code","college_id","cover_pic","full_name","interest_groups","joined","karma_distribution","muid","org_district_id","percentile","profile_pic","rank","role_verification","roles"]}}}}
```

## The UserProfileEdit object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UserProfileEdit":{"type":"object","properties":{"full_name":{"type":"string","maxLength":150},"email":{"type":"string","format":"email","maxLength":200},"mobile":{"type":"string","nullable":true,"maxLength":15},"communities":{"type":"array","items":{},"writeOnly":true},"gender":{"enum":["Male","Female","",null],"type":"string","description":"* `Male` - Male\n* `Female` - Female","nullable":true},"dob":{"type":"string","format":"date","nullable":true},"district":{"type":"string","nullable":true}},"required":["communities","email","full_name"]}}}}
```

## The UserRank object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UserRank":{"type":"object","properties":{"full_name":{"type":"string"},"role":{"type":"string","readOnly":true},"rank":{"type":"string","readOnly":true},"karma":{"type":"string","readOnly":true},"interest_groups":{"type":"string","readOnly":true}},"required":["full_name","interest_groups","karma","rank","role"]}}}}
```

## The UserState object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UserState":{"type":"object","properties":{"state_name":{"type":"string"}},"required":["state_name"]}}}}
```

## The UserTerm object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UserTerm":{"type":"object","properties":{"is_userterms_approved":{"type":"boolean"},"user":{"type":"string"}},"required":["user"]}}}}
```

## The UserZone object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"UserZone":{"type":"object","properties":{"zone_name":{"type":"string"}},"required":["zone_name"]}}}}
```

## The Vote object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Vote":{"type":"object","properties":{"id":{"type":"string","maxLength":36},"vote":{"enum":["upvote","downvote"],"type":"string","description":"* `upvote` - Upvote\n* `downvote` - Downvote"},"project":{"type":"string"},"user":{"type":"string","readOnly":true},"user_id":{"type":"string","readOnly":true},"created_at":{"type":"string","format":"date-time","readOnly":true},"updated_at":{"type":"string","format":"date-time","readOnly":true}},"required":["created_at","project","updated_at","user","user_id","vote"]}}}}
```

## The WadhwaniCollegeLeaderboard object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"WadhwaniCollegeLeaderboard":{"type":"object","properties":{"code":{"type":"string"},"title":{"type":"string"},"total_karma":{"type":"integer"},"students":{"type":"integer"}},"required":["code","students","title","total_karma"]}}}}
```

## The WadhwaniZoneLeaderboard object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"WadhwaniZoneLeaderboard":{"type":"object","properties":{"zone_name":{"type":"string"},"total_karma":{"type":"integer"},"students":{"type":"integer"}},"required":["students","total_karma","zone_name"]}}}}
```

## The WeeklyKarma object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"WeeklyKarma":{"type":"object","properties":{"college_name":{"type":"string","readOnly":true}},"required":["college_name"]}}}}
```

## The Zone object

```json
{"openapi":"3.0.3","info":{"title":"muLearn API","version":"1.0.0"},"components":{"schemas":{"Zone":{"type":"object","properties":{"name":{"type":"string","maxLength":75},"state":{"allOf":[{"$ref":"#/components/schemas/State"}],"readOnly":true}},"required":["name","state"]},"State":{"type":"object","properties":{"name":{"type":"string","maxLength":75},"country":{"type":"string","readOnly":true}},"required":["country","name"]}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mulearn.org/api-reference/models.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
