UserSearch

Handles user search

APIDescriptionScope
GET api/v1/organisations/{organisationKey}/users/find

Performs the search of users under a given organisation as their primary organisation.

resapi.user.read

POST api/v1/organisations/{organisationKey}/getMatchingUser

Best fitting user given the search criteria

resapi.user.read

POST api/v1/organisations/{organisationKey}/getMatchingUsers

Best fitting users given the search criteria Use this endpoint if you have to match many users, this increases the performance.

resapi.user.read

GroupTemplate

APIDescriptionScope
GET api/v1/tenants/{tenantKey}/groupTemplates

Endpoint to get the GroupTemplates for a specified tenant.

resapi.groupTemplate.read

GET api/v1/tenants/{tenantKey}/groupTemplates/{groupTemplateKey}?validateDeletionIsAllowed={validateDeletionIsAllowed}

Endpoint to get a specific GroupTemplate.

resapi.groupTemplate.read

GET api/v1/groupTemplates/{key}/AccountPngPicture

Endpoint to get an Image by its Key.

resapi.groupTemplate.read

POST api/v1/tenants/{tenantKey}/groupTemplates

Endpoint to create a GroupTemplate.

resapi.groupTemplate.create

DELETE api/v1/groupTemplates/{groupTemplateKey}

Endpoint to remove a specified GroupTemplate

resapi.groupTemplate.delete

PATCH api/v1/tenants/{tenantKey}/groupTemplates/{groupTemplateKey}

Endpoint to update the GroupTemplate.

resapi.groupTemplate.patch

UserInfo

APIDescriptionScope
GET api/v1/userinfo

Endpoint to validate the authentication token and make sure the user is successfully logged in.

user.signin

GET api/v1/userinfo/more

Endpoint to get extended information about the current user. The MOO query syntax can be applied to it.

resapi.user.self.read

GET api/v1/userinfo/authorisation

Endpoint to get authorisation information about the current user.

resapi.user.self.read

GET api/v1/organisations/{organisationKey}/users/{userKey}/claims

Endpoint to get resource api claims for a given user.

signin.read

GroupSearch

APIDescriptionScope
POST api/v1/organisations/{organisationKey}/getMatchingGroup

Best fitting group given the search criteria

resapi.group.read

POST api/v1/organisations/{organisationKey}/getMatchingGroups

Best fitting groups given the search criteria

resapi.group.read

User

APIDescriptionScope
GET api/v1/users/{key}?userStatus[0]={userStatus[0]}&userStatus[1]={userStatus[1]}

Endpoint to get the information about a specific user.

resapi.user.read

GET api/v1/users/{key}/AccountPicture

Endpoint to get the AccountPicture of a specific user.

resapi.user.read

GET api/v1/users/{loginName}/AccountPicture

Endpoint to get the AccountPicture of a specific user.

resapi.user.read

GET api/v1/organisations/{organisationKey}/users?userType={userType}&userStatus[0]={userStatus[0]}&userStatus[1]={userStatus[1]}&selectSubstituteTeachers={selectSubstituteTeachers}

Endpoint to query all the users of a specific organisation including all the personel that are linked to the organisation.

resapi.user.read

GET api/v1/organisations/{organisationKey}/users/type/{userType}?userStatus[0]={userStatus[0]}&userStatus[1]={userStatus[1]}&selectSubstituteTeachers={selectSubstituteTeachers}

Endpoint to query all the users of a specific organisation including all the personnel that are linked to the organisation, for a specific userType.

resapi.user.read

GET api/v1/tenants/{tenantKey}/users?roleIdMark={roleIdMark}

Retrieves all tenant users having the given role

resapi.user.read

GET api/v1/users/groups/{groupKey}

Endpoint to get the information about users belonging to this group.

resapi.group.read

resapi.user.read

GET api/v1/users/groups/{groupKey}/type/{userType}

Endpoint to get the information about users belonging to this group.

resapi.group.read

resapi.user.read

GET api/v1/organisation/{organisationKey}/user/{userKey}/students

Will get enabled users (students) who are in the same group(s) as the given user.

resapi.user.read

GET api/v1/organisations/{organisationKey}/users/{userKey}/students

Will get enabled users (students) who are in the same group(s) as the given user.

resapi.user.read

POST api/v1/users

Endpoint to create a new user.

resapi.user.create

DELETE api/v1/users/{userKey}/eckid

Endpoint to empty the EckId.

resapi.user.clear.eckid

PATCH api/v1/users/{key}

Endpoint to update a user.

resapi.user.update

DELETE api/v1/users/{key}?restorable={restorable}&deleteFromAd={deleteFromAd}

Endpoint to delete a user from MOO.

resapi.user.delete

POST api/v1/users/delete?restorable={restorable}&deleteFromAd={deleteFromAd}

Endpoint is used to delete users from MOO. Note that it should be a HttpDelete, but this doesn't allow for a message body and putting the user guids in the uri results in a too long uri. so it's converted to a POST to a separate route.

resapi.user.delete

POST api/v1/users/validate

Validates the basic info of a list of users

resapi.user.create

POST api/v1/users/{loginName}/checkPassword

Test endpoint, it won't work on production. So don't waste your time trying.

resapi.user.read

POST api/v1/users/deactivate

Will deactivate a substitute teacher OBSOLETE: use PATCH /substituteTeachers/{userKey}

resapi.user.update

PATCH api/v1/users/{userKey}/activate

Will activate a substitute teacher OBSOLETE: use PATCH /substituteTeachers/{userKey}

resapi.user.update

Constants

APIDescriptionScope
GET api/v1/grades

Endpoint to get the grades.

GET api/v1/groupTypes

Endpoint to get the grouptypes.

UserPortalPreference

This controller services userportalpreferences.

APIDescriptionScope
GET api/v1/UserPortalPreference?userKey={userKey}

Get userportalpreference async

resapi.user.read

PATCH api/v1/UserPortalPreference

Patch userportalpreference property async

resapi.user.update

PUT api/v1/UserPortalPreference

Put userportalpreference property async

resapi.user.update

UserGroup

APIDescriptionScope
GET api/v1/users/{key}/organisations/{orgKey}/groups?includeArchived={includeArchived}

Endpoint to get the information about which group a user belongs to.

resapi.group.read

resapi.user.read

GET api/v1/users/{userKey}/groups/{groupKey}

Endpoint to get the UserGroup.

resapi.group.read

resapi.user.read

GET api/v1/groups/{groupKey}/usergroups

Endpoint to get all the UserGroups for a Group

resapi.group.read

resapi.user.read

POST api/v1/users/{userKey}/groups/{groupKey}?setUserGroupLock={setUserGroupLock}

Endpoint to add a user to a group.

resapi.group.update

resapi.user.update

POST api/v1/groups/{groupKey}/users/{userKey}?setUserGroupLock={setUserGroupLock}

Endpoint to add a user to a group.

resapi.group.update

resapi.user.update

POST api/v1/groups/{groupKey}/users?setUserGroupLock={setUserGroupLock}

Endpoint to add users to a group.

resapi.group.update

resapi.user.update

POST api/v1/groups/{groupKey}/users/delete

This endpoint is used to remove users from a group. Note that it should be a HTtpDelete, but this doesn't allow for a message body and putting the user guids in the uri results in a too long uri. so it's converted to a POST to a separate route.

resapi.group.update

resapi.user.update

DELETE api/v1/users/{userKey}/groups/{groupKey}

Endpoint to remove a user from a group.

resapi.group.update

resapi.user.update

DELETE api/v1/groups/{groupKey}/users/{userKey}

Endpoint to remove a user from a group.

resapi.group.update

resapi.user.update

DELETE api/v1/users/{userKey}/organisations/{organisationKey}/groups

Remove user from organisation by deleting all his group memberships Only works for personel (users with a primary personel group membership)

resapi.group.update

resapi.user.update

Organisation

APIDescriptionScope
GET api/v1/organisations/{key}

Endpoint to get an organisation by Key.

resapi.organisation.read

GET api/v1/users/{userkey}/organisations

Endpoint to get a list of organisations by UserKey.

resapi.organisation.read

PATCH api/v1/organisations/{key}?loginNameFormatStudentRetroactive={loginNameFormatStudentRetroactive}&loginNameFormatPersonnelRetroactive={loginNameFormatPersonnelRetroactive}

This endpoint is used to modify an existing organisation. Currently the following properties can be updated: LoginDomain, LoginNameFormatStudent, LoginnameFormatPersonnel, BoardOrganisationKey, Name, DefaultFunctionKey

resapi.organisation.update

GET api/v1/organisations/{organisationKey}/LoginNameUpdates?domain={domain}&loginNameFormatStudent={loginNameFormatStudent}&loginNameFormatPersonnel={loginNameFormatPersonnel}&userType={userType}

Endpoint to get an organisation's LoginNameUpdates

resapi.organisation.read

GET api/v1/organisations/{organisationKey}/{userType}/LoginNameUpdates?domain={domain}&loginNameFormatStudent={loginNameFormatStudent}&loginNameFormatPersonnel={loginNameFormatPersonnel}

Endpoint to get an organisation's LoginNameUpdates

resapi.organisation.read

GET api/v1/organisations/{organisationKey}/privacySettings

Retrieves privacy settings for an organisation

resapi.organisation.read

PATCH api/v1/organisations/{organisationKey}/privacySettings

Changes privacy settings of an organisation

resapi.organisation.update

Group

APIDescriptionScope
GET api/v1/groups/{key}

Endpoint to get the information about a specific group by Key.

resapi.group.read

GET api/v1/groups/{key}/AccountPngPicture

Endpoint to get an Image by it Key.

GET api/v1/organisations/{organisationKey}/groups?groupType[0]={groupType[0]}&groupType[1]={groupType[1]}&includeArchived={includeArchived}&includeIctCoordinator={includeIctCoordinator}

Endpoint to query all the groups with a given grouptype of a specific organisation.

resapi.group.read

GET api/v1/organisations/{organisationKey}/groups/status/{groupStatus}

Endpoint to query all the groups of a specific organisation and group status.

resapi.group.read

GET api/v1/organisations/{organisationKey}/groups/type/{groupType}?includeArchived={includeArchived}

Endpoint to query all the groups with a given grouptype of a specific organisation.

resapi.group.read

GET api/v1/users/{userKey}/groups?includeArchived={includeArchived}

Endpoint to get the groups of a specific User, by UserKey.

resapi.group.read

resapi.user.read

GET api/v1/organisations/{organisationKey}/users/{userKey}/groups?groupType[0]={groupType[0]}&groupType[1]={groupType[1]}&includeArchived={includeArchived}

Endpoint to get the groups of a specific User in a specific Organisation with specific grouptypes, by UserKey organisationKey and grouptypes.

resapi.group.read

resapi.user.read

GET api/v1/users/{userKey}/studentgroups?includeArchived={includeArchived}

Endpoint to get the Groups of a User, by UserKey.

resapi.group.read

resapi.user.read

POST api/v1/groups

Endpoint to insert a new group.

resapi.group.create

PATCH api/v1/groups/{key}

Endpoint to partially update the information for a specific group

resapi.group.update

DELETE api/v1/groups/{key}?deleteFromAd={deleteFromAd}

Endpoint to delete a specific group.

resapi.group.delete

POST api/v1/groups/validate

Validates the basic info of a list of groups

resapi.group.create

POST api/v1/groups/changePasswordPolicy

Update group's password policy.

resapi.group.update

SubstituteTeacher

APIDescriptionScope
GET api/v1/organisations/{organisationKey}/substituteTeachers

Returns all substitute teachers for a given organisation and their active groups

resapi.user.read

PATCH api/v1/substituteTeachers/{userKey}

Activate, Deactivate or change substitute teacher email.

resapi.user.update