Download OpenAPI specification:
IOM - External API
{- "resultCode": 0,
- "returnObject": [
- {
- "id": 1,
- "name": "Test company",
- "address": [
- {
- "city": "Innsbruck",
- "country": "AT",
- "zip": "6020",
- "addition": "2nd floor",
- "street": "Maria Theresienstr. 16"
}
], - "logo": {
- "webLink": false,
- "resourceCollection": false,
- "mimeType": "image/jpeg",
- "children": [
- { }
], - "ordinal": 1,
- "label": "label"
}, - "color": "#3b4dd9"
}
]
}{- "resultCode": 0,
- "returnObject": {
- "id": 1,
- "name": "Test company",
- "address": [
- {
- "city": "Innsbruck",
- "country": "AT",
- "zip": "6020",
- "addition": "2nd floor",
- "street": "Maria Theresienstr. 16"
}
], - "logo": {
- "webLink": false,
- "resourceCollection": false,
- "mimeType": "image/jpeg",
- "children": [
- { }
], - "ordinal": 1,
- "label": "label"
}, - "color": "#3b4dd9"
}
}creates a company
| partnerId required | integer Must correspond to a valid franchise partner id |
| name required | string Must be non-empty |
| color | string Must be a valid non-empty hex rgb color code. E.g. #a32311 |
| zip | string |
| city | string |
| street | string |
| country | string Must be a valid country code, retrievable by address/country request |
{- "resultCode": 400,
- "returnObject": null
}Update a given company
| id required | integer >= 1 the company id |
| name required | string Must be non-empty |
| color | string Must be a valid non-empty hex rgb color code. E.g. #a32311 |
| zip | string |
| city | string |
| street | string |
| country | string Must be a valid country code, retrievable by address/country request |
{- "resultCode": 400,
- "returnObject": null
}Updates the image of a company
| id | integer >= 1 the company id |
| file | string <binary> should be a png or jpg file, if no object is provided the old image will be deleted |
{- "resultCode": 400,
- "returnObject": null
}Create a new participant group.
| name required | string |
| companyId required | integer <int64> |
{- "resultCode": 0,
- "returnObject": {
- "id": 1,
- "name": "Test group",
- "companyId": 1,
- "groupMembers": [
- {
- "id": 1,
- "firstName": "Beta",
- "lastName": "Tester",
- "email": "beta.tester@m-pulso.com",
- "salutation": "NEUTRAL",
- "academicTitlePrefix": "Dr.",
- "academicTitleSuffix": "MSc",
- "additionalInfo": "string",
- "birthDate": 1493192100000,
- "language": "en",
- "profileImage": {
- "webLink": false,
- "resourceCollection": false,
- "mimeType": "image/jpeg",
- "children": [
- { }
], - "ordinal": 1,
- "label": "label"
}, - "externalId": "1"
}
]
}
}{- "resultCode": 0,
- "returnObject": [
- {
- "id": 1,
- "name": "Test group",
- "companyId": 1,
- "groupMembers": [
- {
- "id": 1,
- "firstName": "Beta",
- "lastName": "Tester",
- "email": "beta.tester@m-pulso.com",
- "salutation": "NEUTRAL",
- "academicTitlePrefix": "Dr.",
- "academicTitleSuffix": "MSc",
- "additionalInfo": "string",
- "birthDate": 1493192100000,
- "language": "en",
- "profileImage": {
- "webLink": false,
- "resourceCollection": false,
- "mimeType": "image/jpeg",
- "children": [
- { }
], - "ordinal": 1,
- "label": "label"
}, - "externalId": "1"
}
]
}
]
}Retrieve a participant group by its id.
| id required | integer <int64> Example: id=1 |
{- "resultCode": 0,
- "returnObject": {
- "id": 1,
- "name": "Test group",
- "companyId": 1,
- "groupMembers": [
- {
- "id": 1,
- "firstName": "Beta",
- "lastName": "Tester",
- "email": "beta.tester@m-pulso.com",
- "salutation": "NEUTRAL",
- "academicTitlePrefix": "Dr.",
- "academicTitleSuffix": "MSc",
- "additionalInfo": "string",
- "birthDate": 1493192100000,
- "language": "en",
- "profileImage": {
- "webLink": false,
- "resourceCollection": false,
- "mimeType": "image/jpeg",
- "children": [
- { }
], - "ordinal": 1,
- "label": "label"
}, - "externalId": "1"
}
]
}
}Add a participant to a group.
| groupId required | integer <int64> |
| participantId required | integer <int64> |
| addToAllTrainings | boolean |
{- "resultCode": 0,
- "returnObject": null
}Remove a participant from a group.
| groupId required | integer <int64> |
| participantId required | integer <int64> |
| removeFromAllTrainings | boolean |
{- "resultCode": 0,
- "returnObject": null
}Retrieve the statistics for a specific training, including per user statistics for all of its participants.
| trainingId required | integer <int64> Example: trainingId=1 |
{- "resultCode": 0,
- "returnObject": {
- "trainingId": 1,
- "title": "Training1",
- "location": "Room A",
- "state": "APPROVED",
- "date": 1490598300000,
- "timeFrames": [
- {
- "startDate": 1490598300000,
- "endDate": 1493192100000,
- "prolongation": true
}
], - "userStatistics": [
- {
- "userId": 1,
- "email": "tp1@m-pulso.com",
- "learningSteps": 5,
- "correctLearningSteps": 3,
- "wrongLearningSteps": 2,
- "completionRate": 0.5,
- "finalExamPassed": false,
- "finalExamPercentage": 0.5,
- "finalExamApproaches": [
- {
- "correctPercentage": 60.5,
- "duration": 28000,
- "date": 1490598300000,
- "details": [
- {
- "correct": true,
- "startTime": 1490598300000,
- "duration": 2000,
- "learningCardId": 1
}
]
}
], - "lastActive": 1490598300000
}
]
}
}Retrieve all available trainings statistics for a specific training participant.
| participantId required | integer <int64> Example: participantId=1 |
| state | string Enum: "IN_CREATION" "CREATED" "IN_REVIEW" "REJECTED" "APPROVED" "ARCHIVED" Example: state=APPROVED |
{- "resultCode": 0,
- "returnObject": [
- {
- "trainingId": 1,
- "title": "Training1",
- "location": "Room A",
- "state": "APPROVED",
- "date": 1490598300000,
- "timeFrames": [
- {
- "startDate": 1490598300000,
- "endDate": 1493192100000,
- "prolongation": true
}
], - "userStatistics": [
- {
- "userId": 1,
- "email": "tp1@m-pulso.com",
- "learningSteps": 5,
- "correctLearningSteps": 3,
- "wrongLearningSteps": 2,
- "completionRate": 0.5,
- "finalExamPassed": false,
- "finalExamPercentage": 0.5,
- "finalExamApproaches": [
- {
- "correctPercentage": 60.5,
- "duration": 28000,
- "date": 1490598300000,
- "details": [
- {
- "correct": true,
- "startTime": 1490598300000,
- "duration": 2000,
- "learningCardId": 1
}
]
}
], - "lastActive": 1490598300000
}
]
}
]
}{- "resultCode": 0,
- "returnObject": [
- {
- "id": 1,
- "firstName": "Samantha",
- "lastName": "Musk",
- "activated": true,
- "email": "samantha.musk@m-pulso.com",
- "salutation": "NEUTRAL",
- "academicTitlePrefix": "Dr.",
- "academicTitleSuffix": "MSc"
}
]
}Retrieve a list of all trainings.
| state | string Enum: "IN_CREATION" "CREATED" "IN_REVIEW" "REJECTED" "APPROVED" "ARCHIVED" |
{- "resultCode": 0,
- "returnObject": [
- {
- "id": 1,
- "title": "Test-Training",
- "language": "German",
- "location": "Innsbruck",
- "state": "IN_CREATION",
- "timeFrames": [
- {
- "startDate": 1490598300000,
- "endDate": 1493192100000,
- "prolongation": true
}
], - "learningCards": [
- {
- "id": 1,
- "title": "LearningCard1"
}
]
}
]
}Retrieve a specific training by id.
| id required | integer <int64> Example: id=1 |
{- "resultCode": 0,
- "returnObject": {
- "id": 1,
- "title": "Test-Training",
- "language": "German",
- "location": "Innsbruck",
- "state": "IN_CREATION",
- "timeFrames": [
- {
- "startDate": 1490598300000,
- "endDate": 1493192100000,
- "prolongation": true
}
], - "learningCards": [
- {
- "id": 1,
- "title": "LearningCard1"
}
]
}
}Add a participant group to a training → all participants of the group are added to the training.
| trainingId required | integer <int64> |
| groupId required | integer <int64> |
{- "resultCode": 0,
- "returnObject": null
}Remove a group from a training.
| trainingId required | integer <int64> |
| groupId required | integer <int64> |
| removeAllGroupMembers | boolean Default: false |
{- "resultCode": 0,
- "returnObject": null
}Retrieve a list of all trainings belonging to the given trainer.
| activeOnly | boolean |
| trainerId required | integer <int64> Example: trainerId=1 |
{- "resultCode": 0,
- "returnObject": {
- "id": 1,
- "title": "Test-Training",
- "language": "German",
- "location": "Innsbruck",
- "state": "IN_CREATION",
- "timeFrames": [
- {
- "startDate": 1490598300000,
- "endDate": 1493192100000,
- "prolongation": true
}
], - "learningCards": [
- {
- "id": 1,
- "title": "LearningCard1"
}
]
}
}Change the label of the trainer that is shown on certificates. If not set, current value will be cleared.
| trainingId required | integer <int64> |
| trainerLabel | string |
{- "resultCode": 0,
- "returnObject": null
}Delete a TrainingParticipant.
One of participantId or externalId must be set to identify the user, if both are set, externalId will be ignored.
| participantId | integer <int64> Example: participantId=1 |
| externalId | string Example: externalId=1 |
{- "resultCode": 0,
- "returnObject": null
}Retrieve the login URL for a specific participant. This URL behaves differently depending on which platform it is opened. Either the installed app is opened and the login parameters are passed to it, or the user is forwarded to the platform specific store entry, or the web client is opened.
One of participantId or externalId must be set to identify the user, if both are set, externalId will be ignored.
| participantId | integer <int64> Example: participantId=1 |
| externalId | string Example: externalId=1 |
{- "resultCode": 0,
}Create a new training participant.
| email required | string E-mail of participant |
| firstName required | string First name of participant |
| lastName required | string Last name of participant |
| salutation | string Enum: "MISTER" "MISS" "NEUTRAL" |
| titlePrefix | string Academic title preceding name |
| titleSuffix | string Academic title following name |
| externalId | string External id to connect with third party services |
| birthdate | integer <int64> Birth date in milliseconds since January 1, 1970 00:00:00 |
| additionalInfo | string Additional info which should be attached to the participant. |
| language | string Preferred user language in ISO2 format. |
| password | string Password to set for user (at least 6 characters long, no whitespace) |
| locked | boolean Default: false Set to 'true' to create a locked user |
{- "resultCode": 403,
- "returnObject": {
- "id": 1,
- "firstName": "Beta",
- "lastName": "Tester",
- "email": "beta.tester@m-pulso.com",
- "salutation": "NEUTRAL",
- "academicTitlePrefix": "Dr.",
- "academicTitleSuffix": "MSc",
- "additionalInfo": "string",
- "birthDate": 1493192100000,
- "language": "en",
- "profileImage": {
- "webLink": false,
- "resourceCollection": false,
- "mimeType": "image/jpeg",
- "children": [
- { }
], - "ordinal": 1,
- "label": "label"
}, - "externalId": "1"
}
}Update the external id of a TrainingParticipant.
One of id or currentExternalId must be set to identify the user to update. If both are set, externalId will be ignored.
| id | integer <int64> |
| currentExternalId | string |
| newExternalId required | string |
{- "resultCode": 0,
- "returnObject": null
}Update an existing training participant.
One of id or externalId must be set to identify the user to update. If both are set, externalId will be ignored.
| id | integer <int64> |
| externalId | string |
string E-mail of participant. If not set, current value remains | |
| firstName | string First name of participant. If not set, current value remains. |
| lastName | string Last name of participant. If not set, current value remains |
| salutation | string Enum: "MISTER" "MISS" "NEUTRAL" One of MISTER, MISS, NEUTRAL. If not set, current value will be cleared. |
| titlePrefix | string Academic title preceding name. If not set, current value will be cleared. |
| titleSuffix | string Academic title following name. If not set, current value will be cleared. |
| password | string Password to set for user (at least 6 characters long, no whitespace). If not set, current value remains. |
| additionalInfo | string Additional info which should be attached to the participant. If not set, current value will be cleared. |
| birthdate | integer <int64> Birth date in milliseconds since January 1, 1970 00:00:00. If not set, current value will be cleared |
| language | string Preferred user language in ISO2 format. If not set, current value will be cleared. |
| locked | boolean If set to true, the user will get locked. If set to false, the user will get unlocked. If not set, current value will not get modified. |
{- "resultCode": 403,
- "returnObject": {
- "id": 1,
- "firstName": "Beta",
- "lastName": "Tester",
- "email": "beta.tester@m-pulso.com",
- "salutation": "NEUTRAL",
- "academicTitlePrefix": "Dr.",
- "academicTitleSuffix": "MSc",
- "additionalInfo": "string",
- "birthDate": 1493192100000,
- "language": "en",
- "profileImage": {
- "webLink": false,
- "resourceCollection": false,
- "mimeType": "image/jpeg",
- "children": [
- { }
], - "ordinal": 1,
- "label": "label"
}, - "externalId": "1"
}
}Retrieve a training participant by its id.
| id required | integer <int64> Example: id=1 |
{- "resultCode": 0,
- "returnObject": {
- "id": 1,
- "firstName": "Beta",
- "lastName": "Tester",
- "email": "beta.tester@m-pulso.com",
- "salutation": "NEUTRAL",
- "academicTitlePrefix": "Dr.",
- "academicTitleSuffix": "MSc",
- "additionalInfo": "string",
- "birthDate": 1493192100000,
- "language": "en",
- "profileImage": {
- "webLink": false,
- "resourceCollection": false,
- "mimeType": "image/jpeg",
- "children": [
- { }
], - "ordinal": 1,
- "label": "label"
}, - "externalId": "1"
}
}Retrieve a training participant by its external id.
| externalId required | string |
{- "resultCode": 0,
- "returnObject": {
- "id": 1,
- "firstName": "Beta",
- "lastName": "Tester",
- "email": "beta.tester@m-pulso.com",
- "salutation": "NEUTRAL",
- "academicTitlePrefix": "Dr.",
- "academicTitleSuffix": "MSc",
- "additionalInfo": "string",
- "birthDate": 1493192100000,
- "language": "en",
- "profileImage": {
- "webLink": false,
- "resourceCollection": false,
- "mimeType": "image/jpeg",
- "children": [
- { }
], - "ordinal": 1,
- "label": "label"
}, - "externalId": "1"
}
}{- "resultCode": 0,
- "returnObject": [
- {
- "id": 1,
- "firstName": "Beta",
- "lastName": "Tester",
- "email": "beta.tester@m-pulso.com",
- "salutation": "NEUTRAL",
- "academicTitlePrefix": "Dr.",
- "academicTitleSuffix": "MSc",
- "additionalInfo": "string",
- "birthDate": 1493192100000,
- "language": "en",
- "profileImage": {
- "webLink": false,
- "resourceCollection": false,
- "mimeType": "image/jpeg",
- "children": [
- { }
], - "ordinal": 1,
- "label": "label"
}, - "externalId": "1"
}
]
}Retrieve a training participant by its email address.
| email required | string |
{- "resultCode": 0,
- "returnObject": {
- "id": 1,
- "firstName": "Beta",
- "lastName": "Tester",
- "email": "beta.tester@m-pulso.com",
- "salutation": "NEUTRAL",
- "academicTitlePrefix": "Dr.",
- "academicTitleSuffix": "MSc",
- "additionalInfo": "string",
- "birthDate": 1493192100000,
- "language": "en",
- "profileImage": {
- "webLink": false,
- "resourceCollection": false,
- "mimeType": "image/jpeg",
- "children": [
- { }
], - "ordinal": 1,
- "label": "label"
}, - "externalId": "1"
}
}Check if the GDPR acceptance is present.
| participantId required | integer <int64> Example: participantId=1 |
| bundleId | string Example: bundleId=1263455225 |
| packageName | string Example: packageName=com.iom.microtraining.test3 |
| webClientLink | string Example: webClientLink=https://test3.micro-training.com/ |
{- "resultCode": 0,
- "returnObject": true
}Update the GDPR acceptance.
| participantId required | integer <int64> |
| gdprAccepted required | boolean |
| bundleId | string |
| packageName | string |
| webClientLink | string |
{- "resultCode": 0,
- "returnObject": null
}Reset the GDPR acceptance for all training participants.
| bundleId | string Example: bundleId=1263455225 |
| packageName | string Example: packageName=com.iom.microtraining.test3 |
| webClientLink | string Example: webClientLink=https://test3.micro-training.com/ |
{- "resultCode": 0,
- "returnObject": null
}