File size: 1,019 Bytes
9c57563
d9826a8
9c57563
 
 
 
 
 
d9826a8
 
e9a4fe2
 
 
 
 
 
 
 
 
 
 
 
 
 
d9826a8
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
from pydantic import BaseModel, EmailStr
from typing import Optional

class EmailRequest(BaseModel):
    email: EmailStr

class VerifyRequest(BaseModel):
    email: EmailStr
    code: str

class OnboardingRequest(BaseModel):
    user_id: int
    firstName: Optional[str] = None
    lastName: Optional[str] = None
    university: Optional[str] = None
    career: Optional[str] = None
    semester: Optional[int] = None
    strengths: Optional[list] = None
    weaknesses: Optional[list] = None
    studyStyle: Optional[str] = None
    careerInterests: Optional[list] = None
    futureRoles: Optional[list] = None
    skillsToLearn: Optional[list] = None

class UserRequest(BaseModel):
    user_id: int

class MatchRequest(BaseModel):
    user_id: int
    candidate_id: int
    candidate_name: str
    message: Optional[str] = None
    match_type: Optional[str] = 'MENTOR'
    compatibility_score: Optional[int] = 0

class MatchRespondRequest(BaseModel):
    user_id: int
    action: str
    message: Optional[str] = None