POST members
BearerAuthorizationBearer <token>Paste your JWT token here
The data transfer object containing registration information.
application/json- body
Defines the DTO for posting a member, containing the necessary information for creating a new member, including personal details, contact information, and other relevant properties. The PostMemberDTO is used to transfer data from the client to the server when creating a new member, ensuring that all required information is provided and validated appropriately for the creation process.
studentNumber*stringThe student number of the member.
firstName*stringThe first name of the member.
0 <= length <= 60lastName*stringThe last name of the member.
0 <= length <= 60email*stringThe email address of the member.
^[a-zA-Z0-9!#$%&'*+/=?^_`{|}~.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)+$0 <= length <= 100phoneNumber*stringThe phone number of the member.
^(\+?[1-9]\d{6,14}|0[1-9]\d{8})$1 <= lengthstreet*stringThe street of the member.
0 <= length <= 40houseNumber*stringThe house number of the member.
^[1-9][0-9]*(?:[\s-]?[a-zA-Z0-9]{1,3})?$1 <= lengthpostalCode*stringThe postal code of the member.
0 <= length <= 10city*stringThe city of the member.
0 <= length <= 40dateOfBirth*stringThe date of birth of the member.
date-timeparentPhoneNumber?|Phone number of the member's parent or guardian, if the member is a minor.
^(\+?[1-9]\d{6,14}|0[1-9]\d{8})$subscribedMailinglistIds?array<string>|The IDs of the mailing lists the member should be subscribed to.
preferredLanguage*LanguageDefines the language preference of a member, which can be either Dutch (NL) or English (EN). This enumeration is used to indicate the preferred language for communication and content presentation for a member within the system.
int32"NL""EN"studyEnrollments?array<>|Studies where the member is enrolled.
begunstiger?|Indicates whether the member is a "Begunstiger".
Created
application/json- response
Represents a member of the organization. A member has various properties such as personal information, contact details, registration date, and relationships with other entities such as enrollments, group memberships, and announcements. This entity is used to manage and organize members within the system, allowing for better communication, access control, and personalized experiences based on member preferences and attributes.
id?stringThe unique identifier of a member, assigned incrementally.
uuidauthSystemUserId?|The id of the member in the authentication system, used for authentication and authorization.
uuidcalendarId?stringThe unguessable identifier under which this member's personal iCalendar feed is published. Because calendar clients cannot authenticate, possession of this value is the only thing guarding the feed, so it is always generated with M:System.Guid.NewGuid and never derived from Backend.Models.Domain.Member.Id. It defaults to a freshly generated value so that a member can never be persisted with a guessable identifier, and it can be regenerated by the member to revoke a leaked feed URL.
uuidactivationEmailSentAt?|When the one-time account-activation email (verify email + set password) was sent to this member, if ever. Used to make sending it idempotent regardless of how many times the confirmation page is visited.
date-timestudyStatusMailSentAt?|When the annual study-status update email was last sent to this member, if ever. Used to make sending it idempotent across retries of the yearly Hangfire job: a run only mails members whose value is null or older than 24 hours, so a Hangfire retry after a partial failure never re-mails someone already notified earlier in the same run. A 24-hour window (rather than "same calendar year") is used deliberately so that changing the configured send date to re-trigger the job later in the same year is not silently skipped for everyone.
date-timeoutstandingPaymentMailSentAt?|When the outstanding-payment reminder email was last sent to this member, if ever. Used to make sending it idempotent across retries of the weekly Hangfire job: a run only mails members whose value is null or older than 24 hours, so a Hangfire retry after a partial failure never re-mails someone already notified earlier in the same run, while still allowing next week's run to mail them again if their balance is still outstanding.
date-timestudentNumber*stringThe student number of the member.
1 <= lengthfirstName*stringThe first name of the member.
0 <= length <= 60lastName*stringThe last name of the member.
0 <= length <= 60email*stringThe email address of the member.
^[a-zA-Z0-9!#$%&'*+/=?^_`{|}~.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)+$0 <= length <= 100phoneNumber*stringThe phone number of the member.
^(\+?[1-9]\d{6,14}|0[1-9]\d{8})$1 <= lengthparentPhoneNumber?|Phone number of the member's parent or guardian, if the member is a minor.
^(\+?[1-9]\d{6,14}|0[1-9]\d{8})$street*stringThe street of the member.
0 <= length <= 40houseNumber*stringThe house number of the member.
^[1-9][0-9]*(?:[\s-]?[a-zA-Z0-9]{1,3})?$0 <= length <= 10postalCode*stringThe postal code of the member.
0 <= length <= 10city*stringThe city of the member.
0 <= length <= 40dateOfBirth?stringThe date of birth of the member.
date-timenotes?|The notes about the member.
registeredOn?stringThe date and time at which the member registered.
date-timestudyEnrollments?array<>The enrollments associated with this member.
enrollments?array<>The activities this member is enrolled in.
groupMemberships?array<>The groups this member is part of.
preferredLanguage?LanguageDefines the language preference of a member, which can be either Dutch (NL) or English (EN). This enumeration is used to indicate the preferred language for communication and content presentation for a member within the system.
int32"NL""EN"gratie?booleanIndicates whether the member is granted a fee waiver.
lidVanVerdienste?booleanIndicates whether the member is a "Lid van Verdienste".
ereLid?booleanIndicates whether the member is an honorary member.
begunstiger?booleanIndicates whether the member is a "Begunstiger".
suspended?booleanIndicates whether the member is suspended.
isDeleted?booleanIndicates whether the member account is soft-deleted and anonymized.
announcements?array<>The announcements created by this member.
profilePicturePath?|The path to the profile picture of the member.
profilePictureFileName?|The file name of the profile picture of the member.
curl -X POST 'https://example.com/members' \ -H 'Content-Type: application/json' \ -d '{ "studentNumber": "string", "firstName": "string", "lastName": "string", "email": "string", "phoneNumber": "string", "street": "string", "houseNumber": "string", "postalCode": "string", "city": "string", "dateOfBirth": "2019-08-24T14:15:22Z", "preferredLanguage": "NL"}'{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "authSystemUserId": "21acf037-4cf7-4197-964d-bb28bd02794e", "calendarId": "9869a533-1db4-43d9-aed3-3d63324120f5", "activationEmailSentAt": "2019-08-24T14:15:22Z", "studyStatusMailSentAt": "2019-08-24T14:15:22Z", "outstandingPaymentMailSentAt": "2019-08-24T14:15:22Z", "studentNumber": "string", "firstName": "string", "lastName": "string", "email": "string", "phoneNumber": "string", "parentPhoneNumber": "string", "street": "string", "houseNumber": "string", "postalCode": "string", "city": "string", "dateOfBirth": "2019-08-24T14:15:22Z", "notes": "string", "registeredOn": "2019-08-24T14:15:22Z", "studyEnrollments": [ { "id": 0, "memberId": "92983ab9-49c8-444b-85ae-6e40402cf72e", "member": {}, "studyId": 0, "study": { "id": 0, "title": "string", "nominalDurationYears": 0, "type": "Bachelor", "active": true, "enrollments": [ {} ] }, "enrollmentDate": "2019-08-24T14:15:22Z", "completionDate": "2019-08-24T14:15:22Z", "status": "Enrolled" } ], "enrollments": [ { "activityId": 0, "activity": { "id": 0, "name": "string", "price": 0.1, "posterFileName": "string", "posterPath": "string", "dutchDescription": "string", "englishDescription": "string", "dateTimeStart": "2019-08-24T14:15:22Z", "dateTimeEnd": "2019-08-24T14:15:22Z", "unenrollmentDeadline": "2019-08-24T14:15:22Z", "enrollmentDeadline": "2019-08-24T14:15:22Z", "enrollOpenDate": "2019-08-24T14:15:22Z", "location": "string", "participantLimit": 0, "organizerId": 0, "organizer": { "id": 0, "name": "string", "active": true, "groupMemberships": [ { "id": 0, "memberId": "92983ab9-49c8-444b-85ae-6e40402cf72e", "member": {}, "groupId": 0, "group": {}, "membershipYear": 0, "roleAliasId": 0, "roleAlias": { "id": 0, "roleId": 0, "role": { "id": 0, "name": "string" }, "name": "string" } } ], "type": "Committee", "defaultGLAccount": "string", "defaultCostCenter": "string", "defaultCostUnit": "string", "groupPicturePath": "string", "groupPictureFileName": "string" }, "specificationQuestions": [ { "id": 0, "activityId": 0, "questionDutch": "string", "questionEnglish": "string", "type": "String", "isMandatory": true, "isPublic": true, "activity": {}, "answers": [ { "id": 0, "specificationQuestionId": 0, "memberId": "92983ab9-49c8-444b-85ae-6e40402cf72e", "member": {}, "answer": "string", "question": {}, "enrollment": {} } ], "options": "string", "closeOnUnenrollmentDeadline": true } ], "showInKoala": true, "showOnWebsite": true, "isEnrollable": true, "areParticipantsVisible": true, "isAdultOnly": true, "isWeeklyDrinks": true, "allowedAudience": "None", "isOpenForPayment": true, "vatRate": 0, "enrollments": [ {} ], "glAccountId": "string", "costCenterId": "string", "costUnitId": "string", "paymentDeadline": "2019-08-24T14:15:22Z" }, "memberId": "92983ab9-49c8-444b-85ae-6e40402cf72e", "member": {}, "price": 0.1, "specificationAnswers": [ { "id": 0, "specificationQuestionId": 0, "memberId": "92983ab9-49c8-444b-85ae-6e40402cf72e", "member": {}, "answer": "string", "question": { "id": 0, "activityId": 0, "questionDutch": "string", "questionEnglish": "string", "type": "String", "isMandatory": true, "isPublic": true, "activity": { "id": 0, "name": "string", "price": 0.1, "posterFileName": "string", "posterPath": "string", "dutchDescription": "string", "englishDescription": "string", "dateTimeStart": "2019-08-24T14:15:22Z", "dateTimeEnd": "2019-08-24T14:15:22Z", "unenrollmentDeadline": "2019-08-24T14:15:22Z", "enrollmentDeadline": "2019-08-24T14:15:22Z", "enrollOpenDate": "2019-08-24T14:15:22Z", "location": "string", "participantLimit": 0, "organizerId": 0, "organizer": { "id": 0, "name": "string", "active": true, "groupMemberships": [ { "id": 0, "memberId": "92983ab9-49c8-444b-85ae-6e40402cf72e", "member": {}, "groupId": 0, "group": {}, "membershipYear": 0, "roleAliasId": 0, "roleAlias": { "id": 0, "roleId": 0, "role": { "id": 0, "name": "string" }, "name": "string" } } ], "type": "Committee", "defaultGLAccount": "string", "defaultCostCenter": "string", "defaultCostUnit": "string", "groupPicturePath": "string", "groupPictureFileName": "string" }, "specificationQuestions": [ {} ], "showInKoala": true, "showOnWebsite": true, "isEnrollable": true, "areParticipantsVisible": true, "isAdultOnly": true, "isWeeklyDrinks": true, "allowedAudience": "None", "isOpenForPayment": true, "vatRate": 0, "enrollments": [ {} ], "glAccountId": "string", "costCenterId": "string", "costUnitId": "string", "paymentDeadline": "2019-08-24T14:15:22Z" }, "answers": [ {} ], "options": "string", "closeOnUnenrollmentDeadline": true }, "enrollment": {} } ], "registeredOn": "2019-08-24T14:15:22Z", "isOnWaitingList": true } ], "groupMemberships": [ { "id": 0, "memberId": "92983ab9-49c8-444b-85ae-6e40402cf72e", "member": {}, "groupId": 0, "group": { "id": 0, "name": "string", "active": true, "groupMemberships": [ {} ], "type": "Committee", "defaultGLAccount": "string", "defaultCostCenter": "string", "defaultCostUnit": "string", "groupPicturePath": "string", "groupPictureFileName": "string" }, "membershipYear": 0, "roleAliasId": 0, "roleAlias": { "id": 0, "roleId": 0, "role": { "id": 0, "name": "string" }, "name": "string" } } ], "preferredLanguage": "NL", "gratie": true, "lidVanVerdienste": true, "ereLid": true, "begunstiger": true, "suspended": true, "isDeleted": true, "announcements": [ { "id": 0, "titleDutch": "string", "titleEnglish": "string", "contentDutch": "string", "contentEnglish": "string", "createdAt": "2019-08-24T14:15:22Z", "createdById": "e13e432a-5323-4484-a91d-b5969bc564d9", "createdBy": {} } ], "profilePicturePath": "string", "profilePictureFileName": "string"}