Dochadzka.app - WAS API (1.2.3)

Download OpenAPI specification:Download

OpenApi doc for Dochadzka.app WAS API

Changelog

version date change
v1.2.3 2025-09-29 - add new attribute birthCertificateNumber in Employee model.
v1.2.2 2025-07-31 - add new attribute underage in Employee model.
v1.2.1 2025-01-15 - contracts array in response of List Employees endpoint now contains also all future employee's contract intervals (modified interval to: <-62d, ...) )
v1.2.0 2024-04-04 - add monthlyWorkFund in response of Summary attendance endpoint
- add startDate in response of List Employees endpoint.

Endpoints

List Tenants

List of all available tenants depending on sent auth token.

Authorizations:
AuthToken

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List Employees

List of all employees with active contract interval within specified tenant ID. This endpoint returns all employees with at least 1 active contract interval or contract interval ended in last 62 days.

Authorizations:
AuthToken
path Parameters
tenant
required
integer
Example: 12

ID of tenant (restaurant) for which will be returned employees

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List Attendance

List of all attendance records - work/absence for every combination of employee+date within specified interval. Data are filtered by employees postdata parameter (array of IDs). If interval not specified, endpoint will return data for interval:

< NOW - 35days, NOW >


Validations/specifications:

  • startDate can't be older than NOW() - 62days
  • endDate can't be in future (> NOW())
  • ID of non-existing/deleted employee (in employees postdata param) is silently ignored during request validation (will not throw any exception).
Authorizations:
AuthToken
Request Body schema: application/json
employees
required
Array of integers

Array of employee IDs for which will be returned attendance data.

startDate
string <date>

Optional parameter of starting date.

endDate
string <date>

Optional parameter of ending date.

Responses

Request samples

Content type
application/json
{
  • "employees": [
    ],
  • "startDate": "2024-01-15",
  • "endDate": "2024-01-31"
}

Response samples

Content type
application/json
[
  • {
    }
]

Summary attendance

Returns summary data of employees filtered by employees postdata parameter (array of IDs) for currently active cal. month. Method returns array of contract intervals for each employee, which are active in current month. It can be 1 or more intervals. Every interval has calculated data separately.


Validations/specifications:

  • ID of non-existing/deleted employee (in employees postdata param) is silently ignored during request validation (will not throw any exception).
Authorizations:
AuthToken
Request Body schema: application/json
employees
required
Array of integers

Array of employee IDs for which will be returned attendance data.

Responses

Request samples

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

Response samples

Content type
application/json
[
  • {
    }
]

Attendance

id
required
integer

Unique attendance record ID

employee
required
integer

ID of employee this record belongs to.

employeeContractInterval
required
integer

ID of employee's contract interval to which this attendance record belongs

date
required
string <date>

Bussiness day date.

from
required
string <date-time>

Real start of attendance interval.

to
required
string <date-time>

Real end of attendance interval.

type
required
string (WorkIntervalTypeEnum)
Enum: "work" "holiday" "pn" "paragraph" "paragraph-family" "nvp" "nvp-holiday" "nvn" "holiday-not-worked" "not-worked" "ocr" "ocr-op" "absence" "pvpz" "pvpz60" "pvpz80" "meeting" "funeral"

Attendance work interval type.

Enum options codelist:

Option Description (SK)
work Odpracovaný čas
holiday Dovolenka
pn PN
paragraph Paragraf - zamest.
paragraph-family Paragraf - člen.rod.
nvp Náhrad. voľno - platené
nvp-holiday Náhrad. voľno za sviatok
nvn Náhrad. voľno - neplatené
holiday-not-worked Neodpracovaný sviatok
not-worked Neodpracované hodiny
ocr Ošetrenie člena rodiny
ocr-op OČR na člena rod.
absence Absencia
pvpz Prekážka - zamestnávateľ
pvpz60 Prekážka - zamestnáv. - 60%
pvpz80 Prekážka - zamestnáv. - 80%
meeting Meeting
funeral Pohreb
{
  • "id": 987654,
  • "employee": 12345,
  • "employeeContractInterval": 65432,
  • "date": "2024-01-16",
  • "from": "2024-01-16 22:00:00",
  • "to": "2024-01-17 01:30:00",
  • "type": "work"
}

AttendanceSummary

employee
required
integer

Unique ID of employee.

required
Array of objects

Array of employee's contract intervals active in current month.

{
  • "employee": 1234,
  • "data": [
    ]
}

Employee

id
required
integer

Unique ID of employee.

firstName
required
string

first name (can contain also middle names)

lastName
required
string

last name (can contain also middle names)

email
required
string or null

E-mail address of employee (this is unique across whole system) or null (not specified).

phone
required
string or null

Phone number in unified format or null (not specified).

underage
required
boolean

Whether employee is not adult (true).

gender
required
string or null
Enum: "M" "F"

Gender of employee or null (not specified).

agency
required
boolean

Whether employee is internal (false) or external from work agency.

handicap
required
boolean

Whether employee has health handicap (true) or no (false).

birthNumber
required
string or null

Employee's birth number. Can be any string, but recommended format is: xxxxxx/yyyy or null (not specified for employee).

bankAccountNumber
required
string or null

Bank account number in xxxxxxxxxx/yyyy or IBAN format (without spaces) or null (not specified).

startDate
required
string <date>

The very first start date of employee's work in company.

required
Array of objects (EmployeeContractInterval)

Array of all employee's contract intervals in interval: <NOW-62d, ...> (It contains also all contract intervals starting in future)

required
Array of objects

Array of dynamic fields assigned to employee. ( 0-N items)

{
  • "id": 12345,
  • "firstName": "John",
  • "lastName": "Doe",
  • "email": "doe.john@mail.tld",
  • "phone": "+421900111222",
  • "underage": true,
  • "gender": "M",
  • "agency": true,
  • "handicap": true,
  • "birthNumber": "900101/0123",
  • "bankAccountNumber": "SK9912000000009876543210",
  • "startDate": "2020-01-01",
  • "contracts": [
    ],
  • "dynamicFields": [
    ]
}

EmployeeContractInterval

id
required
integer

Unique ID of contract interval in system.

contractStart
required
string <date>

Date of start of contract interval.

contractEnd
required
string or null <date>

Date of end of contract interval or null (opened interval)

tenant
required
integer

Id of tenant (restaurant) in which employee is primarily working in defined contract interval.

employeeSalaryIdentificator
required
string or null

Unique identificator of employee in company's payroll accounting. Each Company has it's own salary identification of employees with varying formatting.

contractTypeName
required
string

Localized and customized contract type unique for each tenant (restaurant).

contractTypeGroup
required
string
Enum: "full-time" "full-time-short" "part-time"

Group code of contract type

salary
required
number <double>

Decimal representation of employee's salary in defined contract interval.

salaryType
required
string
Enum: "monthly" "hourly"

Type of salary for specified employee's contract interval.

workFund
required
number or null <double>

Decimal representation of employee's working fund in defined contract interval. Can be null if contract type does not have workFund enabled.

workFundType
required
string or null
Enum: "daily" "weekly" "monthly"

Type of work fund for specified employee's contract interval.

required
Array of objects (SalaryAddition)

Array of custom salary additions of employee in defined contract interval. Hourly rates.

{
  • "id": 65432,
  • "contractStart": "2023-09-01",
  • "contractEnd": "2024-08-31",
  • "tenant": 12,
  • "employeeSalaryIdentificator": "U-1234",
  • "contractTypeName": "Trvalý pracovný",
  • "contractTypeGroup": "full-time",
  • "salary": 4.5,
  • "salaryType": "hourly",
  • "workFund": 37.5,
  • "workFundType": "weekly",
  • "salaryAdditions": [
    ]
}

SalaryAddition

name
required
string
Enum: "night" "uniform" "travel" "variableWage" "callSurchage" "personalAddition"

System codename of custom salary addition.

Enum options codelist:

Option Description (SK)
night nočný príplatok
uniform prípl. za uniformu/ošatné
travel cestovný príplatok
variableWage variabilná zložka
callSurchage prípl. za hovorné
personalAddition osobný príplatok
value
required
number <double>

Decimal value of custom salary addition.

{
  • "name": "night",
  • "value": 123.5
}

Tenant

id
required
integer

Unique ID of tenant (restaurant)

code
required
string^(SK|CZ)[0-9]{3}$

Internal code of tenant (McD code of restaurant)

name
required
string

Name of tenant (McD name of restaurant)

company
required
string

Legal name of tenant operator (franchise partner)

country
required
string
Enum: "sk" "cz"

ICO 639 Alpha-2 code of country to which tenant belongs.

{
  • "id": 12,
  • "code": "SK001",
  • "name": "Nitra I",
  • "company": "Webnotion s.r.o.",
  • "country": "sk"
}

WorkIntervalTypeEnum

string (WorkIntervalTypeEnum)
Enum: "work" "holiday" "pn" "paragraph" "paragraph-family" "nvp" "nvp-holiday" "nvn" "holiday-not-worked" "not-worked" "ocr" "ocr-op" "absence" "pvpz" "pvpz60" "pvpz80" "meeting" "funeral"

Attendance work interval type.

Enum options codelist:

Option Description (SK)
work Odpracovaný čas
holiday Dovolenka
pn PN
paragraph Paragraf - zamest.
paragraph-family Paragraf - člen.rod.
nvp Náhrad. voľno - platené
nvp-holiday Náhrad. voľno za sviatok
nvn Náhrad. voľno - neplatené
holiday-not-worked Neodpracovaný sviatok
not-worked Neodpracované hodiny
ocr Ošetrenie člena rodiny
ocr-op OČR na člena rod.
absence Absencia
pvpz Prekážka - zamestnávateľ
pvpz60 Prekážka - zamestnáv. - 60%
pvpz80 Prekážka - zamestnáv. - 80%
meeting Meeting
funeral Pohreb
"work"