User API specification (744248345c7693b39afee928f431a8ec458d5e35)

Download OpenAPI specification:Download

The user service is used to configure and manage users.

auth

Resends the activation email of the requesting user if the account is not activated yet.

Authorizations:
API_TokenPersonal-Access-Token

Responses

Login

Handles the user login and returns a user payload with JWT token

Request Body schema: application/x-www-form-urlencoded
required
email
required
string

The email for this account

password
required
string

The password for this account

mfa
string

The user's current mfa code. This code is required if the user enabled mfa for his account, otherwise it can be left empty. To figure out if the user has mfa enabled, you need to login with username and password first. A http 401 error containing "MFA required" allows you to ask the user a current mfa code. Sending username and password again with the mfa code will finalize the login.

Responses

Response samples

Content type
application/json
{
  • "active": true,
  • "availablePreference": true,
  • "avatarURL": "string",
  • "chatToken": "string",
  • "editable": true,
  • "email": "string",
  • "id": 0,
  • "name": "string",
  • "pending": true,
  • "registrationDate": null,
  • "surname": "string",
  • "token": "string"
}

Returns a list of user sessions.

Authorizations:
API_TokenPersonal-Access-Token
query Parameters
limit
integer [ 1 .. 50 ]
Default: 10

max. amount of entries in list

offset
integer
Default: 0

amount of entries to skip

Responses

Response samples

Content type
application/json
{
  • "tokens": [
    ],
  • "total": 0
}

Terminates a specific user session.

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
id
required
integer

id of user session

Responses

email-change

Return the current change request for the email-address of your personal user account.

Authorizations:
API_TokenPersonal-Access-Token
query Parameters
userID
integer

optional userID of a standalone-user associated with the new email

Responses

Create a change request for the email-address of your personal user account.

Must include the new email-address and a current mfa-code if mfa is enabled.

Authorizations:
API_TokenPersonal-Access-Token
Request Body schema: application/json
required
mfaCode
string

current mfa-code is required if mfa is enabled for the user's account

newEmail
required
string

new email-address for the user's account

userID
integer <int64>

optional userID of a standalone-user associated with the new email

Responses

Request samples

Content type
application/json
{
  • "mfaCode": "string",
  • "newEmail": "string",
  • "userID": 0
}

Abort the current change request for the email-address of your personal user account.

Authorizations:
API_TokenPersonal-Access-Token
query Parameters
userID
integer

optional userID of a standalone-user associated with the new email

Responses

invitation-config

GetInvitationText

Get the organization's saved invitation text configuration

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
organizationID
required
integer

organization by it's ID

Responses

Response samples

Content type
application/json
{
  • "organization_id": 0,
  • "text": "string"
}

SetInvitationText

Set the organization's invitation text configuration

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
organizationID
required
integer

organization by it's ID

Request Body schema: application/json
required
organization_id
integer <int64>
text
string

Responses

Request samples

Content type
application/json
{
  • "organization_id": 0,
  • "text": "string"
}

mfa

MFAIsActive

Check if the current user has MFA enabled or not

Authorizations:
API_TokenPersonal-Access-Token
query Parameters
organization
integer

id of the organization. This is required if the user is queried

user
integer

id of the user

Responses

Response samples

Content type
application/json
{
  • "enabled": true
}

MFACreate

Creates a new, disabled MFA config for the current user

Authorizations:
API_TokenPersonal-Access-Token

Responses

Response samples

Content type
application/json
{
  • "image": [
    ],
  • "secret": "string",
  • "url": "string"
}

MFAEnable

Enables a new MFA config for the current user

Authorizations:
API_TokenPersonal-Access-Token
query Parameters
code
required
string

current MFA code

Responses

MFADisable

Disables the MFA config for the current user

Authorizations:
API_TokenPersonal-Access-Token
query Parameters
code
required
string

current MFA code

Responses

MFAGenerateBackupCodes

Creates ten new, one-time-use backup codes

Authorizations:
API_TokenPersonal-Access-Token

Responses

Response samples

Content type
application/json
{
  • "backupCodes": [
    ]
}

user

Deletes the current user irreversibly.

Can only be used after leaving all organizations.

Authorizations:
API_TokenPersonal-Access-Token

Responses

GetUser

Gets the complete user payload from the passed JWT token

Authorizations:
API_TokenPersonal-Access-Token

Responses

Response samples

Content type
application/json
{
  • "active": true,
  • "availablePreference": true,
  • "avatarURL": "string",
  • "chatToken": "string",
  • "editable": true,
  • "email": "string",
  • "id": 0,
  • "name": "string",
  • "pending": true,
  • "registrationDate": null,
  • "surname": "string",
  • "token": "string"
}

UpdateUser

Updates the user profile

Authorizations:
API_TokenPersonal-Access-Token
Request Body schema: application/json
required

passed user update payload with new user preferences

organizationId
integer <int64>

id of the editing organization not needed if user is editing himself

required
object (User)

User is the comprehensive data structure containing all data of a single user

Responses

Request samples

Content type
application/json
{
  • "organizationId": 0,
  • "user": {
    }
}

InviteUser

Invites an existing or new user to an organization and sends an invitation email to the passed address

Authorizations:
API_TokenPersonal-Access-Token
Request Body schema: application/json
required

invitation payload

createNewLabels
boolean

If set to true while importing a user with a label name but not an id, we will automatically create and assign this label. This setting will only work in conjunction with MapLabelsByName.

mapLabelsByName
boolean

If set to true while importing a user with a label name but not an id, we will try to find a label with this name and assign it.

required
object (Organization)

Organization defines an organization payload

required
Array of objects (BulkUserElement)

array of user bulk elements

Responses

Request samples

Content type
application/json
{
  • "createNewLabels": true,
  • "mapLabelsByName": true,
  • "organization": {
    },
  • "users": [
    ]
}

Response samples

Content type
application/json
[
  • {
    }
]

InviteOwner

Invite the passed owner to the organization

Authorizations:
API_TokenPersonal-Access-Token
Request Body schema: application/json
required

owner invite payload

organizationID
integer <int64>
ownerID
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "organizationID": 0,
  • "ownerID": 0
}

GetOrganizationAvailability

Returns all organization availabilities for the current user

Authorizations:
API_TokenPersonal-Access-Token

Responses

ResendInvitation

Resends the invitation email of an existing user to an organization

Authorizations:
API_TokenPersonal-Access-Token
Request Body schema: application/json
required

invitation payload

createNewLabels
boolean

If set to true while importing a user with a label name but not an id, we will automatically create and assign this label. This setting will only work in conjunction with MapLabelsByName.

mapLabelsByName
boolean

If set to true while importing a user with a label name but not an id, we will try to find a label with this name and assign it.

required
object (Organization)

Organization defines an organization payload

required
Array of objects (BulkUserElement)

array of user bulk elements

Responses

Request samples

Content type
application/json
{
  • "createNewLabels": true,
  • "mapLabelsByName": true,
  • "organization": {
    },
  • "users": [
    ]
}

GetSpecificUser

Returns a specific user with the passed api for organization members

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
userID
required
integer

ID of an user

query Parameters
organization
required
integer

ID of the organization

Responses

Response samples

Content type
application/json
{
  • "active": true,
  • "availablePreference": true,
  • "avatarURL": "string",
  • "chatToken": "string",
  • "editable": true,
  • "email": "string",
  • "id": 0,
  • "name": "string",
  • "pending": true,
  • "registrationDate": null,
  • "surname": "string",
  • "token": "string"
}

ListOrganizationInvitations

Lists all pending invites for the requesting user

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
userID
required
integer

user by his ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

DeleteUserFromOrganization

Removes a user from an organization

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
userID
required
integer

user by his ID

organizationID
required
integer

organization by it's ID

Responses

settings

GetSettings

Get the current user's saved settings or the default settings if none are found

Authorizations:
API_TokenPersonal-Access-Token

Responses

Response samples

Content type
application/json
{
  • "checks": [
    ],
  • "defaultOrganizationId": 0,
  • "helpTexts": [
    ],
  • "hideExpiredTrial": true,
  • "language": "string",
  • "setupCurrentPath": "string",
  • "setupDone": true,
  • "setupOrganizationID": 0,
  • "showFeedbackButton": true,
  • "tableConfigurations": {
    },
  • "theme": "string",
  • "tracking": true
}

StoreSettings

Saves the current user's settings

Authorizations:
API_TokenPersonal-Access-Token
Request Body schema: application/json
required
checks
Array of strings
defaultOrganizationId
integer <int64>
helpTexts
Array of strings
hideExpiredTrial
boolean
language
string
setupCurrentPath
string
setupDone
boolean
setupOrganizationID
integer <int64>
showFeedbackButton
boolean
object
theme
string
tracking
boolean

Responses

Request samples

Content type
application/json
{
  • "checks": [
    ],
  • "defaultOrganizationId": 0,
  • "helpTexts": [
    ],
  • "hideExpiredTrial": true,
  • "language": "string",
  • "setupCurrentPath": "string",
  • "setupDone": true,
  • "setupOrganizationID": 0,
  • "showFeedbackButton": true,
  • "tableConfigurations": {
    },
  • "theme": "string",
  • "tracking": true
}

availability

Returns a list of the current user's global and organization-wide availability.

Authorizations:
API_TokenPersonal-Access-Token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Immediately sets the current user's global or organization-wide availability.

Authorizations:
API_TokenPersonal-Access-Token
Request Body schema: application/json
required
organizationID
integer <int64>
preference
boolean
userID
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "organizationID": 0,
  • "preference": true,
  • "userID": 0
}

RemoveUserOrganizationAvailability

Immediately removes the current user's organization-wide availability override. Afterwards the organization will return to using the user's global availability. If there are scheduled availability changes for the user in this organization, they will be kept and executed as planned.

Authorizations:
API_TokenPersonal-Access-Token
query Parameters
organization_id
required
integer

Responses

GetUserAvailabilityChange

Returns the current user's saved availability change

Authorizations:
API_TokenPersonal-Access-Token

Responses

Response samples

Content type
application/json
{
  • "duration": 0,
  • "start_time": null,
  • "user_id": 0
}

AddUserAvailabilityChange

Add a new availability change for the current user or update an existing one

Authorizations:
API_TokenPersonal-Access-Token
Request Body schema: application/json
required
duration
integer <int64>
start_time
any
user_id
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "duration": 0,
  • "start_time": null,
  • "user_id": 0
}

Response samples

Content type
application/json
{
  • "duration": 0,
  • "start_time": null,
  • "user_id": 0
}

users

GetUsersInOrganization

Returns all users from an organization

Authorizations:
API_TokenPersonal-Access-Token
query Parameters
organization
required
integer

organization by it's ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

GetUsersInOrganizationPagination

Returns all users from an organization with pagination

Authorizations:
API_TokenPersonal-Access-Token
query Parameters
organization
required
integer

organization by it's ID

search
string

search query to filter user by name, surname or email

limit
integer [ 1 .. 50 ]
Default: 10

max. amount of entries in list

offset
integer
Default: 0

amount of entries to skip

orderby
string
Default: "sur_name"
Enum: "sur_name" "name"

order query by column (either sur_name or name, defaults to sur_name)

orderdir
string
Default: "asc"
Enum: "asc" "desc"

order direction of orderby (either asc or desc, defaults to asc)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

recurring-availability

ListRecurringAvailabilityChanges

Returns a list of all recurring availability changes created by the current user

Authorizations:
API_TokenPersonal-Access-Token
query Parameters
limit
integer [ 1 .. 50 ]
Default: 10

max. amount of entries in list

offset
integer
Default: 0

amount of entries to skip

organization
integer
Default: 0

id of an organization

Responses

Response samples

Content type
application/json
{
  • "entries": [
    ],
  • "total": 0
}

CreateRecurringAvailabilityChange

Create a new recurring availability change for the current user

Authorizations:
API_TokenPersonal-Access-Token
Request Body schema: application/json
required
active
boolean
changeDay
any

ChangeDay is the integer description of the day in the week when a change should occur. Sunday = 0, Monday = 1, ...

changeStatus
string (UserAvailabilityStatus)

UserAvailabilityStatus represents the new status a user should be in after processing a change request

changeTime
string

ChangeTime it the UTC time when a change should occur, formatted as "15:04:05".

id
integer <int64>
organizationID
integer <int64>
userID
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "active": true,
  • "changeDay": null,
  • "changeStatus": "string",
  • "changeTime": "string",
  • "id": 0,
  • "organizationID": 0,
  • "userID": 0
}

Response samples

Content type
application/json
{
  • "active": true,
  • "changeDay": null,
  • "changeStatus": "string",
  • "changeTime": "string",
  • "id": 0,
  • "organizationID": 0,
  • "userID": 0
}

UpdateRecurringAvailabilityChange

Updates an existing recurring availability change for the current user

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
changeID
required
integer
Request Body schema: application/json
required
active
boolean
changeDay
any

ChangeDay is the integer description of the day in the week when a change should occur. Sunday = 0, Monday = 1, ...

changeStatus
string (UserAvailabilityStatus)

UserAvailabilityStatus represents the new status a user should be in after processing a change request

changeTime
string

ChangeTime it the UTC time when a change should occur, formatted as "15:04:05".

id
integer <int64>
organizationID
integer <int64>
userID
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "active": true,
  • "changeDay": null,
  • "changeStatus": "string",
  • "changeTime": "string",
  • "id": 0,
  • "organizationID": 0,
  • "userID": 0
}

Response samples

Content type
application/json
{
  • "active": true,
  • "changeDay": null,
  • "changeStatus": "string",
  • "changeTime": "string",
  • "id": 0,
  • "organizationID": 0,
  • "userID": 0
}

DeleteRecurringAvailabilityChange

Deletes an existing recurring availability change for the current user

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
changeID
required
integer

Responses

scheduled-availability

ListScheduledAvailabilityChanges

Returns a list of all scheduled availability changes created by the current user

Authorizations:
API_TokenPersonal-Access-Token
query Parameters
limit
integer [ 1 .. 50 ]
Default: 10

max. amount of entries in list

offset
integer
Default: 0

amount of entries to skip

Responses

Response samples

Content type
application/json
{
  • "entries": [
    ],
  • "total": 0
}

CreateScheduledAvailabilityChange

Create a new scheduled availability change for the current user

Authorizations:
API_TokenPersonal-Access-Token
Request Body schema: application/json
required
changeStatus
string (UserAvailabilityStatus)

UserAvailabilityStatus represents the new status a user should be in after processing a change request

changeTime
any
id
integer <int64>
userID
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "changeStatus": "string",
  • "changeTime": null,
  • "id": 0,
  • "userID": 0
}

Response samples

Content type
application/json
{
  • "changeStatus": "string",
  • "changeTime": null,
  • "id": 0,
  • "userID": 0
}

DeleteScheduledAvailabilityChange

Deletes an existing scheduled availability change for the current user

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
changeID
required
integer

Responses