syncONE API documentation (1.0.0)

Download OpenAPI specification:

This is a description of the syncONE API available to external parties.

Authentication

Start a new session. All other session tokens associated to the api key will be invalidated.

Authorizations:
ApiKeyAuth

Responses

Response samples

Content type
application/json
{
  • "token": "string",
  • "validUntil": "2019-08-24T14:15:22Z"
}

Delete current session token.

Authorizations:
SessionToken

Responses

Users

Create a new user.

Authorizations:
SessionToken
Request Body schema: application/json
salutation
required
any
Enum: "NEUTRAL" "FEMALE" "MALE"
titlePrefix
string <= 25 characters
titleSuffix
string <= 25 characters
firstName
required
string [ 1 .. 30 ] characters
lastName
required
string [ 1 .. 50 ] characters
email
string <email> <= 254 characters
mobilePhoneNumber
string <^\+[1-9][0-9]{3,14}$>
birthDate
string <date>
position
string <= 100 characters
location
string <= 100 characters
additionalInformation
string <= 500 characters
entryDate
string <date>
exitDate
string <date>
personnelNumber
string <= 20 characters

Responses

Request samples

Content type
application/json
{
  • "salutation": "NEUTRAL",
  • "titlePrefix": "Dr.",
  • "titleSuffix": "MSc",
  • "firstName": "Jane",
  • "lastName": "Doe",
  • "email": "jd@duftner.digital",
  • "mobilePhoneNumber": "+43669123456789",
  • "birthDate": "2000-02-20",
  • "position": "CEO",
  • "location": "Innsbruck",
  • "additionalInformation": "Best CEO in the world.",
  • "entryDate": "2021-01-21",
  • "exitDate": "2022-01-21",
  • "personnelNumber": "100000"
}

Response samples

Content type
application/json
{
  • "id": 2,
  • "salutation": "NEUTRAL",
  • "titlePrefix": "Dr.",
  • "titleSuffix": "MSc",
  • "firstName": "Jane",
  • "lastName": "Doe",
  • "email": "jd@duftner.digital",
  • "mobilePhoneNumber": "+43669123456789",
  • "birthDate": "2000-02-20",
  • "position": "CEO",
  • "location": "Innsbruck",
  • "additionalInformation": "Best CEO in the world.",
  • "entryDate": "2021-01-21",
  • "exitDate": "2022-01-21",
  • "personnelNumber": "100000"
}

Get all users.

Authorizations:
SessionToken

Responses

Response samples

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

Returns the user associated to the given id.

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of user to perform action on.

Responses

Response samples

Content type
application/json
{
  • "id": 2,
  • "salutation": "NEUTRAL",
  • "titlePrefix": "Dr.",
  • "titleSuffix": "MSc",
  • "firstName": "Jane",
  • "lastName": "Doe",
  • "email": "jd@duftner.digital",
  • "mobilePhoneNumber": "+43669123456789",
  • "birthDate": "2000-02-20",
  • "position": "CEO",
  • "location": "Innsbruck",
  • "additionalInformation": "Best CEO in the world.",
  • "entryDate": "2021-01-21",
  • "exitDate": "2022-01-21",
  • "personnelNumber": "100000"
}

Updates the attributes of the user associated to the given id, according to the given user info.

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of user to perform action on.

Request Body schema: application/json
salutation
required
any
Enum: "NEUTRAL" "FEMALE" "MALE"
titlePrefix
string <= 25 characters
titleSuffix
string <= 25 characters
firstName
required
string [ 1 .. 30 ] characters
lastName
required
string [ 1 .. 50 ] characters
email
string <email> <= 254 characters
mobilePhoneNumber
string <^\+[1-9][0-9]{3,14}$>
birthDate
string <date>
position
string <= 100 characters
location
string <= 100 characters
additionalInformation
string <= 500 characters
entryDate
string <date>
exitDate
string <date>
personnelNumber
string <= 20 characters

Responses

Request samples

Content type
application/json
{
  • "salutation": "NEUTRAL",
  • "titlePrefix": "Dr.",
  • "titleSuffix": "MSc",
  • "firstName": "Jane",
  • "lastName": "Doe",
  • "email": "jd@duftner.digital",
  • "mobilePhoneNumber": "+43669123456789",
  • "birthDate": "2000-02-20",
  • "position": "CEO",
  • "location": "Innsbruck",
  • "additionalInformation": "Best CEO in the world.",
  • "entryDate": "2021-01-21",
  • "exitDate": "2022-01-21",
  • "personnelNumber": "100000"
}

Response samples

Content type
application/json
{
  • "id": 2,
  • "salutation": "NEUTRAL",
  • "titlePrefix": "Dr.",
  • "titleSuffix": "MSc",
  • "firstName": "Jane",
  • "lastName": "Doe",
  • "email": "jd@duftner.digital",
  • "mobilePhoneNumber": "+43669123456789",
  • "birthDate": "2000-02-20",
  • "position": "CEO",
  • "location": "Innsbruck",
  • "additionalInformation": "Best CEO in the world.",
  • "entryDate": "2021-01-21",
  • "exitDate": "2022-01-21",
  • "personnelNumber": "100000"
}

Deletes the user associated to the given id.

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of user to perform action on.

Responses

Response samples

Content type
application/json
{
  • "id": 2,
  • "salutation": "NEUTRAL",
  • "titlePrefix": "Dr.",
  • "titleSuffix": "MSc",
  • "firstName": "Jane",
  • "lastName": "Doe",
  • "email": "jd@duftner.digital",
  • "mobilePhoneNumber": "+43669123456789",
  • "birthDate": "2000-02-20",
  • "position": "CEO",
  • "location": "Innsbruck",
  • "additionalInformation": "Best CEO in the world.",
  • "entryDate": "2021-01-21",
  • "exitDate": "2022-01-21",
  • "personnelNumber": "100000"
}

Return all groups where user is member

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of user to perform action on.

query Parameters
includeDerived
boolean

Include derived group memberships

Responses

Response samples

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

Groups

Create a new group.

Authorizations:
SessionToken
Request Body schema: application/json
name
required
string [ 1 .. 500 ] characters
description
string <= 500 characters
color
string <^#([a-fA-F0-9]{6})$>

Responses

Request samples

Content type
application/json
{
  • "name": "General",
  • "description": "Group which contains general contents.",
  • "color": "#FFFF00"
}

Response samples

Content type
application/json
{
  • "id": 15,
  • "name": "General",
  • "description": "Group which contains general contents.",
  • "color": "#FFFF00"
}

Get all groups.

Authorizations:
SessionToken

Responses

Response samples

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

Returns the group associated to the given id.

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of group to perform action on.

Responses

Response samples

Content type
application/json
{
  • "id": 15,
  • "name": "General",
  • "description": "Group which contains general contents.",
  • "color": "#FFFF00"
}

Updates the attributes of the group associated to the given id, according to the given group info.

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of group to perform action on.

Request Body schema: application/json
name
required
string [ 1 .. 500 ] characters
description
string <= 500 characters
color
string <^#([a-fA-F0-9]{6})$>

Responses

Request samples

Content type
application/json
{
  • "name": "General",
  • "description": "Group which contains general contents.",
  • "color": "#FFFF00"
}

Response samples

Content type
application/json
{
  • "id": 15,
  • "name": "General",
  • "description": "Group which contains general contents.",
  • "color": "#FFFF00"
}

Deletes the group associated to the given id.

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of group to perform action on.

Responses

Response samples

Content type
application/json
{
  • "id": 2,
  • "salutation": "NEUTRAL",
  • "titlePrefix": "Dr.",
  • "titleSuffix": "MSc",
  • "firstName": "Jane",
  • "lastName": "Doe",
  • "email": "jd@duftner.digital",
  • "mobilePhoneNumber": "+43669123456789",
  • "birthDate": "2000-02-20",
  • "position": "CEO",
  • "location": "Innsbruck",
  • "additionalInformation": "Best CEO in the world.",
  • "entryDate": "2021-01-21",
  • "exitDate": "2022-01-21",
  • "personnelNumber": "100000"
}

Return all roles available for group with GroupId.

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of group to perform action on.

Responses

Response samples

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

Returns the modules belonging to the group associated to the given id.

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of group to perform action on.

Responses

Response samples

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

Saving a new module to a group.

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of group to perform action on.

Request Body schema: application/json
object (Module)
object (ModuleType)
Array of objects (ModuleSetting)

Responses

Request samples

Content type
application/json
{
  • "module": {
    },
  • "moduleType": { },
  • "moduleSettings": [
    ]
}

Return all groups that are parent groups to group with id.

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of group to perform action on.

query Parameters
includeDerived
boolean

Include derived group memberships

Responses

Response samples

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

Return all groups that have a membership to group with id.

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of group to perform action on.

query Parameters
includeDerived
boolean

Include derived group memberships

Responses

Response samples

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

Add group as a new membership to group with id.

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of group to perform action on.

query Parameters
includeDerived
boolean

Include derived group memberships

Request Body schema: application/json
required
name
required
string [ 1 .. 500 ] characters
description
string <= 500 characters
color
string <^#([a-fA-F0-9]{6})$>

Responses

Request samples

Content type
application/json
{
  • "name": "General",
  • "description": "Group which contains general contents.",
  • "color": "#FFFF00"
}

Delete group with childId as member from group with Id.

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of parent group.

childId
required
integer <int64>

Id of children group.

Responses

Return all users that have a membership to group with id.

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of group to perform action on.

Responses

Response samples

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

Add user as a new membership to group with groupId.

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of group to perform action on.

Request Body schema: application/x-www-form-urlencoded
required
userId
integer

Responses

Delete user with userId from group with groupId.

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of group to perform action on.

userId
required
integer <int64>

Responses

Modules

Get module in group with groupId and with ID moduleId

Authorizations:
SessionToken
path Parameters
moduleId
required
integer <int64>

The module ID

Responses

Response samples

Content type
application/json
{
  • "id": 15,
  • "name": "Flight training",
  • "description": "In this module you will be thought how to fly various planes, helicopters and flying saucers",
  • "moduleType": "LearningModule"
}

Delete module in group with groupId and with ID moduleId

Authorizations:
SessionToken
path Parameters
moduleId
required
integer <int64>

The module ID

Responses

Overwrite module in group with groupId and with ID moduleId

Authorizations:
SessionToken
path Parameters
moduleId
required
integer <int64>

The module ID

Request Body schema: application/json
required
name
required
string [ 1 .. 500 ] characters
description
string

Responses

Request samples

Content type
application/json
{
  • "name": "Flight training",
  • "description": "In this module you will be thought how to fly various planes, helicopters and flying saucers"
}

Response samples

Content type
application/json
{
  • "id": 15,
  • "name": "Flight training",
  • "description": "In this module you will be thought how to fly various planes, helicopters and flying saucers",
  • "moduleType": "LearningModule"
}

Returns all available module types from the system

Authorizations:
SessionToken

Responses

Response samples

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

CreditCard

Get all redemption partners

Authorizations:
SessionToken
query Parameters
category_id
integer <int64>

List of category ids to filter for

Responses

Response samples

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

Get all redemption partners in stylized pdf

Authorizations:
SessionToken

Responses

Get all redemption partner categories

Authorizations:
SessionToken

Responses

Response samples

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

ExternalReward

Get available points for certain user.

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of the user the get the available points for.

Responses

Response samples

Content type
application/json
0.1

Create a new external transaction.

Authorizations:
SessionToken
path Parameters
id
required
integer <int64>

Id of the module to book a new transaction to.

Request Body schema: application/json
required
userId
integer <int64>
externalTransactionId
string

The id of the transaction in the external system.

comment
string

A written comment belonging to the transaction.

amount
number <double> >= 0

The (positive) amount to be withdrawn.

Responses

Request samples

Content type
application/json
{
  • "userId": 0,
  • "externalTransactionId": "string",
  • "comment": "string",
  • "amount": 0.1
}

Resources

Get resource with Id.

Authorizations:
SessionToken
path Parameters
imageId
required
integer <int64>

Id of the Resource to retrieve.

query Parameters
size
string
Default: "Original"
Enum: "Original" "w250" "w720" "w1080"

The width of the resource

Responses

Response samples

Content type
application/json
"string"

News

Return all news articles

Authorizations:
SessionToken

Responses

Response samples

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

Fetch one news entry

Authorizations:
SessionToken
path Parameters
newsId
required
integer <int64>

The news article Id

Responses

Response samples

Content type
application/json
{
  • "title": "Peter Parker is Spiderman!!",
  • "priority": {
    },
  • "teaserText": "string",
  • "text": "string",
  • "imageResource": {
    },
  • "endpoints": [
    ],
  • "visibleFrom": "2019-08-24T14:15:22Z",
  • "visibleUntill": "2019-08-24T14:15:22Z",
  • "pinned": true
}

Get the userId for the given token.

Authorizations:
SessionToken
path Parameters
token
required
string

Token of the link.

Responses

Response samples

Content type
application/json
0
0