POST groups

POST
/groups

Authorization

Bearer
headerAuthorizationBearer <token>

Paste your JWT token here

Request Body

multipart/form-data
  1. body

Defines the DTO for posting a group, containing the necessary information for creating a new group, including its name, type, and an optional group picture. The PostGroupDTO is used to transfer data from the client to the server when creating a new group, ensuring that all required information is provided and validated appropriately for the creation process.

Name*string

The name of the Group.

Length0 <= length <= 100
Type*GroupType

Defines the type of a Group.

Formatint32
Value in"Committee""WorkingGroup""Dispute"
GroupPicture*unknown

The group picture file to be uploaded and associated with the newly created group. This field is optional and can be included in the request to provide a visual representation of the group, allowing for better identification and differentiation of groups within the system. If provided, the group picture will be processed and stored appropriately based on the application's file handling and storage mechanisms.

Response Body

Created

application/json
  1. response

Represents a Group within the organization. A Group can be a Committee, Working Group, or Dispute group. Each Group has a unique identifier, a name, an active status, and can have multiple members associated with it through GroupMemberships. The Group entity also includes properties for the type of group and default financial information such as GL account and cost center. This entity is used to manage and organize different groups within the system, allowing for better collaboration and communication among members.

id?integer

The unique identifier of a Group, assigned incrementally.

Formatint32
name*string

The name of the Group.

Length0 <= length <= 100
active?boolean

Status of the group. Inactive groups are hidden from administrative views to prevent clutter, but are preserved in the database for historical records and statistics (e.g., the Almanac).

groupMemberships?array<>

The members associated with this Group.

type?GroupType

Defines the type of a Group.

Formatint32
Value in"Committee""WorkingGroup""Dispute"
defaultGLAccount?|

The default GL account for the group, used for financial transactions.

Length0 <= length <= 20
defaultCostCenter?|

The default cost center for the group, used for financial transactions.

Length0 <= length <= 20
defaultCostUnit?|

The default cost unit for the group, used for financial transactions. Dutch: Kostendrager

Length0 <= length <= 20
groupPicturePath?|

The path where the picture for the group is stored, if any.

groupPictureFileName?|

The filename of the picture for the group, if any.

curl -X POST 'https://example.com/groups' \  -F 'Name=string' \  -F 'Type=Committee' \  -F 'GroupPicture=null'
{  "id": 0,  "name": "string",  "active": true,  "groupMemberships": [    {      "id": 0,      "memberId": "92983ab9-49c8-444b-85ae-6e40402cf72e",      "member": {        "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": {},              "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": {},                    "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": [          {}        ],        "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"      },      "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"}