LapID API (3.2.0)

Download OpenAPI specification:

Annotation

New API version

Version 3.2.0 introduces full System User management via /system-users incl. role assignments to companies. It also adds person move support (…/persons/{personUuid}/move), extends person instructions with deepLink and introduces uuids for all objects and routes (numeric IDs are deprecated as of now.).

Changes from version 3.1.0

1. Adjusted objects:

  • Person (language enum extended with fr)

2. Identifier migration:

  • Path variables are now named as UUID placeholders (e.g. {companyUuid}, {personUuid}).
  • Existing entities support UUIDs and legacy numeric IDs for backward compatibility. If a UUID and a deprecated numeric ID are both provided for the same object or relation, the UUID is used. If no UUID is provided and the deprecated numeric ID is provided, the numeric ID is used.
  • New system user and system user assignment endpoints use UUID-only identifiers.
  • In 201 Created responses, the response body returns the created resource UUID. Legacy object-id is returned as deprecated header for backward compatibility on legacy create endpoints.
  • Numeric IDs are deprecated and should be replaced by UUIDs.
  • Assigned person instructions now include deepLink in the response object to open the exact instruction/e-learning directly in the LapID portal without requiring a separate login.

4. Person instruction module selection:

  • For instruction activation requests, moduleUuids (optional) was added to select instruction modules by UUID.
  • The legacy modules request field is deprecated and only kept for backward compatibility.

5. Person company move:

  • A dedicated endpoint was added to move persons between companies: …/persons/{personUuid}/move.
  • During the move, assigned person products are deactivated and supervisor assignments are removed.
  • If required, products and supervisors must be assigned again in the target company via separate API calls.
  • Moving a person is an asynchronous process. The move endpoint returns an asyncTaskUuid to poll the processing status via GET /async-tasks/{asyncTaskUuid}.

6. Async task status:

  • A dedicated endpoint was added to get the status and result of async tasks: …/async-tasks/{asyncTaskUuid}.

7. System User management:

  • Full system user management is now available including CRUD operations, role assignments to companies, and activation/deactivation controls. System users can be managed independently across multiple companies with role-based access control.

8. License categories (Coming soon):

  • Update and manage driver's license categories for persons.

9. New requests:

  • List all system users: …/system-users

  • Create a system user: …/system-users

  • Get a system user: …/system-users/{systemUserUuid}

  • Get extended system user information: …/system-users/{systemUserUuid}/extended

  • Update a system user: …/system-users/{systemUserUuid}

  • Delete a system user: …/system-users/{systemUserUuid}

  • Activate or deactivate a system user: …/system-users/{systemUserUuid}/active

  • Get system user assignments: …/system-users/{systemUserUuid}/assignments

  • Update system user assignments: …/system-users/{systemUserUuid}/assignments

  • Start an async task to move a person to another company: …/persons/{personUuid}/move

  • Get async task processing status and result: …/async-tasks/{asyncTaskUuid}

  • Coming soon: Update a person's driver's license categories: …/persons/{personUuid}/license/categories

10. New objects:

  • SystemUser

  • SystemUserCreate

  • SystemUserExtended

  • SystemUserAssignment

  • SystemUserAssignments

  • SystemUserRole

  • ListResponseSystemUser

  • PersonMoveCompanyRequest

  • Coming soon: LicenseCategory

  • Coming soon: PersonLicenseCategoryUpdateRequest

Brief introduction

The LapID API supports syncing of base data for persons, supervisors, companies and system users. Additionally it supports the LapID products License Check and Instructions. You can change the settings for both products. The License Check and Instructions will still be processed by the LapID systems. For further instructions please see the Integration Guide.

Authorization

To use the API, a Bearer Token is required. You can create this token as an administrator via the settings in the LapID customer system. For more information, see the Integration Guide. For authorization, use the API token as a Bearer Token in the Authorization header.

ETag

if-match recommend to prevent synchronisation issues. Value should represent sha256 hash of the lastModified value. if-None-match recommend if you only want to update, if there was a change.

Pagination

Some API calls return a paginated list of items. To control the pagination of this list, the following parameters may be provided:

  • If the optional offset is provided, the given number of items will be skipped. Otherwise, it will be set to 0, resulting in no items being skipped.

  • Using limit the number of returned items can be limited. A maximum of 100 items can be requested.

  • The order of returned items can be controlled using the orderBy key. The list will be ordered using the object property named by this key. By default items will be ordered by id.

In addition to the list of items both offset and limit will be returned. These may differ from the request if their values lay outside the range of allowed values. Moreover, a property called maxCount will also be returned containing the total number of items on the server.

Localisation

Accept-Language Header must be submitted to get the response in the local format. Currently, only English and German locales are supported. If no header is provided the default locale (English) will be used.

Persons

Manage persons data and product specific settings for the person.

List all persons

Gets a list of all persons of the given company. These persons may also be filtered by using the query parameters below.

Optional filters:

  • externalPersonIds
  • personIds (deprecated, numeric IDs)
  • personUuids (UUIDs)
Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

query Parameters
personIds
Array of integers <int32> [ items <int32 > ]
Deprecated

Deprecated list of person numeric IDs.

personUuids
Array of strings <uuid> [ items <uuid > ]

List of person UUIDs.

externalPersonIds
Array of strings
offset
integer <int32>
limit
integer <int32>
orderBy
string

Responses

Response samples

Content type
application/json
{
  • "maxCount": 0,
  • "limit": 0,
  • "offset": 0,
  • "listData": [
    ]
}

Create a person

Create a new person with base data in the given company.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
active
boolean

Indicates if the person is active

externalId
string

Drivers Id in another system, can be used as an additional identifier

ssoIdentifier
string

Additional access for Single Sign-On (SSO) to accommodate external users with diverse email addresses. This is a paid feature. For activation, please contact support@lapid.de.

name
required
string
firstName
required
string
birthName
string
title
string
salutation
string
Enum: "mr" "ms"
dayOfBirth
string <date>
required
object
language
string
Enum: "de" "en" "fr"

Default language of the person

personnelNo
string

Company personnel number of the person

department
string

Company department the person is part of

personRemark
string
privatePhone
string
officialPhone
string
country
string
street
string
postcode
string
city
string

Responses

Request samples

Content type
application/json
{
  • "externalId": "string",
  • "ssoIdentifier": "string",
  • "name": "Mustermann",
  • "firstName": "Erika",
  • "birthName": "Musterfrau",
  • "title": "Dr.",
  • "salutation": "ms",
  • "dayOfBirth": "2019-08-24",
  • "contact": {
    },
  • "language": "de",
  • "personnelNo": "string",
  • "department": "string",
  • "personRemark": "string",
  • "privatePhone": "+491234567890",
  • "officialPhone": "+491234567890",
  • "country": "string",
  • "street": "Hauptstrasse 30",
  • "postcode": "string",
  • "city": "string"
}

Response samples

Content type
application/json
{
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f"
}

Get a person

Get the base data of a specific person.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "externalId": "string",
  • "ssoIdentifier": "string",
  • "companyId": 0,
  • "companyUuid": "fdfe4f8f-1fcb-4da9-b882-48ec3a9a0d16",
  • "active": true,
  • "status": "green",
  • "statusMessage": "string",
  • "name": "Mustermann",
  • "firstName": "Erika",
  • "birthName": "Musterfrau",
  • "title": "Dr.",
  • "salutation": "ms",
  • "dayOfBirth": "2019-08-24",
  • "contact": {
    },
  • "language": "de",
  • "personnelNo": "string",
  • "department": "string",
  • "personRemark": "string",
  • "privatePhone": "+491234567890",
  • "officialPhone": "+491234567890",
  • "country": "string",
  • "street": "Hauptstrasse 30",
  • "postcode": "string",
  • "city": "string",
  • "lastModified": "2019-08-24T14:15:22Z"
}

Update a person

Update the base data of a specific person.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
externalId
string

Drivers Id in another system, can be used as an additional identifier

ssoIdentifier
string

Additional access for Single Sign-On (SSO) to accommodate external users with diverse email addresses. This is a paid feature. For activation, please contact support@lapid.de.

name
required
string
firstName
required
string
birthName
string
title
string
salutation
string
Enum: "mr" "ms"
dayOfBirth
string <date>
required
object
language
string
Enum: "de" "en" "fr"

Default language of the person

personnelNo
string

Company personnel number of the person

department
string

Company department the person is part of

personRemark
string
privatePhone
string
officialPhone
string
country
string
street
string
postcode
string
city
string

Responses

Request samples

Content type
application/json
{
  • "externalId": "string",
  • "ssoIdentifier": "string",
  • "name": "Mustermann",
  • "firstName": "Erika",
  • "birthName": "Musterfrau",
  • "title": "Dr.",
  • "salutation": "ms",
  • "dayOfBirth": "2019-08-24",
  • "contact": {
    },
  • "language": "de",
  • "personnelNo": "string",
  • "department": "string",
  • "personRemark": "string",
  • "privatePhone": "+491234567890",
  • "officialPhone": "+491234567890",
  • "country": "string",
  • "street": "Hauptstrasse 30",
  • "postcode": "string",
  • "city": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Delete a person

Delete a specific person.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Get extended person information

Get all data associated with a specific person incl. all activated product information.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "externalId": "string",
  • "ssoIdentifier": "string",
  • "companyId": 0,
  • "companyUuid": "fdfe4f8f-1fcb-4da9-b882-48ec3a9a0d16",
  • "active": true,
  • "status": "green",
  • "statusMessage": "string",
  • "name": "Mustermann",
  • "firstName": "Erika",
  • "birthName": "Musterfrau",
  • "title": "Dr.",
  • "salutation": "ms",
  • "dayOfBirth": "2019-08-24",
  • "contact": {
    },
  • "language": "de",
  • "personnelNo": "string",
  • "department": "string",
  • "personRemark": "string",
  • "privatePhone": "+491234567890",
  • "officialPhone": "+491234567890",
  • "country": "string",
  • "street": "Hauptstrasse 30",
  • "postcode": "string",
  • "city": "string",
  • "lastModified": "2019-08-24T14:15:22Z",
  • "supervisorIds": [
    ],
  • "supervisorUuids": [
    ],
  • "license": {
    },
  • "licenseCheck": {
    },
  • "instructions": {
    },
  • "driverQualification": {
    }
}

Activate / deactivate a person

Activate or deactivate a specific person.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
active
boolean

Activate/deactivate driver

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Move a person to another company

Queue moving a specific person from the current company to another company.

The move is processed asynchronously. If the request is accepted, the response returns an asyncTaskUuid instead of waiting for the move to finish. Poll GET /async-tasks/{asyncTaskUuid} with this UUID to retrieve the processing status and final result of the move.

During the move:

  • all assigned person products will be deactivated
  • all supervisor assignments will be removed
  • product activation in the target company must be done with separate API calls (e.g. person license check / person instructions endpoints)
  • if required, supervisors must be assigned again in the target company via the person's supervisors endpoint

For moving persons across tenants, multi-tenant api permissions are required.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
Any of
companyId
integer <int32>
Deprecated

Deprecated numeric ID of the target company. Used only if companyUuid is not set.

companyUuid
required
string <uuid>

UUID of the target company. Takes precedence over the deprecated companyId if both are set.

Responses

Request samples

Content type
application/json
{
  • "companyId": 0,
  • "companyUuid": "fdfe4f8f-1fcb-4da9-b882-48ec3a9a0d16"
}

Response samples

Content type
application/json
{
  • "asyncTaskUuid": "25facb60-dd83-40bd-b3fc-47de5d374f51"
}

Get a person's supervisor identifiers

Get all supervisors associated with this person.

Response supports both formats:

  • supervisorIds (deprecated, numeric IDs)
  • supervisorUuids (UUIDs)
Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "supervisorIds": [
    ],
  • "supervisorUuids": [
    ],
  • "lastModified": "2019-08-24T14:15:22Z"
}

Update a person's supervisor identifiers

Update all supervisors associated with this person.

Request supports both formats:

  • supervisorIds (deprecated, numeric IDs)
  • supervisorUuids (UUIDs)
Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
supervisorIds
Array of integers <int32> unique [ items <int32 > ]
Deprecated

Deprecated array of supervisor numeric IDs. Used only if supervisorUuids is not set.

supervisorUuids
Array of strings <uuid> unique [ items <uuid > ]

Array of supervisor UUIDs. Takes precedence over the deprecated supervisorIds if both are set.

Responses

Request samples

Content type
application/json
{
  • "supervisorIds": [
    ],
  • "supervisorUuids": [
    ]
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Get a person's driver's license

Get the driver's license data of a specific person.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "validUntil": "2019-08-24",
  • "licenseNumber": "Z014AB837X95",
  • "authority": "Fahrerlaubnisbehörde Berlin",
  • "issueDate": "2019-08-24",
  • "licenseRemark": "Person needs glasses",
  • "countryOfIssue": "string",
  • "licenseType": "paper",
  • "label": {
    },
  • "licenseCategories": [
    ],
  • "lastModified": "2019-08-24T14:15:22Z"
}

Update a person's driver's license

Update the driver's license data of a specific person.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
validUntil
string <date>

The expiring date of the license

licenseNumber
required
string

Number printed on person's license. Needs to be unique within the company

authority
string

License authority that has issued this license

issueDate
string <date>

The issue date of the license

licenseRemark
string
countryOfIssue
string

Specifies the country of issue in ISO-Code 3166-2. Additionally enum OC is used for driver licenses issued from Non-EU-Contries.

licenseType
required
string
Enum: "paper" "card" "other"

Specifies license type

Responses

Request samples

Content type
application/json
{
  • "validUntil": "2019-08-24",
  • "licenseNumber": "Z014AB837X95",
  • "authority": "Fahrerlaubnisbehörde Berlin",
  • "issueDate": "2019-08-24",
  • "licenseRemark": "Person needs glasses",
  • "countryOfIssue": "string",
  • "licenseType": "paper"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Delete a person's driver's license

Delete the driver's license of a specific person. Note that the assigned label also will be deleted.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Get a person's label

Get the data of the LapID label, which is attached to the driver's license of a specific person.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "labelNumber": 0,
  • "checksum": 0,
  • "lastModified": "2019-08-24T14:15:22Z"
}

Update a person's label

Update / exchange the LapID label, which is attached to the driver's license of a specific person.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
labelNumber
required
integer <int32>

Top number printed on the LapID label

checksum
required
integer <int32>

Bottom number printed on the LapID label

Responses

Request samples

Content type
application/json
{
  • "labelNumber": 0,
  • "checksum": 0
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Delete a person's label

Delete the LapID label, which is attached to the driver's license of a specific person.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Get a person's driver qualifications

Get the driver qualifications of a specific person.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "passenger": {
    },
  • "goods": {
    },
  • "lastModified": "2019-08-24T14:15:22Z"
}

Update a person's driver qualifications

Update driver qualifications of a specific person.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
object
object

Responses

Request samples

Content type
application/json
{
  • "passenger": {
    },
  • "goods": {
    }
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Delete a person's driver qualifications

Delete the driver qualifications of a specific person.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Get a person's record URL

Get the URL into the LapID Customer Portal to show the person's full record.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "recordUrl": "string"
}

Supervisors

Manage supervisors data and product specific settings for the supervisor.

List all supervisors

Gets a list of all supervisors of the given company. These supervisors may also be filtered by using the query parameters below.

Optional filters:

  • supervisorIds (deprecated, numeric IDs)
  • supervisorUuids (UUIDs)
  • externalSupervisorIds
Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

query Parameters
supervisorIds
Array of integers <int32> [ items <int32 > ]
Deprecated

Deprecated list of supervisor numeric IDs.

supervisorUuids
Array of strings <uuid> [ items <uuid > ]

List of supervisor UUIDs.

externalSupervisorIds
Array of strings
offset
integer <int32>
limit
integer <int32>
orderBy
string

Responses

Response samples

Content type
application/json
{
  • "maxCount": 0,
  • "limit": 0,
  • "offset": 0,
  • "listData": [
    ]
}

Create a supervisor

Create a new supervisor with base data in the given company.

Escalation levels are not set during creation. After creating a supervisor, set escalation levels via separate requests:

  • PUT /supervisors/{supervisorUuid}/license-check
  • PUT /supervisors/{supervisorUuid}/instructions These requests are documented here:
  • Section Driver's License Check -> Update supervisor's license check settings
  • Section Instructions -> Update supervisor's instructions settings
Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
active
boolean

Indicates if the supervisor is active. Use this to change the supervisor's status

externalId
string

External supervisor identifier. Does not need to be unique

salutation
string
Enum: "mr" "ms"
title
string
name
required
string
firstName
required
string
emailAddress
required
string
department
string

Responses

Request samples

Content type
application/json
{
  • "externalId": "string",
  • "salutation": "ms",
  • "title": "Dr.",
  • "name": "Mustermann",
  • "firstName": "Erika",
  • "emailAddress": "erika@firma.de",
  • "department": "string"
}

Response samples

Content type
application/json
{
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f"
}

Get a supervisor

Get the base data of a specific supervisor.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "externalId": "string",
  • "companyId": 0,
  • "companyUuid": "fdfe4f8f-1fcb-4da9-b882-48ec3a9a0d16",
  • "active": true,
  • "salutation": "ms",
  • "title": "Dr.",
  • "name": "Mustermann",
  • "firstName": "Erika",
  • "emailAddress": "erika@firma.de",
  • "department": "string",
  • "lastModified": "2019-08-24T14:15:22Z"
}

Update a supervisor

Update the base data of a specific supervisor.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
externalId
string

External supervisor identifier. Does not need to be unique

salutation
string
Enum: "mr" "ms"
title
string
name
required
string
firstName
required
string
emailAddress
required
string
department
string

Responses

Request samples

Content type
application/json
{
  • "externalId": "string",
  • "salutation": "ms",
  • "title": "Dr.",
  • "name": "Mustermann",
  • "firstName": "Erika",
  • "emailAddress": "erika@firma.de",
  • "department": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Delete a supervisor

Delete a specific supervisor.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Get extended supervisor information

Gets all data associated with the supervisor incl. product settings.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "externalId": "string",
  • "companyId": 0,
  • "companyUuid": "fdfe4f8f-1fcb-4da9-b882-48ec3a9a0d16",
  • "active": true,
  • "salutation": "ms",
  • "title": "Dr.",
  • "name": "Mustermann",
  • "firstName": "Erika",
  • "emailAddress": "erika@firma.de",
  • "department": "string",
  • "lastModified": "2019-08-24T14:15:22Z",
  • "licenseCheck": {
    },
  • "instructions": {
    },
  • "personIds": [
    ],
  • "personUuids": [
    ]
}

Activate / deactivate a supervisor

Activate or deactivate a specific supervisor.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
active
boolean

Activate/deactivate supervisor

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Get a supervisor's person assignments

Gets all persons associated with this supervisor.

Response supports both formats:

  • personIds (deprecated, numeric IDs)
  • personUuids (UUIDs)
Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "personIds": [
    ],
  • "personUuids": [
    ],
  • "lastModified": "2019-08-24T14:15:22Z"
}

Update a supervisor's person assignments

Updates all associated persons of this supervisor.

Request supports both formats:

  • personIds (deprecated, numeric IDs)
  • personUuids (UUIDs)
Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
personIds
Array of integers <int32> unique [ items <int32 > ]
Deprecated

Deprecated array of person numeric IDs. Used only if personUuids is not set.

personUuids
Array of strings <uuid> unique [ items <uuid > ]

Array of person UUIDs. Takes precedence over the deprecated personIds if both are set.

Responses

Request samples

Content type
application/json
{
  • "personIds": [
    ],
  • "personUuids": [
    ]
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Driver's License Check

Specific Driver's License Check settings for a person, supervisor and company

Get license check information of a person

Gets all license check information of a specific person.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "last": "2019-08-24T14:15:22Z",
  • "scheduledDate": "2019-08-24",
  • "licenseCheckType": "manual",
  • "checkPossibleFrom": "2019-08-24",
  • "nextReminder": "2019-08-24",
  • "status": "green",
  • "statusMessage": "string",
  • "interval": "yearly"
}

Activate or update the license check of a person (custom date)

Activate or update the license check of a specific person. This request allows you to set a custom date for the next license check.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
scheduledDate
required
string <date>

Date of the next license check.

licenseCheckType
required
string
Enum: "manual" "label" "driverApp"

The control method, which should be used to check the license.

interval
required
string
Enum: "yearly" "halfYearly" "quarterly" "monthly" "dynamicFourTimes" "dynamicTwice" "spontaneous"

Interval for the product.

Responses

Request samples

Content type
application/json
{
  • "scheduledDate": "2019-08-24",
  • "licenseCheckType": "manual",
  • "interval": "yearly"
}

Response samples

Content type
application/json
{
  • "scheduledDate": "2019-08-24"
}

Deactivate the license check of a person

Deactivate a planned license check of a specific person.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Activate or update the license check of a person (generated date)

Activate or update the license check of a specific person. This request will automatically generate the next license check date, based on the given mode.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
mode
required
string
Enum: "afterFuturePeriod" "nextNeeded"

The next instruction check will be scheduled automatically. | afterFuturePeriod will delay the check by the provided interval. | nextNeeded will schedule the next needed instruction check date.

licenseCheckType
required
string
Enum: "manual" "label" "driverApp"

The control method, which should be used to check the license.

interval
required
string
Enum: "yearly" "halfYearly" "quarterly" "monthly" "dynamicFourTimes" "dynamicTwice" "spontaneous"

Interval for the product.

Responses

Request samples

Content type
application/json
{
  • "mode": "afterFuturePeriod",
  • "licenseCheckType": "manual",
  • "interval": "yearly"
}

Response samples

Content type
application/json
{
  • "scheduledDate": "2019-08-24"
}

Perform manual license check

With this endpoint it is possible to provide information that a manual license check happened for the person. Only necessary if the license check is set to Manual.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
remark
required
string
supervisorName
required
string

Responses

Request samples

Content type
application/json
{
  • "remark": "string",
  • "supervisorName": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Get supervisor's license check settings

Get the license check settings of a specific supervisor.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "escalationLevel1": true,
  • "escalationLevel2": true,
  • "escalationLevel3": true,
  • "lastModified": "2019-08-24T14:15:22Z"
}

Update supervisor's license check settings

Update the license check settings of a specific supervisor.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
escalationLevel1
boolean

Supervisor will directly be notified concerning license check problems with a person

escalationLevel2
boolean

Supervisor will be notified after escalation level 1 supervisor let an issue escalate

escalationLevel3
boolean

Supervisor will be notified after escalation level 2 supervisor let an issue escalate

Responses

Request samples

Content type
application/json
{
  • "escalationLevel1": true,
  • "escalationLevel2": true,
  • "escalationLevel3": true
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Get company's license check settings

Gets the license check settings of a specific company.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "labelEnabled": true,
  • "manualEnabled": true,
  • "driverAppEnabled": true,
  • "active": true,
  • "contactName": "string",
  • "contactEmail": "string",
  • "contactPhone": "string",
  • "lastModified": "2019-08-24T14:15:22Z"
}

Update company's license check settings

Updates the license check settings of a specific company.

For this request multi-tenant api permissions are required.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
labelEnabled
boolean

Indicates if license checks via labels are allowed for this company

manualEnabled
boolean

Indicates if manual license checks are allowed for this company

driverAppEnabled
boolean

Indicates if license checks via the driver app are allowed for this company

active
boolean

Indicates if license checks are enabled for this company

contactName
string

Name of the person to be contacted on matters concerning license checks in this company

contactEmail
string

The contact person's email address

contactPhone
string

The contact person's phone number

Responses

Request samples

Content type
application/json
{
  • "labelEnabled": true,
  • "manualEnabled": true,
  • "driverAppEnabled": true,
  • "active": true,
  • "contactName": "string",
  • "contactEmail": "string",
  • "contactPhone": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Instructions

Specific Instructions settings for a person, supervisor and company

Get available instructions for a person

Gets all available instructions for a specific person, except the ones already assigned to this person.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

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

Get active instructions of a person

Get all planned instructions assigned to a specific person.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "instructions": [
    ],
  • "status": "green",
  • "statusMessage": "string"
}

Activate or update a person's instruction (custom date)

Activate or update an instruction of a specific person. This request allows you to set a custom date for the next instruction.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
scheduledDate
required
string <date>

Date of the next person instruction check.

Array of objects (PersonInstructionLegacyModule)
Deprecated

Deprecated list of modules selected by id and type. Used only if moduleUuids is not set.

moduleUuids
Array of strings <uuid> unique [ items <uuid > ]

Optional list of module UUIDs to activate. Takes precedence over the deprecated modules field if both are set. If omitted, all instruction modules will be activated.

interval
required
string
Enum: "yearly" "halfYearly" "quarterly" "biyearly"

Interval for the product.

Responses

Request samples

Content type
application/json
{
  • "scheduledDate": "2019-08-24",
  • "modules": [
    ],
  • "moduleUuids": [
    ],
  • "interval": "yearly"
}

Response samples

Content type
application/json
{
  • "scheduledDate": "2019-08-24"
}

Deactivate a person's instruction

Deactivate a planned instruction for a specific person.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Activate or update a person's instruction (generated date)

Activate or update a instruction of a specific person. This request will automatically generate the next instruction date, based on the given mode.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
Array of objects (PersonInstructionLegacyModule)
Deprecated

Deprecated list of modules selected by id and type. Used only if moduleUuids is not set.

moduleUuids
Array of strings <uuid> unique [ items <uuid > ]

Optional list of module UUIDs to activate. Takes precedence over the deprecated modules field if both are set. If omitted, all instruction modules will be activated.

mode
required
string
Enum: "afterFuturePeriod" "nextNeeded"

The next instruction will be scheduled automatically. | afterFuturePeriod will delay the check by the provided interval. | nextNeeded will schedule the next needed instruction date.

interval
required
string
Enum: "yearly" "halfYearly" "quarterly" "biyearly"

Interval for the product.

Responses

Request samples

Content type
application/json
{
  • "modules": [
    ],
  • "moduleUuids": [
    ],
  • "mode": "afterFuturePeriod",
  • "interval": "yearly"
}

Response samples

Content type
application/json
{
  • "scheduledDate": "2019-08-24"
}

Get supervisor's instruction settings

Get the instruction settings of a specific supervisor.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "escalationLevel1": true,
  • "escalationLevel2": true,
  • "escalationLevel3": true,
  • "lastModified": "2019-08-24T14:15:22Z"
}

Update supervisor's instructions settings

Updates the instructions settings of a specific supervisor.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
escalationLevel1
boolean

Supervisor will directly be notified concerning instructions problems with a person

escalationLevel2
boolean

Supervisor will be notified after escalation level 1 supervisor let an issue escalate

escalationLevel3
boolean

Supervisor will be notified after escalation level 2 supervisor let an issue escalate

Responses

Request samples

Content type
application/json
{
  • "escalationLevel1": true,
  • "escalationLevel2": true,
  • "escalationLevel3": true
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Get company's instructions settings

Gets the instruction settings of a specific company.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "active": true,
  • "contactName": "string",
  • "contactEmail": "string",
  • "contactPhone": "string",
  • "lastModified": "2019-08-24T14:15:22Z"
}

Update company's instructions settings

Updates the instruction settings of a specific company.

For this request multi-tenant api permissions are required.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
active
boolean

Indicates if this instructions are enabled for this company

contactName
string

Name of the person to be contacted on matters concerning instructions in this company

contactEmail
string

The contact person's email address

contactPhone
string

The contact person's phone number

Responses

Request samples

Content type
application/json
{
  • "active": true,
  • "contactName": "string",
  • "contactEmail": "string",
  • "contactPhone": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Copy instructions from parent company

Copy all instructions from the company's parent.

For this request multi-tenant api permissions are required.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Get available instructions for a company

Gets all available instructions for a specific company.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

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

Companies

Manage companies data and product specific settings for the companies.

List all companies

Gets all companies the current API token is allowed access. These companies may also be filtered by using the query parameters below.

Optional filters:

  • name
  • companyUuids (UUIDs)
  • externalCompanyIds
Authorizations:
bearerToken
query Parameters
name
string
companyUuids
Array of strings <uuid> [ items <uuid > ]

List of company UUIDs.

externalCompanyIds
Array of strings
offset
integer <int32>
limit
integer <int32>
orderBy
string

Responses

Response samples

Content type
application/json
{
  • "maxCount": 0,
  • "limit": 0,
  • "offset": 0,
  • "listData": [
    ]
}

Create a company

Create a new company that will be a child of the specified parent company (parentCompanyUuid) and inherit its configuration. The deprecated field parentCompanyId may still be used for backward compatibility. If parentCompanyUuid is set, it is used. If parentCompanyUuid is not set and parentCompanyId is set, parentCompanyId is used.

For this request multi-tenant api permissions are required.

Authorizations:
bearerToken
Request Body schema: application/json
Any of
active
boolean

Indicates if the company is active

externalId
string

External company identifier. Does not need to be unique

parentCompanyId
integer <int32>
Deprecated

Deprecated numeric ID of the parent company. Used only if parentCompanyUuid is not set.

parentCompanyUuid
required
string <uuid>

UUID of the parent company. Takes precedence over the deprecated parentCompanyId if both are set.

name
required
string

Name of the company. Needs to be unique

Responses

Request samples

Content type
application/json
{
  • "active": true,
  • "externalId": "string",
  • "parentCompanyId": 0,
  • "parentCompanyUuid": "e0cdfbbd-0e90-4d68-b0be-a9c6f511ca2e",
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f"
}

Get a company

Get base data of a specific company.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "externalId": "string",
  • "active": true,
  • "parentCompanyId": 0,
  • "parentCompanyUuid": "e0cdfbbd-0e90-4d68-b0be-a9c6f511ca2e",
  • "name": "string",
  • "lastModified": "2019-08-24T14:15:22Z"
}

Update a company

Update the base data of a specific company. If parentCompanyUuid is set, it is used. If parentCompanyUuid is not set and parentCompanyId is set, parentCompanyId is used. If neither parentCompanyUuid nor parentCompanyId is set, the existing parent company remains unchanged.

For this request multi-tenant api permissions are required.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
externalId
string

External company identifier. Does not need to be unique

parentCompanyId
integer <int32>
Deprecated

Deprecated numeric ID of the parent company. Used only if parentCompanyUuid is not set.

parentCompanyUuid
string <uuid>

UUID of the parent company. Takes precedence over the deprecated parentCompanyId if both are set.

name
required
string

Name of the company. Needs to be unique

Responses

Request samples

Content type
application/json
{
  • "externalId": "string",
  • "parentCompanyId": 0,
  • "parentCompanyUuid": "e0cdfbbd-0e90-4d68-b0be-a9c6f511ca2e",
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Delete a company

Delete a specific company.

For this request multi-tenant api permissions are required.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Get extended company information

Gets all data and settings for a specific company.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "externalId": "string",
  • "active": true,
  • "parentCompanyId": 0,
  • "parentCompanyUuid": "e0cdfbbd-0e90-4d68-b0be-a9c6f511ca2e",
  • "name": "string",
  • "lastModified": "2019-08-24T14:15:22Z",
  • "licenseCheck": {
    },
  • "instructions": {
    }
}

Activate / deactivate a company

Activate or deactivate a specific company.

For this request multi-tenant api permissions are required.

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
active
boolean

Activate/deactivate company

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

System Users

Manage system users data and role assignments to companies.

List all system users

Gets all system users the API token has access to. These system users may also be filtered by using the query parameters below.

Optional filters:

  • systemUserUuids (UUIDs)
  • externalSystemUserIds
Authorizations:
bearerToken
query Parameters
systemUserUuids
Array of strings <uuid> [ items <uuid > ]

List of system user UUIDs.

externalSystemUserIds
Array of strings
offset
integer <int32>
limit
integer <int32>
orderBy
string

Responses

Response samples

Content type
application/json
{
  • "maxCount": 0,
  • "limit": 0,
  • "offset": 0,
  • "listData": [
    ]
}

Create a new system user

Create a new system user with base data and company assignments. At least one assignment must be provided. receiveNotifications can only be set for roles Administrator and Standard.

Authorizations:
bearerToken
Request Body schema: application/json
externalId
string

External system user identifier. Does not need to be unique

salutation
string
Enum: "mr" "ms"
title
string
firstName
required
string
name
required
string
emailAddress
required
string
language
string
Enum: "de" "en" "fr"

Default language of the system user

required
Array of objects (SystemUserAssignment) non-empty

Company assignments of the system user to create.

Responses

Request samples

Content type
application/json
{
  • "externalId": "string",
  • "salutation": "ms",
  • "title": "Dr.",
  • "firstName": "Erika",
  • "name": "Mustermann",
  • "emailAddress": "erika@firma.de",
  • "language": "de",
  • "active": true,
  • "assignments": [
    ]
}

Response samples

Content type
application/json
{
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f"
}

Get a system user

Get base data of a specific system user.

Authorizations:
bearerToken
path Parameters
systemUserUuid
required
string <uuid>

UUID of the system user.

Responses

Response samples

Content type
application/json
{
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "externalId": "string",
  • "salutation": "ms",
  • "title": "Dr.",
  • "firstName": "Erika",
  • "name": "Mustermann",
  • "emailAddress": "erika@firma.de",
  • "language": "de",
  • "active": true,
  • "lastModified": "2019-08-24T14:15:22Z"
}

Update a system user

Update the base data of a specific system user.

Authorizations:
bearerToken
path Parameters
systemUserUuid
required
string <uuid>

UUID of the system user.

Request Body schema: application/json
externalId
string

External system user identifier. Does not need to be unique

salutation
string
Enum: "mr" "ms"
title
string
firstName
required
string
name
required
string
emailAddress
required
string
language
string
Enum: "de" "en" "fr"

Default language of the system user

Responses

Request samples

Content type
application/json
{
  • "externalId": "string",
  • "salutation": "ms",
  • "title": "Dr.",
  • "firstName": "Erika",
  • "name": "Mustermann",
  • "emailAddress": "erika@firma.de",
  • "language": "de"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Delete a system user

Delete a specific system user.

Authorizations:
bearerToken
path Parameters
systemUserUuid
required
string <uuid>

UUID of the system user.

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Get extended system user information

Get base data and company assignments of a specific system user.

Authorizations:
bearerToken
path Parameters
systemUserUuid
required
string <uuid>

UUID of the system user.

Responses

Response samples

Content type
application/json
{
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "externalId": "string",
  • "salutation": "ms",
  • "title": "Dr.",
  • "firstName": "Erika",
  • "name": "Mustermann",
  • "emailAddress": "erika@firma.de",
  • "language": "de",
  • "active": true,
  • "lastModified": "2019-08-24T14:15:22Z",
  • "assignments": [
    ]
}

Activate / deactivate a system user

Activate or deactivate a specific system user.

Authorizations:
bearerToken
path Parameters
systemUserUuid
required
string <uuid>

UUID of the system user.

Request Body schema: application/json
active
boolean

Activate/deactivate system user

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Get company assignments of an existing system user

Get all company assignments of a specific system user.

Authorizations:
bearerToken
path Parameters
systemUserUuid
required
string <uuid>

UUID of the system user.

Responses

Response samples

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

Update company assignments of an existing system user

Replaces all company assignments of a specific system user with the provided list. Validation is performed for the complete list and assignments are either fully updated or the request fails. receiveNotifications can only be set for roles Administrator and Standard.

Authorizations:
bearerToken
path Parameters
systemUserUuid
required
string <uuid>

UUID of the system user.

Request Body schema: application/json
required
Array of objects non-empty

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}

Async Tasks

Retrieve async task processing states and details.

Get an async task

Get status information of a specific async task.

Authorizations:
bearerToken
path Parameters
asyncTaskUuid
required
string <uuid>

UUID of the async task.

Responses

Response samples

Content type
application/json
{
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "status": "Queued",
  • "message": "string",
  • "errorCode": 0
}

Coming soon

Endpoints that are planned and documented but not yet available in production.

Update a person's driver's license categories

Replaces the complete list of driver's license categories for the person's driver's license.

To clear all categories, send an empty array: licenseCategories: [].

Authorizations:
bearerToken
path Parameters
required
string or integer

UUID or numeric ID (deprecated).

Request Body schema: application/json
required
required
Array of objects (LicenseCategory)

Complete replacement list of driver's license categories. Each category value must be unique within the array. Send an empty array to remove all categories.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": -30100100,
  • "data": { }
}