EmployeesCreateEmployeeRequest1
{
"type": "object",
"required": [
"employee[email]",
"employee[first_name]",
"employee[last_name]"
],
"properties": {
"employee[email]": {
"type": "string",
"description": "Employee email"
},
"employee[gender]": {
"enum": [
"male",
"female",
"diverse"
],
"type": "string",
"description": "Employee gender"
},
"employee[status]": {
"enum": [
"onboarding",
"active",
"leave",
"inactive"
],
"type": "string",
"description": "Employee status"
},
"employee[position]": {
"type": "string",
"description": "Employee position"
},
"employee[hire_date]": {
"type": "string",
"format": "date",
"example": "2020-01-31",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Employee hire date. Format: yyyy-mm-dd"
},
"employee[last_name]": {
"type": "string",
"description": "Employee last name"
},
"employee[department]": {
"type": "string",
"description": "Employee department"
},
"employee[first_name]": {
"type": "string",
"description": "Employee first name"
},
"employee[supervisor_id]": {
"type": "number",
"description": "Employee ID of the Supervisor to be assigned. It needs to belong to a current existing employee, otherwise an error will be returned. If not present, no supervisor will be assigned."
},
"employee[preferred_name]": {
"type": "string",
"description": "Employee preferred name"
},
"employee[weekly_working_hours]": {
"type": "number",
"description": "Employee weekly working hours"
}
}
}
EmployeesListAttributesResponse
{
"type": "object",
"example": {
"data": [
{
"key": "first_name",
"type": "standard",
"label": "First Name",
"universal_id": "first_name"
},
{
"key": "last_name",
"type": "standard",
"label": "Last Name",
"universal_id": "last_name"
},
{
"key": "dynamic_1",
"type": "standard",
"label": "IBAN",
"universal_id": "iban"
}
],
"success": true
},
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string",
"example": "first_name"
},
"type": {
"type": "string",
"example": "standard"
},
"label": {
"type": "string",
"example": "First Name"
},
"universal_id": {
"type": "string",
"example": "first_name"
}
}
}
},
"success": {
"type": "boolean",
"example": true
}
}
}
EmployeesResponse
{
"allOf": [
{
"$ref": "#/components/schemas/Response"
},
{
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"example": "Employee"
},
"attributes": {
"$ref": "#/components/schemas/Employee"
}
}
}
},
"limit": {
"type": "integer"
},
"offset": {
"type": "integer"
},
"metadata": {
"type": "object",
"required": [
"total_elements",
"current_page",
"total_pages"
],
"properties": {
"total_pages": {
"type": "integer",
"description": "The total number of pages distributing sets of items matching the query filters."
},
"current_page": {
"type": "integer",
"description": "Current page number containing the returned set of items matching with the query filters. The page number range is from 0 to total_pages - 1"
},
"total_elements": {
"type": "integer",
"description": "The total number of items matching the query filters."
}
}
}
}
}
],
"title": "List of Employees"
}
EmployeesShowProfilePictureResponse
{
"type": "string",
"format": "binary"
}
EmployeesUpdateEmployeeFieldsRequest
{
"type": "object",
"properties": {
"employee": {
"type": "object",
"properties": {
"gender": {
"type": "string",
"example": "male"
},
"office": {
"type": "string",
"example": "Madrid",
"description": "The office employee belongs to. Should be predefined in Personio. Otherwise will be ignored with showing meta error in the response."
},
"status": {
"type": "string",
"example": "active",
"description": "Status of the employee."
},
"position": {
"type": "string",
"example": "developer"
},
"hire_date": {
"type": "string",
"format": "date",
"example": "2020-01-31",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Employee hire date. Format: \"yyyy-mm-dd\". Update of the `hire_date` will not update employee status on its own (for that you'll need to update the `status` field)"
},
"last_name": {
"type": "string",
"example": "Dou"
},
"department": {
"type": "string",
"example": "IT",
"description": "The department employee belongs to. Should be predefined in Personio. Otherwise will be ignored with showing meta error in the response."
},
"first_name": {
"type": "string",
"example": "John"
},
"subcompany": {
"type": "string",
"example": "ACME",
"description": "The subcompany employee belongs to. Should be predefined in Personio. Otherwise will be ignored with showing meta error in the response."
},
"supervisor_id": {
"type": "number",
"example": 5,
"description": "Employee ID of the Supervisor to be assigned. It needs to belong to a current existing employee and not the same as the one of the employee being updated, otherwise an error will be returned. If sent as null, will unset the employee's supervisor."
},
"preferred_name": {
"type": "string",
"example": "John Dou"
},
"custom_attributes": {
"type": "object",
"properties": {
"dynamic_{{ field uid }}": {
"type": "string",
"example": "German",
"description": "Dynamic field, represented by unique id."
}
}
},
"weekly_working_hours": {
"type": "number",
"example": 40
}
}
}
}
}
EmployeesUpdateEmployeeFieldsRequest1
{
"type": "object",
"properties": {
"employee[gender]": {
"enum": [
"male",
"female",
"diverse"
],
"type": "string",
"description": "Employee gender"
},
"employee[status]": {
"enum": [
"onboarding",
"active",
"leave",
"inactive"
],
"type": "string",
"description": "Employee status"
},
"employee[position]": {
"type": "string",
"description": "Employee position"
},
"employee[hire_date]": {
"type": "string",
"format": "date",
"example": "2020-01-31",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Employee hire date. Format: yyyy-mm-dd"
},
"employee[last_name]": {
"type": "string",
"description": "Employee last name"
},
"employee[department]": {
"type": "string",
"description": "Employee department"
},
"employee[first_name]": {
"type": "string",
"description": "Employee first name"
},
"employee[supervisor_id]": {
"type": "number",
"description": "Employee ID of the Supervisor to be assigned. It needs to belong to a current existing employee and not the same as the one of the employee being updated, otherwise an error will be returned. If sent as null, will unset the employee's supervisor."
},
"employee[preferred_name]": {
"type": "string",
"description": "Employee preferred name"
},
"employee[weekly_working_hours]": {
"type": "number",
"description": "Employee weekly working hours"
}
}
}
EntityAttribute
{
"type": "object",
"properties": {
"value": {
"type": "string",
"example": "IT"
},
"data_type": {
"enum": [
"ENTITY"
],
"type": "string"
},
"entity_id": {
"type": "string",
"example": 1
},
"employee_id": {
"type": "integer",
"example": 17
},
"attribute_id": {
"type": "string",
"example": "department"
}
}
}
EntityHistoricalAttribute
{
"type": "object",
"properties": {
"value": {
"type": "string",
"example": "IT"
},
"data_type": {
"enum": [
"ENTITY"
],
"type": "string"
},
"entity_id": {
"type": "string",
"example": 1
},
"employee_id": {
"type": "integer",
"example": 17
},
"attribute_id": {
"type": "string",
"example": "department"
},
"effective_date": {
"type": "string",
"example": "2021-01-01T00:00:00.000Z"
}
}
}
ErrorAbsenceResponse
{
"type": "object",
"title": "404 absence error",
"properties": {
"error": {
"type": "object",
"properties": {
"code": {
"type": "integer",
"example": 404
},
"message": {
"example": "The absence period was not found."
}
}
},
"success": {
"type": "boolean",
"example": false
}
}
}
ErrorCreateAbsenceResponse
{
"type": "object",
"title": "Default error response",
"properties": {
"error": {
"type": "object",
"properties": {
"code": {
"type": "integer",
"example": 0
},
"message": {
"example": "The given data failed to pass validation."
}
}
},
"success": {
"type": "boolean",
"example": false
}
}
}
ErrorDetails
{
"type": "object",
"properties": {
"type": {
"type": "string",
"example": "search"
},
"_meta": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ErrorMeta"
}
},
"title": {
"type": "string",
"example": "Not Found"
},
"details": {
"type": "string",
"example": "Report not found"
}
}
}
ErrorInsertingAbsenceResponse
{
"type": "object",
"title": "400 absence error",
"properties": {
"error": {
"type": "object",
"properties": {
"code": {
"type": "integer",
"example": 400
},
"message": {
"example": "Error when trying to insert absence period"
}
}
},
"success": {
"type": "boolean",
"example": false
}
}
}
ErrorMeta
{
"type": "object",
"properties": {
"field": {
"type": "string",
"example": "ID"
},
"description": {
"type": "string",
"example": "Report ID not found"
}
}
}
ErrorResponse
{
"type": "object",
"title": "Default error response",
"properties": {
"error": {
"type": "object",
"properties": {
"code": {
"type": "integer",
"example": 0
},
"message": {
"example": "Something went wrong"
}
}
},
"success": {
"type": "boolean",
"example": false
}
}
}
HolidayCalendar
{
"type": "object",
"properties": {
"type": {
"$ref": "#/components/schemas/TypeEnum"
},
"label": {
"example": "Holiday Calendar"
},
"value": {
"type": "object",
"properties": {
"type": {
"example": "HolidayCalendar"
},
"attributes": {
"type": "object",
"properties": {
"id": {
"type": "number",
"example": 1
},
"name": {
"example": "DE (Hamburg) Feiertage"
},
"state": {
"example": "Hamburg"
},
"country": {
"example": "DE"
}
}
}
}
},
"universal_id": {
"example": "holiday_calendar"
}
}
}
HourlyAbsence
{
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"example": "61fe126b-a7b3-449a-b5ee-3865a6fcc546"
},
"end": {
"type": "string",
"format": "date-time",
"nullable": true
},
"start": {
"type": "string",
"format": "date-time"
},
"origin": {
"type": "string",
"example": "web"
},
"status": {
"type": "string",
"example": "approved"
},
"comment": {
"type": "string"
},
"employee": {
"$ref": "#/components/schemas/ShortEmployee"
},
"timezone": {
"type": "string",
"example": "Europe/Berlin"
},
"breakdowns": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AbsencePeriodBreakdown"
},
"description": "Breakdowns of effective duration by day of absence."
},
"created_at": {
"type": "string",
"example": "2017-01-17T10:32:18.000+01:00"
},
"created_by": {
"type": "integer",
"example": 1,
"description": "ID of the employee who created the absence period."
},
"updated_at": {
"type": "string",
"example": "2017-01-17T10:32:18.000+01:00"
},
"approved_at": {
"type": "string",
"format": "date-time",
"nullable": true
},
"certificate": {
"type": "object",
"properties": {
"status": {
"type": "string",
"example": "not-required"
}
}
},
"absence_type": {
"$ref": "#/components/schemas/AbsenceType"
},
"half_day_end": {
"type": "boolean"
},
"half_day_start": {
"type": "boolean"
},
"measurement_unit": {
"type": "string",
"example": "hours"
},
"effective_duration": {
"type": "integer",
"example": 16,
"description": "Period effective duration in minutes"
}
}
}
HourlyAbsencePeriodResponse
{
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/Response"
},
{
"type": "object",
"properties": {
"data": {
"type": "object",
"required": [
"type",
"attributes"
],
"properties": {
"type": {
"example": "AbsencePeriod"
},
"attributes": {
"$ref": "#/components/schemas/HourlyAbsence"
}
}
}
}
}
],
"title": "Absence Periods response"
}
HourlyAbsencePeriodResponseAttributes
{
"type": "object",
"required": [
"id",
"employee",
"absence_type_id",
"start",
"half_day_start",
"half_day_end",
"origin",
"status",
"certificate",
"created_by",
"effective_duration",
"created_at",
"updated_at",
"breakdowns"
],
"properties": {
"id": {
"type": "string",
"example": "9bba303f-0fbc-4514-9958-0befa21923fb"
},
"end": {
"type": "string",
"format": "date-time",
"nullable": true
},
"start": {
"type": "string",
"format": "date-time"
},
"origin": {
"enum": [
"web",
"api",
"mobile",
"slack",
"msteams"
],
"type": "string",
"example": "web",
"nullable": true
},
"status": {
"type": "string",
"example": "approved"
},
"comment": {
"type": "string"
},
"employee": {
"$ref": "#/components/schemas/ShortEmployee"
},
"breakdowns": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AbsencePeriodBreakdown"
},
"description": "Breakdowns of effective duration by day of absence."
},
"created_at": {
"type": "string",
"format": "date-time"
},
"created_by": {
"type": "integer",
"example": 1,
"description": "ID of the employee who created the absence period."
},
"updated_at": {
"type": "string",
"format": "date-time"
},
"approved_at": {
"type": "string",
"format": "date-time",
"nullable": true
},
"certificate": {
"type": "object",
"properties": {
"status": {
"type": "string",
"example": "not-required"
}
}
},
"half_day_end": {
"type": "boolean"
},
"half_day_start": {
"type": "boolean"
},
"absence_type_id": {
"$ref": "#/components/schemas/AbsenceType"
},
"measurement_unit": {
"enum": [
"minutes"
],
"type": "string",
"example": "minutes"
},
"effective_duration": {
"type": "integer",
"example": 60,
"description": "Period effective duration in minutes"
}
}
}
HourlyAbsencePeriodsResponse
{
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/Response"
},
{
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"type",
"attributes"
],
"properties": {
"type": {
"example": "AbsencePeriod"
},
"attributes": {
"$ref": "#/components/schemas/HourlyAbsence"
}
}
}
},
"limit": {
"type": "integer"
},
"offset": {
"type": "integer"
},
"metadata": {
"type": "object",
"required": [
"total_elements",
"current_page",
"total_pages"
],
"properties": {
"total_pages": {
"type": "integer",
"description": "The total number of pages distributing sets of items matching the query filters."
},
"current_page": {
"type": "integer",
"description": "Current page number containing the returned set of items matching with the query filters. The page number range is from 0 to total_pages - 1"
},
"total_elements": {
"type": "integer",
"description": "The total number of items matching the query filters."
}
}
}
}
}
],
"title": "List All Hourly Absence Periods response"
}
NewAttendancePeriodParametersRequest
{
"type": "object",
"title": "Create a New Attendance Period request",
"required": [
"attendances[][employee]",
"attendances[][date]",
"attendances[][start_time]",
"attendances[]break"
],
"properties": {
"project_id": {
"type": "integer",
"format": "int32",
"example": 5,
"nullable": true,
"description": "The ID of the project"
},
"skip_approval": {
"type": "boolean",
"description": "Optional, default value is true. If set to false, the approval status of the attendance period will be \"pending\" if an approval rule is set for the attendances type. The respective approval flow will be triggered."
},
"attendances[]break": {
"type": "integer",
"format": "int32",
"minimum": 0,
"description": "Break in minutes"
},
"attendances[][date]": {
"type": "string",
"format": "date",
"example": "2020-01-31",
"description": "Attendance date. Format: yyyy-mm-dd"
},
"attendances[][comment]": {
"type": "string",
"nullable": true,
"description": "Optional comment"
},
"attendances[][employee]": {
"type": "integer",
"description": "Employee identifier"
},
"attendances[][end_time]": {
"type": "string",
"example": "12:00",
"pattern": "^\\d\\d:\\d\\d$",
"nullable": true,
"description": "End time. Format: hh:mm"
},
"attendances[][start_time]": {
"type": "string",
"example": "08:00",
"pattern": "^\\d\\d:\\d\\d$",
"description": "Start time. Format: hh:mm"
}
}
}
NewAttendancePeriodResponse
{
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/Response"
},
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "array",
"items": {
"type": "integer",
"example": 1
}
},
"message": {
"example": "Success"
}
}
}
}
}
]
}
Office
{
"type": "object",
"properties": {
"type": {
"$ref": "#/components/schemas/TypeEnum"
},
"label": {
"example": "Office"
},
"value": {
"type": "object",
"properties": {
"type": {
"type": "string",
"example": "Office"
},
"attributes": {
"type": "object",
"properties": {
"name": {
"example": "Munich"
}
}
}
}
},
"universal_id": {
"example": "office"
}
}
}
PerformanceKpi
{
"type": "object",
"properties": {
"performance_kpi_id": {
"type": "string",
"example": "kpi_123"
},
"performance_kpi_value": {
"type": "string",
"example": 14
}
}
}
PerformanceKpiAttribute
{
"type": "object",
"properties": {
"data_type": {
"enum": [
"PERFORMANCE_KPI"
],
"type": "string"
},
"employee_id": {
"type": "integer",
"example": 17
},
"attribute_id": {
"type": "string"
},
"performance_target_kpis": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PerformanceTarget"
}
}
}
}
PerformanceTarget
{
"type": "object",
"properties": {
"performance_target_id": {
"type": "string",
"example": 1
},
"performance_target_value": {
"type": "string",
"example": 20
}
}
}
PerformanceTargetAttribute
{
"type": "object",
"properties": {
"data_type": {
"enum": [
"PERFORMANCE_TARGET"
],
"type": "string"
},
"employee_id": {
"type": "integer",
"example": 17
},
"attribute_id": {
"type": "string",
"example": "performance_target_name"
},
"performance_targets": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PerformanceTarget"
}
}
}
}
PerformanceTargetKpi
{
"type": "object",
"properties": {
"performance_kpis": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PerformanceKpi"
}
},
"performance_target_id": {
"type": "string",
"example": "id_123"
}
}
}
Project
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"example": 1
},
"type": {
"type": "string",
"example": "Project"
},
"attributes": {
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "Project name"
},
"active": {
"type": "boolean",
"example": true,
"description": "Marks the availability of the project. The default value is false."
},
"created_at": {
"type": "string",
"format": "datetime",
"example": "2022-02-01T12:00:00.000+01:00"
},
"updated_at": {
"type": "string",
"format": "datetime",
"example": "2022-02-01T12:00:00.000+01:00"
}
}
}
}
}
ProjectsCreateProject400Response
{
"type": "object",
"properties": {
"error": {
"type": "object",
"properties": {
"name": {
"type": "array",
"items": {
"type": "string",
"example": "Project name cannot be empty"
}
}
}
},
"success": {
"type": "boolean",
"example": false
}
}
}
ProjectsCreateProjectRequest
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "A project name"
},
"active": {
"type": "boolean",
"default": false,
"example": true
}
}
}
ProjectsCreateProjectResponse
{
"type": "object",
"properties": {
"data": {
"$ref": "#/components/schemas/Project"
},
"success": {
"type": "boolean"
}
}
}
ProjectsDeleteProjectResponse
{
"type": "object",
"properties": {
"message": {
"type": "string",
"example": "Project 5 not found"
},
"success": {
"type": "boolean",
"example": false
}
}
}
ProjectsGetAllResponse
{
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Project"
}
},
"success": {
"type": "boolean"
}
}
}
ProjectsUpdateData400Response
{
"type": "object",
"properties": {
"error": {
"type": "object",
"properties": {
"active": {
"type": "array",
"items": {
"type": "string",
"example": "Active field needs to be of type boolean"
}
}
}
},
"success": {
"type": "boolean",
"example": false
}
}
}
ProjectsUpdateData404Response
{
"type": "object",
"properties": {
"message": {
"type": "string",
"example": "Project 5 not found"
},
"success": {
"type": "boolean",
"example": false
}
}
}
ProjectsUpdateDataRequest
{
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "A project name"
},
"active": {
"type": "boolean",
"example": true,
"description": "Marks the availability of the project"
}
}
}
ProjectsUpdateDataResponse
{
"type": "object",
"properties": {
"data": {
"$ref": "#/components/schemas/Project"
},
"success": {
"type": "boolean"
}
}
}
PublicAPIException
{
"type": "array",
"items": {
"$ref": "#/components/schemas/CustomReportsErrorResponse"
}
}
PublicColumnAttributes
{
"type": "object",
"properties": {
"data_type": {
"type": "string",
"example": "TEXT"
},
"attribute_id": {
"type": "string",
"example": "first_name"
},
"human_readable": {
"type": "string",
"example": "First Name"
}
}
}
PublicColumnData
{
"type": "object",
"properties": {
"type": {
"type": "string",
"example": "Column"
},
"attributes": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PublicColumnAttributes"
}
}
}
}
PublicHistoricalReportItemsAttributes
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "eb7482f3-2323-43e2-87ed-99d2399e8e22"
},
"name": {
"type": "string",
"example": "Department changes in the past year"
},
"type": {
"enum": [
"historical_data"
],
"type": "string",
"example": "historical_data"
},
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"employee_id": {
"type": "integer",
"example": 17
},
"historical_attributes": {
"type": "array",
"items": {
"anyOf": [
{
"$ref": "#/components/schemas/DefaultHistoricalAttribute"
},
{
"$ref": "#/components/schemas/EntityHistoricalAttribute"
},
{
"$ref": "#/components/schemas/DurationHistoricalAttribute"
},
{
"$ref": "#/components/schemas/CostCenterHistoricalAttribute"
},
{
"$ref": "#/components/schemas/SalaryHistoricalAttribute"
}
]
}
}
}
}
},
"status": {
"enum": [
"up_to_date",
"updating",
"update_failed"
],
"type": "string",
"example": "created"
},
"columns": {
"type": "array",
"items": {
"type": "string"
}
},
"filters": {
"type": "array",
"items": {
"type": "object",
"properties": {
"value": {
"type": "string",
"example": 1
},
"column": {
"type": "string",
"example": "office_id"
},
"comparison": {
"type": "string",
"example": "eq"
}
}
}
},
"end_date": {
"type": "string",
"format": "date-time",
"example": "2022-09-30"
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2022-04-10T17:32:28Z"
},
"start_date": {
"type": "string",
"format": "date-time",
"example": "2022-01-01"
},
"updated_at": {
"type": "string",
"format": "date-time",
"example": "2022-04-10T17:32:28Z"
},
"description": {
"type": "string",
"example": "Shows department changes of all employees over the past year"
},
"period_type": {
"enum": [
"fixed",
"today",
"yesterday",
"this_week",
"last_week",
"this_month",
"last_month",
"last_thirty_days",
"next_month",
"this_quarter",
"last_quarter",
"this_year",
"year_to_date",
"last_year",
"next_year"
],
"type": "string",
"example": "fixed"
},
"author_last_name": {
"type": "string",
"example": "Sirano",
"description": "Report author"
},
"author_first_name": {
"type": "string",
"example": "Robert",
"description": "Report author"
},
"data_refreshed_at": {
"type": "string",
"format": "date-time",
"example": "2022-04-10T17:32:28Z"
}
}
}
PublicListColumnsResponse
{
"type": "object",
"properties": {
"data": {
"$ref": "#/components/schemas/PublicColumnData"
},
"limit": {
"type": "integer"
},
"offset": {
"type": "integer"
},
"success": {
"type": "boolean"
},
"metadata": {
"$ref": "#/components/schemas/PublicReportMetaData"
}
}
}
PublicListReportsResponse
{
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PublicReportData"
}
},
"limit": {
"type": "integer"
},
"offset": {
"type": "integer"
},
"success": {
"type": "boolean"
},
"metadata": {
"$ref": "#/components/schemas/PublicReportMetaData"
}
}
}
PublicReportAttributes
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "eb7482f3-2323-43e2-87ed-99d2399e8e22"
},
"name": {
"type": "string",
"example": "Employee vacations past month"
},
"type": {
"enum": [
"point_in_time",
"historical_data",
"timeframe"
],
"type": "string",
"example": "point_in_time"
},
"status": {
"enum": [
"up_to_date",
"updating",
"update_failed"
],
"type": "string",
"example": "up_to_date"
},
"columns": {
"type": "array",
"items": {
"type": "string"
}
},
"filters": {
"type": "array",
"items": {
"type": "object",
"properties": {
"value": {
"type": "string",
"example": 1
},
"column": {
"type": "string",
"example": "office_id"
},
"comparison": {
"type": "string",
"example": "eq"
}
}
}
},
"end_date": {
"type": "string",
"format": "date",
"example": "2022-09-30"
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2022-04-10T17:32:28Z"
},
"start_date": {
"type": "string",
"format": "date",
"example": "2022-09-01"
},
"updated_at": {
"type": "string",
"format": "date-time",
"example": "2022-04-10T17:32:28Z"
},
"description": {
"type": "string",
"example": "Shows vacations of all employees that were taken past month"
},
"period_type": {
"enum": [
"fixed",
"today",
"last_day_of_this_month",
"this_year",
"last_month",
"last_thirty_days",
"this_month",
"year_to_date"
],
"type": "string",
"example": "fixed"
},
"author_last_name": {
"type": "string",
"example": "Sirano",
"description": "Report author"
},
"author_first_name": {
"type": "string",
"example": "Robert",
"description": "Report author"
},
"data_refreshed_at": {
"type": "string",
"format": "date-time",
"example": "2022-04-10T17:32:28Z"
}
}
}
PublicReportData
{
"type": "object",
"properties": {
"type": {
"type": "string",
"example": "Report"
},
"attributes": {
"$ref": "#/components/schemas/PublicReportAttributes"
}
}
}
PublicReportItemsAttributes
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "eb7482f3-2323-43e2-87ed-99d2399e8e22"
},
"name": {
"type": "string",
"example": "Employee vacations at a specific point in time"
},
"type": {
"enum": [
"point_in_time"
],
"type": "string",
"example": "point_in_time"
},
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"attributes": {
"type": "array",
"items": {
"anyOf": [
{
"$ref": "#/components/schemas/DefaultAttribute"
},
{
"$ref": "#/components/schemas/EntityAttribute"
},
{
"$ref": "#/components/schemas/DurationAttribute"
},
{
"$ref": "#/components/schemas/CostCenterAttribute"
},
{
"$ref": "#/components/schemas/AbsenceOverviewAttribute"
},
{
"$ref": "#/components/schemas/AbsencePeriodAttribute"
},
{
"$ref": "#/components/schemas/PerformanceTargetAttribute"
},
{
"$ref": "#/components/schemas/PerformanceKpiAttribute"
},
{
"$ref": "#/components/schemas/SalaryAttribute"
},
{
"$ref": "#/components/schemas/CompensationAttribute"
}
]
}
},
"employee_id": {
"type": "integer",
"example": 17
}
}
}
},
"status": {
"enum": [
"up_to_date",
"updating",
"update_failed"
],
"type": "string",
"example": "created"
},
"columns": {
"type": "array",
"items": {
"type": "string"
}
},
"filters": {
"type": "array",
"items": {
"type": "object",
"properties": {
"value": {
"type": "string",
"example": 1
},
"column": {
"type": "string",
"example": "office_id"
},
"comparison": {
"type": "string",
"example": "eq"
}
}
}
},
"end_date": {
"type": "string",
"format": "date-time",
"example": "2022-04-10"
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2022-04-10T17:32:28Z"
},
"start_date": {
"type": "string",
"format": "date-time",
"example": "2022-04-10"
},
"updated_at": {
"type": "string",
"format": "date-time",
"example": "2022-04-10T17:32:28Z"
},
"description": {
"type": "string",
"example": "Shows vacations of all employees on a specific date"
},
"period_type": {
"enum": [
"fixed",
"today",
"yesterday",
"last_day_of_this_week",
"last_day_of_last_week",
"last_day_of_this_month",
"last_day_of_last_month",
"last_day_of_this_quarter",
"last_day_of_last_quarter",
"last_day_of_this_year",
"last_day_of_last_year"
],
"type": "string",
"example": "fixed"
},
"author_last_name": {
"type": "string",
"example": "Sirano",
"description": "Report author"
},
"author_first_name": {
"type": "string",
"example": "Robert",
"description": "Report author"
},
"data_refreshed_at": {
"type": "string",
"format": "date-time",
"example": "2022-04-10T17:32:28Z"
}
}
}
PublicReportItemsData
{
"type": "object",
"properties": {
"type": {
"type": "string",
"example": "Report"
},
"attributes": {
"oneOf": [
{
"$ref": "#/components/schemas/PublicReportItemsAttributes"
},
{
"$ref": "#/components/schemas/PublicTimeframeReportItemsAttributes"
},
{
"$ref": "#/components/schemas/PublicHistoricalReportItemsAttributes"
}
]
}
}
}
PublicReportMetaData
{
"type": "object",
"properties": {
"total_pages": {
"type": "integer"
},
"current_page": {
"type": "integer"
},
"total_elements": {
"type": "integer"
}
}
}
PublicReportResponse
{
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PublicReportItemsData"
}
},
"limit": {
"type": "integer"
},
"offset": {
"type": "integer",
"deprecated": true
},
"success": {
"type": "boolean"
},
"metadata": {
"$ref": "#/components/schemas/PublicReportMetaData"
}
}
}
PublicTimeframeReportItemsAttributes
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "eb7482f3-2323-43e2-87ed-99d2399e8e22"
},
"name": {
"type": "string",
"example": "Employee vacations past month"
},
"type": {
"enum": [
"timeframe"
],
"type": "string",
"example": "timeframe"
},
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"attributes": {
"type": "array",
"items": {
"anyOf": [
{
"$ref": "#/components/schemas/DefaultAttribute"
},
{
"$ref": "#/components/schemas/EntityAttribute"
},
{
"$ref": "#/components/schemas/DurationAttribute"
},
{
"$ref": "#/components/schemas/CostCenterAttribute"
},
{
"$ref": "#/components/schemas/AbsenceOverviewAttribute"
},
{
"$ref": "#/components/schemas/AbsencePeriodAttribute"
},
{
"$ref": "#/components/schemas/PerformanceTargetAttribute"
},
{
"$ref": "#/components/schemas/PerformanceKpiAttribute"
},
{
"$ref": "#/components/schemas/SalaryAttribute"
},
{
"$ref": "#/components/schemas/CompensationAttribute"
}
]
}
},
"employee_id": {
"type": "integer",
"example": 17
}
}
}
},
"status": {
"enum": [
"up_to_date",
"updating",
"update_failed"
],
"type": "string",
"example": "created"
},
"columns": {
"type": "array",
"items": {
"type": "string"
}
},
"filters": {
"type": "array",
"items": {
"type": "object",
"properties": {
"value": {
"type": "string",
"example": 1
},
"column": {
"type": "string",
"example": "office_id"
},
"comparison": {
"type": "string",
"example": "eq"
}
}
}
},
"end_date": {
"type": "string",
"format": "date-time",
"example": "2022-04-10"
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2022-04-10T17:32:28Z"
},
"start_date": {
"type": "string",
"format": "date-time",
"example": "2022-04-01"
},
"updated_at": {
"type": "string",
"format": "date-time",
"example": "2022-04-10T17:32:28Z"
},
"description": {
"type": "string",
"example": "Shows vacations of all employees that were taken past month"
},
"period_type": {
"enum": [
"fixed",
"today",
"yesterday",
"this_week",
"last_week",
"this_month",
"last_month",
"last_thirty_days",
"next_month",
"this_quarter",
"last_quarter",
"this_year",
"year_to_date",
"last_year",
"next_year"
],
"type": "string",
"example": "fixed"
},
"author_last_name": {
"type": "string",
"example": "Sirano",
"description": "Report author"
},
"author_first_name": {
"type": "string",
"example": "Robert",
"description": "Report author"
},
"data_refreshed_at": {
"type": "string",
"format": "date-time",
"example": "2022-04-10T17:32:28Z"
}
}
}