# GraphQL schema example # # https://gqlgen.com/getting-started/ scalar Int64 type User { id: ID! email: String! signupMethod: String! firstName: String lastName: String emailVerifiedAt: Int64 password: String image: String createdAt: Int64 updatedAt: Int64 } type VerificationRequest { id: ID! identifier: String token: String email: String expires: Int64 createdAt: Int64 updatedAt: Int64 } type Error { message: String! reason: String! } type LoginResponse { message: String! accessToken: String accessTokenExpiresAt: Int64 user: User } type Response { message: String! } input SignUpInput { firstName: String lastName: String email: String! password: String! cofirmPassword: String! image: String } input LoginInput { email: String! password: String! } input VerifyEmailInput { token: String! } input ResendVerifyEmailInput { email: String! } input UpdateProfileInput { oldPassword: String newPassword: String confirmNewPassword: String firstName: String lastName: String image: String email: String } input ForgotPasswordRequestInput { email: String! } input ForgotPasswordInput { token: String! newPassword: String! confirmPassword: String! } type Mutation { signup(params: SignUpInput!): Response! login(params: LoginInput!): LoginResponse! logout: Response! updateProfile(params: UpdateProfileInput!): Response! verifyEmail(params: VerifyEmailInput!): LoginResponse! resendVerifyEmail(params: ResendVerifyEmailInput!): Response! forgotPasswordRequest(params: ForgotPasswordRequestInput!): Response! forgotPassword(params: ForgotPasswordInput!): Response! } type Query { users: [User!]! token: LoginResponse profile: User! verificationRequests: [VerificationRequest!]! }