object Response
{
  "type": "object",
  "title": "Default response object",
  "required": [
    "success",
    "data"
  ],
  "properties": {
    "data": {
      "type": "object"
    },
    "success": {
      "type": "boolean"
    }
  }
}
object SalaryAttribute
{
  "type": "object",
  "properties": {
    "amount": {
      "type": "string",
      "example": 12.2
    },
    "data_type": {
      "enum": [
        "SALARY"
      ],
      "type": "string"
    },
    "employee_id": {
      "type": "integer",
      "example": 17
    },
    "attribute_id": {
      "type": "string",
      "example": "salary_123"
    },
    "currency_symbol": {
      "type": "string",
      "example": "$"
    }
  }
}
object SalaryHistoricalAttribute
{
  "type": "object",
  "properties": {
    "amount": {
      "type": "string",
      "example": 12.2
    },
    "data_type": {
      "enum": [
        "SALARY"
      ],
      "type": "string"
    },
    "employee_id": {
      "type": "integer",
      "example": 17
    },
    "attribute_id": {
      "type": "string",
      "example": "salary_123"
    },
    "effective_date": {
      "type": "string",
      "example": "2021-01-01T00:00:00.000Z"
    },
    "currency_symbol": {
      "type": "string",
      "example": "$"
    }
  }
}
object ShortEmployee
{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "example": "Employee"
    },
    "attributes": {
      "type": "object",
      "properties": {
        "id": {
          "type": "object",
          "properties": {
            "type": {
              "$ref": "#/components/schemas/TypeEnum"
            },
            "label": {
              "example": 1
            },
            "value": {
              "example": "id"
            },
            "universal_id": {
              "example": "id"
            }
          }
        },
        "email": {
          "type": "object",
          "properties": {
            "type": {
              "$ref": "#/components/schemas/TypeEnum"
            },
            "label": {
              "example": "Email"
            },
            "value": {
              "example": "michael.dou@personio.de"
            },
            "universal_id": {
              "example": "email"
            }
          }
        },
        "last_name": {
          "type": "object",
          "properties": {
            "type": {
              "$ref": "#/components/schemas/TypeEnum"
            },
            "label": {
              "example": "Last Name"
            },
            "value": {
              "example": "Dou"
            },
            "universal_id": {
              "example": "last_name"
            }
          }
        },
        "first_name": {
          "type": "object",
          "properties": {
            "type": {
              "$ref": "#/components/schemas/TypeEnum"
            },
            "label": {
              "example": "First Name"
            },
            "value": {
              "example": "Michael"
            },
            "universal_id": {
              "example": "first_name"
            }
          }
        }
      }
    }
  }
}
object Supervisor
{
  "type": "object",
  "properties": {
    "label": {
      "type": "string",
      "example": "Supervisor"
    },
    "value": {
      "$ref": "#/components/schemas/ShortEmployee"
    }
  }
}
object Team
{
  "type": "object",
  "properties": {
    "type": {
      "$ref": "#/components/schemas/TypeEnum"
    },
    "label": {
      "example": "Team"
    },
    "value": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "example": "Team"
        },
        "attributes": {
          "type": "object",
          "properties": {
            "name": {
              "example": "Management"
            }
          }
        }
      }
    },
    "universal_id": {
      "example": "team"
    }
  }
}
object TimeOffTypeResource
{
  "type": "object",
  "title": "Type of time-off resource",
  "properties": {
    "type": {
      "enum": [
        "TimeOffType"
      ],
      "type": "string",
      "description": "Time-off type resource name"
    },
    "attributes": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "example": 1,
          "description": "identifier"
        },
        "name": {
          "type": "string",
          "example": "Paid vacation"
        },
        "unit": {
          "enum": [
            "day",
            "hour"
          ],
          "type": "string",
          "example": "day"
        },
        "category": {
          "enum": [
            "family_care",
            "maternity_parental_leave",
            "child_care",
            "short_time_allowance",
            "quarantine",
            "lockout",
            "irrevocable_exemption",
            "sick_leave",
            "voluntary_military_service",
            "unlawful_strike",
            "lawful_strike",
            "paid_vacation",
            "unpaid_vacation",
            "unexcused_absence",
            "offsite_work",
            "other",
            "undefined"
          ],
          "type": "string",
          "example": "offsite_work",
          "nullable": true
        },
        "legacy_category": {
          "enum": [
            "family_care_sick_leave",
            "individual_prohibition_of_employment",
            "maternity_protection_period",
            "other",
            "paid_vacation",
            "parental_leave",
            "sick_leave",
            "lawful_strike",
            "unlawful_strike",
            "treatment",
            "unexcused_absence",
            "unpaid_vacation",
            "voluntary_military_service",
            "offsite_work",
            "family_care_long_term",
            "paid_child_sick",
            "unpaid_child_sick",
            "undefined"
          ],
          "type": "string",
          "example": "offsite_work",
          "nullable": true
        },
        "approval_required": {
          "type": "boolean",
          "example": true
        },
        "substitute_option": {
          "enum": [
            "disabled",
            "optional",
            "required"
          ],
          "type": "string",
          "example": "optional"
        },
        "certification_required": {
          "type": "boolean",
          "example": false
        },
        "half_day_requests_enabled": {
          "type": "boolean",
          "example": true
        },
        "certification_submission_timeframe": {
          "type": "integer",
          "example": 2,
          "description": "The timeframe in days under which the employee needs to submit the certification"
        }
      }
    }
  }
}
string TypeEnum
{
  "enum": [
    "standard",
    "date",
    "integer",
    "decimal",
    "list",
    "link",
    "tags",
    "multiline"
  ],
  "type": "string",
  "example": "standard"
}
object UpdatedAttendanceResponse
{
  "type": "object",
  "title": "Default response object",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "message": {
          "example": "The attendance period was updated."
        }
      }
    },
    "success": {
      "type": "boolean"
    }
  }
}
object WorkSchedule
{
  "type": "object",
  "properties": {
    "type": {
      "$ref": "#/components/schemas/TypeEnum"
    },
    "label": {
      "example": "WorkSchedule"
    },
    "value": {
      "type": "object",
      "properties": {
        "type": {
          "example": "WorkSchedule"
        },
        "attributes": {
          "type": "object",
          "properties": {
            "id": {
              "type": "number",
              "example": 1
            },
            "name": {
              "example": "Standard Hours"
            },
            "friday": {
              "example": "08:30",
              "pattern": "^\\d\\d:\\d\\d$"
            },
            "monday": {
              "example": "08:30",
              "pattern": "^\\d\\d:\\d\\d$"
            },
            "sunday": {
              "example": "00:00",
              "pattern": "^\\d\\d:\\d\\d$"
            },
            "tuesday": {
              "example": "08:30",
              "pattern": "^\\d\\d:\\d\\d$"
            },
            "saturday": {
              "example": "00:00",
              "pattern": "^\\d\\d:\\d\\d$"
            },
            "thursday": {
              "example": "08:30",
              "pattern": "^\\d\\d:\\d\\d$"
            },
            "wednesday": {
              "example": "08:30",
              "pattern": "^\\d\\d:\\d\\d$"
            }
          }
        }
      }
    },
    "universal_id": {
      "example": "work_schedule"
    }
  }
}