Credential
Credential -
active:Boolean -
createdAt:DateTime -
expiresAt:DateTime? -
id:ID -
name:String -
token:String -
type:CredentialTypeGoogleGroupAccessTokenPasswordToken
-
user:User -
userAgent:String
Les personnes utilisant l'application.
L'inscription se fait en deux ou trois parties: la première consiste à donner simplement une adresse e-mail et à la valider. Ensuite, on rentre le reste des informations. Enfin, si la personne déclare appartenir à une école mais que l'e-mail n'est pas dans le domaine de l'école (ce qui prouve automatiquement que la personne est étudiante), il faut qu'un admin confirme manuellement.
Ce n'est qu'après cette validation (quand elle est nécessaire) que l'objet UserCandidate est transformé en User.
La mutation login permet la connexion.
Credential active:
Boolean createdAt:
DateTime expiresAt:
DateTime? id:
ID name:
String token:
String type:
CredentialType Google GroupAccessToken Password Token user:
User userAgent:
String EmailChange implements NodecreatedAt:
DateTime email:
String id:
ID localID:
LocalID pending:
Boolean updatedAt:
DateTime user:
User userId:
ID GodparentRequest QuickSignup implements Nodecode:
String createdAt:
DateTime expired:
Boolean id:
ID localID:
LocalID school:
School schoolId:
ID updatedAt:
DateTime validUntil:
DateTime SignupCompletionResult needsManualValidation:
Boolean token:
Credential? address:
String? admin:
Boolean adminOf:
[ StudentAssociation] adminOfStudentAssociation(studentAssociation: String) → BooleanArguments
studentAssociation: String answeredForms(after, before, first, last) → Connection< Form>Arguments
after: String? before: String? first: Int? last: Int? apprentice:
Boolean articles(after, before, first, last) → Connection< Article>Arguments
after: String? before: String? first: Int? last: Int? birthday:
DateTime? boardMemberships:
[ GroupMember] bookedTo(event: LocalID, using: LocalID?) → BooleanArguments
event: LocalID using: LocalID? booking(beneficiary: String?, event: LocalID) → Registration?Arguments
beneficiary: String? event: LocalID bookings(...) → Connection< Registration>Arguments
after: String? before: String? first: Int? forUserOnly: Boolean? last: Int? bot:
Boolean canAccessDocuments:
Boolean canAddMembersTo:
[ Group] canBeEdited:
Boolean canBookTicket(id: LocalID) → CanBookExplanationArguments
id: LocalID canContributeTo:
[ StudentAssociation] canCreateEventsOn:
[ Group] canCreateGroupsOn:
[ StudentAssociation] canCreatePostsOn:
[ Group] canCreateThemesOn:
[ Group] canEditGroup(uid: String) → BooleanArguments
uid: String canEditGroups:
Boolean canEditPermissions:
Boolean canEditProfile(assert: String?) → BooleanArguments
assert: String? canManageAnnouncements:
Boolean cededImageRightsToTVn7:
Boolean contributesTo:
[ StudentAssociation]? contributesWith:
[ ContributionOption] contributionOptions:
[ ContributionOption] createdAt:
DateTime credentials:
[ Credential] deletionConsequences:
[ String] description:
String descriptionHtml:
HTML email:
Email? emailChangeRequests(pending: Boolean?) → [ EmailChange]Arguments
pending: Boolean? enabledNotificationChannels:
[ NotificationChannel] external:
Boolean familyTree:
FamilyTree nesting:
String users:
[ User] firstName:
String fullName:
String gdprExport:
URL? godchildren:
[ User] godparent:
User? graduationYear:
Int groups:
[ GroupMember] groupsEditorOf:
[ StudentAssociation] hasSeparateDarkPicture:
Boolean id:
ID incomingGodparentRequests:
[ GodparentRequest] isMe:
Boolean? lastName:
String latestVersionSeenInChangelog:
String links:
[ Link] localID:
LocalID lydiaPhone:
String? major:
Major? majorId:
ID? managedEvents:
[ EventManager] minor:
Minor? nickname:
String otherEmails:
[ Email]? outgoingGodparentRequests:
[ GodparentRequest] partiallyAnsweredForms(after, before, first, last) → Connection< Form>Arguments
after: String? before: String? first: Int? last: Int? pendingContributions:
[ ContributionOption] phone:
String? pictureAltText:
String pictureFile:
String pictureFileDark:
String pictureURL(dark: Boolean = false, timestamp: Boolean = true) → StringArguments
dark: Boolean timestamp: Boolean = true pronouns:
String schoolEmail:
Email? schoolUid:
String? studentAssociationAdmin:
Boolean uid:
String yearTier:
Int UserCandidate implements Nodeapprentice:
Boolean birthday:
DateTime? cededImageRightsToTVn7:
Boolean createdAt:
DateTime? email:
String emailIsSchoolEmail:
Boolean emailValidated:
Boolean firstName:
String fullName:
String graduationYear:
Int id:
ID lastName:
String localID:
LocalID major:
Major? majorId:
ID? needsManualValidation:
Boolean? needsManualValidationForMajor(major: String) → Boolean?Arguments
major: String suggestedUid:
String uid:
String usingQuickSignup:
Boolean NUserCandidateUpdateInput birthday:
DateTime? cededImageRightsToTVn7:
Boolean? firstName:
String? graduationYear:
Int? lastName:
String? major:
UID? uid:
UID? NUserProfileInput address:
String? birthday:
DateTime? description:
Markdown? firstName:
String? lastName:
String? nickname:
String? otherEmails:
[ Email]? phone:
PhoneNumber? pronouns:
String? unsetBirthday:
Boolean? unsetPhone:
Boolean? allUsers(after: String?, before: String?, first: Int?, last: Int?) → Connection< User>assertMe() → Userbirthdays(activeOnly: Boolean?, now: DateTime?, width: Int?) → [ User]bookmarked(path: String) → BooleanArguments
path: String existsInSchoolLdap(email: String) → BooleangodparentRequest(id: ID) → GodparentRequestgodparentRequests() → [ GodparentRequest]me() → User?quickSignup(id: LocalID) → QuickSignupArguments
id: LocalID quickSignups(after: String?, before: String?, first: Int?, last: Int?) → Connection< QuickSignup>searchUsers(q: String?, similarityCutoff: Float?) → [ UserSearchResult]suggestedUid(firstName: String, lastName: String) → StringArguments
firstName: String lastName: String user(id: ID?, uid: String?) → UseruserByEmail(email: String) → UseruserCandidate(token: String) → UserCandidateuserCandidateByEmail(email: String) → UserCandidateuserCandidates(after: String?, before: String?, first: Int?, last: Int?) → Connection< UserCandidate>userCandidatesCount() → IntacceptUserCandidate(email: String) → Result< UserCandidate>answerGodparentRequest(accept: Boolean, id: LocalID) → Result< GodparentRequest>bookmark(path: String) → BookmarkArguments
path: String completeSignup(token: String) → SignupCompletionResultcreateBot(major: String?, name: String, password: String, uid: String) → UserArguments
major: String? name: String password: String uid: String createGdprExport(force: Boolean = false) → Result< URL>Arguments
force: Boolean createPasswordReset(email: String) → Error | MutationCreatePasswordResetSuccess | ZodErrorcreateQuickSignup(school: String, validUntil: DateTime) → QuickSignupArguments
school: String validUntil: DateTime deleteGodchild(child: UID, parent: UID) → Result< User>deleteGodparent(child: UID, parent: UID) → Result< User>deleteQuickSignup(code: String) → QuickSignupdeleteToken(id: ID) → BooleandeleteUser() → Result< User>deleteUserPicture(uid: String) → Booleanlogin(clientId: String?, email: String, password: String) → Result< Credential>logout() → BooleanrefuseUserCandidate(email: String, reason: String) → Result< UserCandidate>registerGoogleCredential(code: String) → Error | MutationRegisterGoogleCredentialSuccess | ZodErrorArguments
code: String renameSession(id: ID, name: String) → BooleanrequestEmailChange(callbackURL: URL, newEmail: Email, user: UID) → Result< EmailChange>Arguments
callbackURL: URL newEmail: Email user: UID resetPassword(disconnectAll: Boolean, newPassword: String, oldPassword: String, uid: String) → Error | MutationResetPasswordSuccess | ZodErrorsaveLydiaPhoneNumber(phoneNumber: String) → Result< User>startSignup(...) → Result< UserCandidate>Arguments
email: Email firstName: String graduationYear: Int lastName: String mailVerificationCallbackURL: URL major: UID? password: String passwordConfirmation: String quickSignupCode: String? syncUserLdap(uid: String) → Booleanunbookmark(path: String) → Bookmark?Arguments
path: String updateNotificationSettings(enabledChannels: [ NotificationChannel], uid: String) → [ NotificationChannel]updateUser(...) → Result< User>Déprécié
Use `updateUserProfile`, `requestEmailChange` and other `updateUser*` mutations instead
Arguments
address: String apprentice: Boolean birthday: DateTime? cededImageRightsToTVn7: Boolean contributesWith: [ ID]? description: String email: String firstName: String godparentUid: String? graduationYear: Int? lastName: String majorId: ID? minorId: ID? nickname: String otherEmails: [ String] phone: String uid: UID updateUserCandidate(email: Email, input: UserCandidateUpdateInput, register: Boolean) → Result< UserCandidate>Arguments
email: Email input: UserCandidateUpdateInput register: Boolean updateUserCurriculum(...) → Result< User>Arguments
apprentice: Boolean? external: Boolean? graduationYear: PositiveInt? major: UID? uid: UID updateUserPermissions(adminOf: [ UID]?, canAccessDocuments: Boolean?, canEditGroupsOf: [ UID]?, user: UID) → Result< User>updateUserPicture(file: File, uid: String) → StringupdateUserProfile(profile: UserProfileInput, uid: UID) → Result< User>upsertGodparentRequest(godchildUid: String, godparentUid: String, id: ID?) → Result< GodparentRequest>usePasswordReset(newPassword: String, token: String) → Error | MutationUsePasswordResetSuccess | ZodErrorvalidateEmail(token: String) → Result< EmailChange>