Skip to content
Eddy Yang edited this page Dec 5, 2023 · 5 revisions

Schedule

  • Get schedules: list[str] (hard course), list[str] (soft course), int(num of course), list[json] (hard preferences), list[json] (soft preferences), int(num of schedules) -> list[json, list[enum[status], list[enum[status]] (list of schedules, satisfiability of hard and soft preferences)

Friends

  • Fetch friend list: uid -> list[uid, name]
  • Fetch friend requests: uid -> list[uid, name]
  • Send friend request: uid, uid -> enum[status]
  • Approve friend request: uid, uid -> enum[status]
  • Deny friend request: uid, uid -> enum[status]
  • Fetch friend profile: uid, uid -> profile

Sign in/up

(hashed password)

  • Sign up: name, email, pwd -> enum[status], (uid, name), cookie
  • Sign in: email, pwd -> enum[status], (uid, name), cookie
  • Log out: uid -> enum[status]

Profile

  • Fetch user profile: uid -> profile
  • Set default schedule: uid, schedule -> enum[status]