{
  "openapi": "3.0.4",
  "info": {
    "title": "Planday.OpenApi.HR.Api",
    "description": "Planday OpenApi - HR",
    "version": "1.0"
  },
  "paths": {
    "/hr/v1.0/employees/{employeeId}/customfields/{customPropertyName}/value": {
      "post": {
        "tags": [
          "CustomPropertyAttachmentValues"
        ],
        "summary": "POST Create an attachment value for a custom property",
        "description": "**Authorization policy**: employee:create.\n<br/>Requires authorization. **Authorization policy**: employee:create.",
        "parameters": [
          {
            "name": "employeeId",
            "in": "path",
            "description": "The id of the employee whose attachment value should be retrieved.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "customPropertyName",
            "in": "path",
            "description": "The name of the custom property.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The attachment as a data URI encoded in Base64.",
          "content": {
            "application/json": {
              "schema": {
                "type": "string"
              }
            },
            "text/json": {
              "schema": {
                "type": "string"
              }
            },
            "application/*+json": {
              "schema": {
                "type": "string"
              }
            },
            "application/json-patch+json": {
              "schema": {
                "type": "string"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      },
      "get": {
        "tags": [
          "CustomPropertyAttachmentValues"
        ],
        "summary": "GET The attachment value of a custom field (image)",
        "description": "Get the image attachment value **Authorization policy**: employee:read.\n<br/>Requires authorization. **Authorization policy**: employee:read.",
        "operationId": "GetCustomPropertyAttachmentValue",
        "parameters": [
          {
            "name": "employeeId",
            "in": "path",
            "description": "Employee id, must be a non-negative value",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "customPropertyName",
            "in": "path",
            "description": "The identifier of the custom field, with format \"custom_123456\"",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      },
      "put": {
        "tags": [
          "CustomPropertyAttachmentValues"
        ],
        "summary": "PUT Update the attachment value for a custom property",
        "description": "**Authorization policy**: employee:update.\n<br/>Requires authorization. **Authorization policy**: employee:update.",
        "parameters": [
          {
            "name": "employeeId",
            "in": "path",
            "description": "The id of the employee whose attachment value should be retrieved.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "customPropertyName",
            "in": "path",
            "description": "The name of the custom property.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The attachment as a data URI encoded in Base64.",
          "content": {
            "application/json": {
              "schema": {
                "type": "string"
              }
            },
            "text/json": {
              "schema": {
                "type": "string"
              }
            },
            "application/*+json": {
              "schema": {
                "type": "string"
              }
            },
            "application/json-patch+json": {
              "schema": {
                "type": "string"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      },
      "delete": {
        "tags": [
          "CustomPropertyAttachmentValues"
        ],
        "summary": "DELETE Delete the attachment value of a custom property",
        "description": "**Authorization policy**: employee:update.\n<br/>Requires authorization. **Authorization policy**: employee:update.",
        "parameters": [
          {
            "name": "employeeId",
            "in": "path",
            "description": "The id of the employee whose attachment value should be deleted.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "customPropertyName",
            "in": "path",
            "description": "The name of the custom property.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "boolean"
                }
              },
              "application/json": {
                "schema": {
                  "type": "boolean"
                }
              },
              "text/json": {
                "schema": {
                  "type": "boolean"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/departments": {
      "post": {
        "tags": [
          "Departments"
        ],
        "summary": "POST Create department",
        "description": "Create a new department. **Authorization policy**: department:create.\n<br/>Requires authorization. **Authorization policy**: department:create.",
        "requestBody": {
          "description": "Department input model",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/DepartmentInput"
                  }
                ],
                "description": "Department input model"
              }
            },
            "text/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/DepartmentInput"
                  }
                ],
                "description": "Department input model"
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/DepartmentInput"
                  }
                ],
                "description": "Department input model"
              }
            },
            "application/json-patch+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/DepartmentInput"
                  }
                ],
                "description": "Department input model"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/DepartmentOutputOpenApiResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DepartmentOutputOpenApiResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/DepartmentOutputOpenApiResponse"
                }
              }
            }
          },
          "409": {
            "description": "Department creating failed"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      },
      "get": {
        "tags": [
          "Departments"
        ],
        "summary": "GET List of departments",
        "description": "Get a list of departments. **Authorization policy**: department:read.\n<br/>Requires authorization. **Authorization policy**: department:read.",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Return no more than \"limit\" records. Maximum of 50 records per request",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip first \"offset\" records (for paging purposes)",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/DepartmentOutputPagedOpenApiResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DepartmentOutputPagedOpenApiResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/DepartmentOutputPagedOpenApiResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/departments/{id}": {
      "get": {
        "tags": [
          "Departments"
        ],
        "summary": "GET Department by id",
        "description": "Get details of a department. **Authorization policy**: department:read.\n<br/>Requires authorization. **Authorization policy**: department:read.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Department id",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "includeDeleted",
            "in": "query",
            "description": "Include deleted departments",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "managedEmployeesOnly",
            "in": "query",
            "description": "Deprecated. This parameter has no effect and will be removed in a future version.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/DepartmentOutputOpenApiResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DepartmentOutputOpenApiResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/DepartmentOutputOpenApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Department id is invalid"
          },
          "404": {
            "description": "Department with given id doesn't exist"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      },
      "put": {
        "tags": [
          "Departments"
        ],
        "summary": "PUT Update department",
        "description": "Update details of a department. **Authorization policy**: department:update.\n<br/>Requires authorization. **Authorization policy**: department:update.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Department id, must be a non-negative value",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "description": "Department input model",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/DepartmentInput"
                  }
                ],
                "description": "Department input model"
              }
            },
            "text/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/DepartmentInput"
                  }
                ],
                "description": "Department input model"
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/DepartmentInput"
                  }
                ],
                "description": "Department input model"
              }
            },
            "application/json-patch+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/DepartmentInput"
                  }
                ],
                "description": "Department input model"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Department id or department name is invalid"
          },
          "404": {
            "description": "Department with given id doesn't exist"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      },
      "delete": {
        "tags": [
          "Departments"
        ],
        "summary": "DELETE Department",
        "description": "Delete a department. Use this endpoint with caution. **Authorization policy**: department:delete.\n<br/>Requires authorization. **Authorization policy**: department:delete.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Department id, must be a non-negative value",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Department id is invalid"
          },
          "409": {
            "description": "Department deleting failed"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/departments/{id}/employees": {
      "get": {
        "tags": [
          "Departments"
        ],
        "summary": "GET Employees in department",
        "description": "Gets a collection of employee ids in this department **Authorization policy**: employee:read.\n<br/>Requires authorization. **Authorization policy**: employee:read.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Department id, must be a non-negative value",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/DepartmentEmployeeOutputIEnumerableOpenApiResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DepartmentEmployeeOutputIEnumerableOpenApiResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/DepartmentEmployeeOutputIEnumerableOpenApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Department id or department name is invalid"
          },
          "404": {
            "description": "Department with given id doesn't exist"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/employees/deactivated": {
      "get": {
        "tags": [
          "Employee"
        ],
        "summary": "GET List of deactivated employees",
        "description": "Get a paginated list of deactivated employees. **Authorization policy**: employee:read.\n<br/>Requires authorization. **Authorization policy**: employee:read.",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Return no more than \"limit\" records. Maximum of 50 records per request",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip first \"offset\" records (for paging purposes)",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "createdFrom",
            "in": "query",
            "description": "Return only employees created after specified instant. Use yyyy-mm-ddThh:mm:ssZ format",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "createdTo",
            "in": "query",
            "description": "Return only employees created before specified instant. Use yyyy-mm-ddThh:mm:ssZ format",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "modifiedFrom",
            "in": "query",
            "description": "Return only employees last modified, created or deleted after specified instant. Use yyyy-mm-ddThh:mm:ssZ format",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "modifiedTo",
            "in": "query",
            "description": "Return only employees last modified, created or deleted before specified instant. Use yyyy-mm-ddThh:mm:ssZ format",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "deactivatedFrom",
            "in": "query",
            "description": "Return only employees that were last deactivated after specified instant. Use yyyy-mm-ddThh:mm:ssZ",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "deactivatedTo",
            "in": "query",
            "description": "Return only employees that were last deactivated before specified instant. Use yyyy-mm-ddThh:mm:ssZ",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "special",
            "in": "query",
            "description": "Indicates which of the available fields should be included for each employee",
            "schema": {
              "type": "array",
              "items": {
                "enum": [
                  "BankAccount",
                  "BirthDate",
                  "Ssn"
                ],
                "type": "string"
              }
            }
          },
          {
            "name": "searchQuery",
            "in": "query",
            "description": "Free text search query that allows to filter employees by First Name, Last Name, Email, Phone/Cell Phone Number, Salary Identifier and SSN",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/DeactivatedEmployeeOutputPagedOpenApiResponse"
                },
                "example": {
                  "data": [
                    {
                      "hiredDate": "2016-01-01",
                      "id": 614517,
                      "dateTimeCreated": "2016-01-02",
                      "dateTimeModified": "2016-07-11T13:22:00Z",
                      "dateTimeDeleted": "2026-09-24T02:45:28.6166726Z",
                      "employeeTypeId": 5322,
                      "salaryIdentifier": "DKF614517",
                      "firstName": "Mindy",
                      "lastName": "Haynes",
                      "userName": "mindy.haynes@test.com",
                      "cellPhone": "+451212121212",
                      "street1": "Lundsbjergvej 51",
                      "street2": "Lundsbjegvej 52",
                      "zip": "1924",
                      "city": "Copenhagen",
                      "phone": "+452121212121",
                      "email": "mindy.haynes@test.com",
                      "departments": [
                        6324,
                        4967
                      ],
                      "employeeGroups": [
                        9663,
                        8987
                      ],
                      "ssn": "",
                      "cellPhoneCountryPrefix": "+45",
                      "cellPhoneCountryCode": "DK",
                      "phoneCountryPrefix": "+45",
                      "phoneCountryCode": "DK"
                    }
                  ],
                  "paging": {
                    "offset": 0,
                    "limit": 50,
                    "total": 1
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeactivatedEmployeeOutputPagedOpenApiResponse"
                },
                "example": {
                  "data": [
                    {
                      "hiredDate": "2016-01-01",
                      "id": 614517,
                      "dateTimeCreated": "2016-01-02",
                      "dateTimeModified": "2016-07-11T13:22:00Z",
                      "dateTimeDeleted": "2026-09-24T02:45:28.6166726Z",
                      "employeeTypeId": 5322,
                      "salaryIdentifier": "DKF614517",
                      "firstName": "Mindy",
                      "lastName": "Haynes",
                      "userName": "mindy.haynes@test.com",
                      "cellPhone": "+451212121212",
                      "street1": "Lundsbjergvej 51",
                      "street2": "Lundsbjegvej 52",
                      "zip": "1924",
                      "city": "Copenhagen",
                      "phone": "+452121212121",
                      "email": "mindy.haynes@test.com",
                      "departments": [
                        6324,
                        4967
                      ],
                      "employeeGroups": [
                        9663,
                        8987
                      ],
                      "ssn": "",
                      "cellPhoneCountryPrefix": "+45",
                      "cellPhoneCountryCode": "DK",
                      "phoneCountryPrefix": "+45",
                      "phoneCountryCode": "DK"
                    }
                  ],
                  "paging": {
                    "offset": 0,
                    "limit": 50,
                    "total": 1
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeactivatedEmployeeOutputPagedOpenApiResponse"
                },
                "example": {
                  "data": [
                    {
                      "hiredDate": "2016-01-01",
                      "id": 614517,
                      "dateTimeCreated": "2016-01-02",
                      "dateTimeModified": "2016-07-11T13:22:00Z",
                      "dateTimeDeleted": "2026-09-24T02:45:28.6166726Z",
                      "employeeTypeId": 5322,
                      "salaryIdentifier": "DKF614517",
                      "firstName": "Mindy",
                      "lastName": "Haynes",
                      "userName": "mindy.haynes@test.com",
                      "cellPhone": "+451212121212",
                      "street1": "Lundsbjergvej 51",
                      "street2": "Lundsbjegvej 52",
                      "zip": "1924",
                      "city": "Copenhagen",
                      "phone": "+452121212121",
                      "email": "mindy.haynes@test.com",
                      "departments": [
                        6324,
                        4967
                      ],
                      "employeeGroups": [
                        9663,
                        8987
                      ],
                      "ssn": "",
                      "cellPhoneCountryPrefix": "+45",
                      "cellPhoneCountryCode": "DK",
                      "phoneCountryPrefix": "+45",
                      "phoneCountryCode": "DK"
                    }
                  ],
                  "paging": {
                    "offset": 0,
                    "limit": 50,
                    "total": 1
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/employees/fielddefinitions": {
      "get": {
        "tags": [
          "Employee"
        ],
        "summary": "GET Employee field definition",
        "description": "Get a list of fields available when creating or updating an employee account. **Authorization policy**: employee:read.\n<br/>Requires authorization. **Authorization policy**: employee:read.",
        "parameters": [
          {
            "name": "type",
            "in": "query",
            "description": "The type of employee definition (JsonSchema) to return; describing Post and Put employee endpoints respectively.",
            "schema": {
              "enum": [
                "Post",
                "Put"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": { },
                "example": {
                  "data": {
                    "$schema": "http://json-schema.org/draft-04/schema#",
                    "type": "object",
                    "required": [
                      "firstName",
                      "lastName"
                    ],
                    "properties": {
                      "firstName": {
                        "$ref": "#/definitions/string"
                      },
                      "lastName": {
                        "$ref": "#/definitions/string"
                      },
                      "ssn": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "zip": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "city": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "email": {
                        "$ref": "#/definitions/optionalEmail"
                      },
                      "phone": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "phoneCountryCode": {
                        "$ref": "#/definitions/optionalCountryCode"
                      },
                      "street1": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "street2": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "userName": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "departments": {
                        "$ref": "#/definitions/optionalArray<System.Int64>"
                      },
                      "employeeGroups": {
                        "$ref": "#/definitions/optionalArray<System.Int64>"
                      },
                      "hiredFrom": {
                        "$ref": "#/definitions/optionalDate"
                      },
                      "birthDate": {
                        "$ref": "#/definitions/optionalDate"
                      },
                      "gender": {
                        "$ref": "#/definitions/optionalGender"
                      },
                      "cellPhone": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "cellPhoneCountryCode": {
                        "$ref": "#/definitions/optionalCountryCode"
                      },
                      "salaryIdentifier": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "jobTitle": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "employeeTypeId": {
                        "$ref": "#/definitions/optionalEmployeeType"
                      },
                      "primaryDepartmentId": {
                        "$ref": "#/definitions/optionalNumeric"
                      },
                      "custom_123194": {
                        "description": "Custom Field Picture",
                        "$ref": "#/definitions/optionalImage"
                      },
                      "custom_123195": {
                        "description": "Address 3",
                        "$ref": "#/definitions/optionalString"
                      },
                      "custom_123196": {
                        "description": "khfdshrlfjr",
                        "$ref": "#/definitions/optionalString"
                      },
                      "custom_123197": {
                        "description": "custom filed picture",
                        "$ref": "#/definitions/optionalString"
                      },
                      "custom_123198": {
                        "description": "custom filed picture2",
                        "$ref": "#/definitions/optionalImage"
                      },
                      "custom_123200": {
                        "description": "Use tax maincard",
                        "$ref": "#/definitions/optionalBoolean",
                        "translationTerm": "EditEmployee.TaxUseMaincard"
                      },
                      "bankAccount": {
                        "$ref": "#/definitions/bankAccount"
                      }
                    },
                    "definitions": {
                      "string": {
                        "type": "string",
                        "minLength": 1
                      },
                      "optionalString": {
                        "anyOf": [
                          {
                            "type": "string",
                            "minLength": 1
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalEmail": {
                        "anyOf": [
                          {
                            "type": "string",
                            "format": "email"
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalCountryCode": {
                        "anyOf": [
                          {
                            "type": "string",
                            "enum": [
                              "DK",
                              "UK",
                              "NO",
                              "SE",
                              "DE",
                              "US",
                              "PL",
                              "VN",
                              "FR",
                              "ES",
                              "GL",
                              "IT",
                              "NL",
                              "CH",
                              "BE",
                              "AT",
                              "FI",
                              "IS",
                              "AU",
                              "LT",
                              "AR",
                              "BS",
                              "BB",
                              "BY",
                              "BR",
                              "BG",
                              "KH",
                              "CA",
                              "CL",
                              "CN",
                              "CZ",
                              "DO",
                              "EC",
                              "EG",
                              "EE",
                              "FK",
                              "GE",
                              "GR",
                              "GD",
                              "HK",
                              "HU",
                              "IN",
                              "IE",
                              "IL",
                              "JM",
                              "JP",
                              "KR",
                              "KW",
                              "LV",
                              "LB",
                              "LU",
                              "MO",
                              "MY",
                              "MV",
                              "MT",
                              "MX",
                              "MA",
                              "NZ",
                              "PY",
                              "PE",
                              "PH",
                              "PT",
                              "PR",
                              "RO",
                              "RU",
                              "SG",
                              "ZA",
                              "LK",
                              "TW",
                              "TH",
                              "TN",
                              "TR",
                              "UA",
                              "AE",
                              "UY",
                              "VE",
                              "GI",
                              "FO",
                              "NG",
                              "SK",
                              "NP",
                              "GH",
                              "ER",
                              "ML",
                              "TZ",
                              "IR",
                              "PK",
                              "SY",
                              "AL",
                              "ID",
                              "RS",
                              "HR",
                              "SI",
                              "TT",
                              "BA",
                              "MK",
                              "ME",
                              "XK",
                              "SL",
                              "BO",
                              "DZ",
                              "CI",
                              "BD",
                              "CY",
                              "MW",
                              "MN",
                              "CM",
                              "UG",
                              "QA",
                              "CG",
                              "KE",
                              "SA",
                              "CO",
                              "MM",
                              "GM",
                              "FJ",
                              "ZW",
                              "SD",
                              "AO",
                              "YE",
                              "MU",
                              "RW",
                              "BW",
                              "RE",
                              "HN",
                              "ET",
                              "LY",
                              "MD",
                              "SO"
                            ],
                            "values": [
                              "DK",
                              "UK",
                              "NO",
                              "SE",
                              "DE",
                              "US",
                              "PL",
                              "VN",
                              "FR",
                              "ES",
                              "GL",
                              "IT",
                              "NL",
                              "CH",
                              "BE",
                              "AT",
                              "FI",
                              "IS",
                              "AU",
                              "LT",
                              "AR",
                              "BS",
                              "BB",
                              "BY",
                              "BR",
                              "BG",
                              "KH",
                              "CA",
                              "CL",
                              "CN",
                              "CZ",
                              "DO",
                              "EC",
                              "EG",
                              "EE",
                              "FK",
                              "GE",
                              "GR",
                              "GD",
                              "HK",
                              "HU",
                              "IN",
                              "IE",
                              "IL",
                              "JM",
                              "JP",
                              "KR",
                              "KW",
                              "LV",
                              "LB",
                              "LU",
                              "MO",
                              "MY",
                              "MV",
                              "MT",
                              "MX",
                              "MA",
                              "NZ",
                              "PY",
                              "PE",
                              "PH",
                              "PT",
                              "PR",
                              "RO",
                              "RU",
                              "SG",
                              "ZA",
                              "LK",
                              "TW",
                              "TH",
                              "TN",
                              "TR",
                              "UA",
                              "AE",
                              "UY",
                              "VE",
                              "GI",
                              "FO",
                              "NG",
                              "SK",
                              "NP",
                              "GH",
                              "ER",
                              "ML",
                              "TZ",
                              "IR",
                              "PK",
                              "SY",
                              "AL",
                              "ID",
                              "RS",
                              "HR",
                              "SI",
                              "TT",
                              "BA",
                              "MK",
                              "ME",
                              "XK",
                              "SL",
                              "BO",
                              "DZ",
                              "CI",
                              "BD",
                              "CY",
                              "MW",
                              "MN",
                              "CM",
                              "UG",
                              "QA",
                              "CG",
                              "KE",
                              "SA",
                              "CO",
                              "MM",
                              "GM",
                              "FJ",
                              "ZW",
                              "SD",
                              "AO",
                              "YE",
                              "MU",
                              "RW",
                              "BW",
                              "RE",
                              "HN",
                              "ET",
                              "LY",
                              "MD",
                              "SO"
                            ]
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "numeric": {
                        "type": "number"
                      },
                      "optionalArray<System.Int64>": {
                        "anyOf": [
                          {
                            "type": "array",
                            "items": {
                              "$ref": "#/definitions/numeric"
                            }
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalDate": {
                        "anyOf": [
                          {
                            "type": "string",
                            "pattern": "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])(?:T(2[0-3]|[0-1][0-9]):([0-5][0-9]):([0-5][0-9])(\\\\.[0-9]+)?(Z|[+-](?:2[0-3]|[0-1][0-9]):[0-5][0-9])?)?$"
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalGender": {
                        "anyOf": [
                          {
                            "type": "string",
                            "enum": [
                              "Male",
                              "Female"
                            ],
                            "values": [
                              "Male",
                              "Female"
                            ]
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalEmployeeType": {
                        "anyOf": [
                          {
                            "type": "integer",
                            "enum": [
                              71285,
                              71286,
                              71287
                            ],
                            "values": [
                              "Intern",
                              "Part-time",
                              "Full-time"
                            ]
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalNumeric": {
                        "anyOf": [
                          {
                            "type": "number"
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalImage": {
                        "anyOf": [
                          {
                            "type": "string"
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalBoolean": {
                        "anyOf": [
                          {
                            "type": "boolean"
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "bankAccount": {
                        "type": "object",
                        "properties": {
                          "accountNumber": {
                            "$ref": "#/definitions/optionalString"
                          },
                          "registrationNumber": {
                            "$ref": "#/definitions/optionalString"
                          }
                        },
                        "required": [ ],
                        "readOnly": [ ],
                        "unique": [ ]
                      }
                    },
                    "portalId": 1022990,
                    "readOnly": [
                      "email",
                      "cellPhoneCountryCode",
                      "cellPhone"
                    ],
                    "unique": [ ]
                  }
                }
              },
              "application/json": {
                "schema": { },
                "example": {
                  "data": {
                    "$schema": "http://json-schema.org/draft-04/schema#",
                    "type": "object",
                    "required": [
                      "firstName",
                      "lastName"
                    ],
                    "properties": {
                      "firstName": {
                        "$ref": "#/definitions/string"
                      },
                      "lastName": {
                        "$ref": "#/definitions/string"
                      },
                      "ssn": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "zip": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "city": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "email": {
                        "$ref": "#/definitions/optionalEmail"
                      },
                      "phone": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "phoneCountryCode": {
                        "$ref": "#/definitions/optionalCountryCode"
                      },
                      "street1": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "street2": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "userName": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "departments": {
                        "$ref": "#/definitions/optionalArray<System.Int64>"
                      },
                      "employeeGroups": {
                        "$ref": "#/definitions/optionalArray<System.Int64>"
                      },
                      "hiredFrom": {
                        "$ref": "#/definitions/optionalDate"
                      },
                      "birthDate": {
                        "$ref": "#/definitions/optionalDate"
                      },
                      "gender": {
                        "$ref": "#/definitions/optionalGender"
                      },
                      "cellPhone": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "cellPhoneCountryCode": {
                        "$ref": "#/definitions/optionalCountryCode"
                      },
                      "salaryIdentifier": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "jobTitle": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "employeeTypeId": {
                        "$ref": "#/definitions/optionalEmployeeType"
                      },
                      "primaryDepartmentId": {
                        "$ref": "#/definitions/optionalNumeric"
                      },
                      "custom_123194": {
                        "description": "Custom Field Picture",
                        "$ref": "#/definitions/optionalImage"
                      },
                      "custom_123195": {
                        "description": "Address 3",
                        "$ref": "#/definitions/optionalString"
                      },
                      "custom_123196": {
                        "description": "khfdshrlfjr",
                        "$ref": "#/definitions/optionalString"
                      },
                      "custom_123197": {
                        "description": "custom filed picture",
                        "$ref": "#/definitions/optionalString"
                      },
                      "custom_123198": {
                        "description": "custom filed picture2",
                        "$ref": "#/definitions/optionalImage"
                      },
                      "custom_123200": {
                        "description": "Use tax maincard",
                        "$ref": "#/definitions/optionalBoolean",
                        "translationTerm": "EditEmployee.TaxUseMaincard"
                      },
                      "bankAccount": {
                        "$ref": "#/definitions/bankAccount"
                      }
                    },
                    "definitions": {
                      "string": {
                        "type": "string",
                        "minLength": 1
                      },
                      "optionalString": {
                        "anyOf": [
                          {
                            "type": "string",
                            "minLength": 1
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalEmail": {
                        "anyOf": [
                          {
                            "type": "string",
                            "format": "email"
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalCountryCode": {
                        "anyOf": [
                          {
                            "type": "string",
                            "enum": [
                              "DK",
                              "UK",
                              "NO",
                              "SE",
                              "DE",
                              "US",
                              "PL",
                              "VN",
                              "FR",
                              "ES",
                              "GL",
                              "IT",
                              "NL",
                              "CH",
                              "BE",
                              "AT",
                              "FI",
                              "IS",
                              "AU",
                              "LT",
                              "AR",
                              "BS",
                              "BB",
                              "BY",
                              "BR",
                              "BG",
                              "KH",
                              "CA",
                              "CL",
                              "CN",
                              "CZ",
                              "DO",
                              "EC",
                              "EG",
                              "EE",
                              "FK",
                              "GE",
                              "GR",
                              "GD",
                              "HK",
                              "HU",
                              "IN",
                              "IE",
                              "IL",
                              "JM",
                              "JP",
                              "KR",
                              "KW",
                              "LV",
                              "LB",
                              "LU",
                              "MO",
                              "MY",
                              "MV",
                              "MT",
                              "MX",
                              "MA",
                              "NZ",
                              "PY",
                              "PE",
                              "PH",
                              "PT",
                              "PR",
                              "RO",
                              "RU",
                              "SG",
                              "ZA",
                              "LK",
                              "TW",
                              "TH",
                              "TN",
                              "TR",
                              "UA",
                              "AE",
                              "UY",
                              "VE",
                              "GI",
                              "FO",
                              "NG",
                              "SK",
                              "NP",
                              "GH",
                              "ER",
                              "ML",
                              "TZ",
                              "IR",
                              "PK",
                              "SY",
                              "AL",
                              "ID",
                              "RS",
                              "HR",
                              "SI",
                              "TT",
                              "BA",
                              "MK",
                              "ME",
                              "XK",
                              "SL",
                              "BO",
                              "DZ",
                              "CI",
                              "BD",
                              "CY",
                              "MW",
                              "MN",
                              "CM",
                              "UG",
                              "QA",
                              "CG",
                              "KE",
                              "SA",
                              "CO",
                              "MM",
                              "GM",
                              "FJ",
                              "ZW",
                              "SD",
                              "AO",
                              "YE",
                              "MU",
                              "RW",
                              "BW",
                              "RE",
                              "HN",
                              "ET",
                              "LY",
                              "MD",
                              "SO"
                            ],
                            "values": [
                              "DK",
                              "UK",
                              "NO",
                              "SE",
                              "DE",
                              "US",
                              "PL",
                              "VN",
                              "FR",
                              "ES",
                              "GL",
                              "IT",
                              "NL",
                              "CH",
                              "BE",
                              "AT",
                              "FI",
                              "IS",
                              "AU",
                              "LT",
                              "AR",
                              "BS",
                              "BB",
                              "BY",
                              "BR",
                              "BG",
                              "KH",
                              "CA",
                              "CL",
                              "CN",
                              "CZ",
                              "DO",
                              "EC",
                              "EG",
                              "EE",
                              "FK",
                              "GE",
                              "GR",
                              "GD",
                              "HK",
                              "HU",
                              "IN",
                              "IE",
                              "IL",
                              "JM",
                              "JP",
                              "KR",
                              "KW",
                              "LV",
                              "LB",
                              "LU",
                              "MO",
                              "MY",
                              "MV",
                              "MT",
                              "MX",
                              "MA",
                              "NZ",
                              "PY",
                              "PE",
                              "PH",
                              "PT",
                              "PR",
                              "RO",
                              "RU",
                              "SG",
                              "ZA",
                              "LK",
                              "TW",
                              "TH",
                              "TN",
                              "TR",
                              "UA",
                              "AE",
                              "UY",
                              "VE",
                              "GI",
                              "FO",
                              "NG",
                              "SK",
                              "NP",
                              "GH",
                              "ER",
                              "ML",
                              "TZ",
                              "IR",
                              "PK",
                              "SY",
                              "AL",
                              "ID",
                              "RS",
                              "HR",
                              "SI",
                              "TT",
                              "BA",
                              "MK",
                              "ME",
                              "XK",
                              "SL",
                              "BO",
                              "DZ",
                              "CI",
                              "BD",
                              "CY",
                              "MW",
                              "MN",
                              "CM",
                              "UG",
                              "QA",
                              "CG",
                              "KE",
                              "SA",
                              "CO",
                              "MM",
                              "GM",
                              "FJ",
                              "ZW",
                              "SD",
                              "AO",
                              "YE",
                              "MU",
                              "RW",
                              "BW",
                              "RE",
                              "HN",
                              "ET",
                              "LY",
                              "MD",
                              "SO"
                            ]
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "numeric": {
                        "type": "number"
                      },
                      "optionalArray<System.Int64>": {
                        "anyOf": [
                          {
                            "type": "array",
                            "items": {
                              "$ref": "#/definitions/numeric"
                            }
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalDate": {
                        "anyOf": [
                          {
                            "type": "string",
                            "pattern": "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])(?:T(2[0-3]|[0-1][0-9]):([0-5][0-9]):([0-5][0-9])(\\\\.[0-9]+)?(Z|[+-](?:2[0-3]|[0-1][0-9]):[0-5][0-9])?)?$"
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalGender": {
                        "anyOf": [
                          {
                            "type": "string",
                            "enum": [
                              "Male",
                              "Female"
                            ],
                            "values": [
                              "Male",
                              "Female"
                            ]
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalEmployeeType": {
                        "anyOf": [
                          {
                            "type": "integer",
                            "enum": [
                              71285,
                              71286,
                              71287
                            ],
                            "values": [
                              "Intern",
                              "Part-time",
                              "Full-time"
                            ]
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalNumeric": {
                        "anyOf": [
                          {
                            "type": "number"
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalImage": {
                        "anyOf": [
                          {
                            "type": "string"
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalBoolean": {
                        "anyOf": [
                          {
                            "type": "boolean"
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "bankAccount": {
                        "type": "object",
                        "properties": {
                          "accountNumber": {
                            "$ref": "#/definitions/optionalString"
                          },
                          "registrationNumber": {
                            "$ref": "#/definitions/optionalString"
                          }
                        },
                        "required": [ ],
                        "readOnly": [ ],
                        "unique": [ ]
                      }
                    },
                    "portalId": 1022990,
                    "readOnly": [
                      "email",
                      "cellPhoneCountryCode",
                      "cellPhone"
                    ],
                    "unique": [ ]
                  }
                }
              },
              "text/json": {
                "schema": { },
                "example": {
                  "data": {
                    "$schema": "http://json-schema.org/draft-04/schema#",
                    "type": "object",
                    "required": [
                      "firstName",
                      "lastName"
                    ],
                    "properties": {
                      "firstName": {
                        "$ref": "#/definitions/string"
                      },
                      "lastName": {
                        "$ref": "#/definitions/string"
                      },
                      "ssn": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "zip": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "city": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "email": {
                        "$ref": "#/definitions/optionalEmail"
                      },
                      "phone": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "phoneCountryCode": {
                        "$ref": "#/definitions/optionalCountryCode"
                      },
                      "street1": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "street2": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "userName": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "departments": {
                        "$ref": "#/definitions/optionalArray<System.Int64>"
                      },
                      "employeeGroups": {
                        "$ref": "#/definitions/optionalArray<System.Int64>"
                      },
                      "hiredFrom": {
                        "$ref": "#/definitions/optionalDate"
                      },
                      "birthDate": {
                        "$ref": "#/definitions/optionalDate"
                      },
                      "gender": {
                        "$ref": "#/definitions/optionalGender"
                      },
                      "cellPhone": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "cellPhoneCountryCode": {
                        "$ref": "#/definitions/optionalCountryCode"
                      },
                      "salaryIdentifier": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "jobTitle": {
                        "$ref": "#/definitions/optionalString"
                      },
                      "employeeTypeId": {
                        "$ref": "#/definitions/optionalEmployeeType"
                      },
                      "primaryDepartmentId": {
                        "$ref": "#/definitions/optionalNumeric"
                      },
                      "custom_123194": {
                        "description": "Custom Field Picture",
                        "$ref": "#/definitions/optionalImage"
                      },
                      "custom_123195": {
                        "description": "Address 3",
                        "$ref": "#/definitions/optionalString"
                      },
                      "custom_123196": {
                        "description": "khfdshrlfjr",
                        "$ref": "#/definitions/optionalString"
                      },
                      "custom_123197": {
                        "description": "custom filed picture",
                        "$ref": "#/definitions/optionalString"
                      },
                      "custom_123198": {
                        "description": "custom filed picture2",
                        "$ref": "#/definitions/optionalImage"
                      },
                      "custom_123200": {
                        "description": "Use tax maincard",
                        "$ref": "#/definitions/optionalBoolean",
                        "translationTerm": "EditEmployee.TaxUseMaincard"
                      },
                      "bankAccount": {
                        "$ref": "#/definitions/bankAccount"
                      }
                    },
                    "definitions": {
                      "string": {
                        "type": "string",
                        "minLength": 1
                      },
                      "optionalString": {
                        "anyOf": [
                          {
                            "type": "string",
                            "minLength": 1
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalEmail": {
                        "anyOf": [
                          {
                            "type": "string",
                            "format": "email"
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalCountryCode": {
                        "anyOf": [
                          {
                            "type": "string",
                            "enum": [
                              "DK",
                              "UK",
                              "NO",
                              "SE",
                              "DE",
                              "US",
                              "PL",
                              "VN",
                              "FR",
                              "ES",
                              "GL",
                              "IT",
                              "NL",
                              "CH",
                              "BE",
                              "AT",
                              "FI",
                              "IS",
                              "AU",
                              "LT",
                              "AR",
                              "BS",
                              "BB",
                              "BY",
                              "BR",
                              "BG",
                              "KH",
                              "CA",
                              "CL",
                              "CN",
                              "CZ",
                              "DO",
                              "EC",
                              "EG",
                              "EE",
                              "FK",
                              "GE",
                              "GR",
                              "GD",
                              "HK",
                              "HU",
                              "IN",
                              "IE",
                              "IL",
                              "JM",
                              "JP",
                              "KR",
                              "KW",
                              "LV",
                              "LB",
                              "LU",
                              "MO",
                              "MY",
                              "MV",
                              "MT",
                              "MX",
                              "MA",
                              "NZ",
                              "PY",
                              "PE",
                              "PH",
                              "PT",
                              "PR",
                              "RO",
                              "RU",
                              "SG",
                              "ZA",
                              "LK",
                              "TW",
                              "TH",
                              "TN",
                              "TR",
                              "UA",
                              "AE",
                              "UY",
                              "VE",
                              "GI",
                              "FO",
                              "NG",
                              "SK",
                              "NP",
                              "GH",
                              "ER",
                              "ML",
                              "TZ",
                              "IR",
                              "PK",
                              "SY",
                              "AL",
                              "ID",
                              "RS",
                              "HR",
                              "SI",
                              "TT",
                              "BA",
                              "MK",
                              "ME",
                              "XK",
                              "SL",
                              "BO",
                              "DZ",
                              "CI",
                              "BD",
                              "CY",
                              "MW",
                              "MN",
                              "CM",
                              "UG",
                              "QA",
                              "CG",
                              "KE",
                              "SA",
                              "CO",
                              "MM",
                              "GM",
                              "FJ",
                              "ZW",
                              "SD",
                              "AO",
                              "YE",
                              "MU",
                              "RW",
                              "BW",
                              "RE",
                              "HN",
                              "ET",
                              "LY",
                              "MD",
                              "SO"
                            ],
                            "values": [
                              "DK",
                              "UK",
                              "NO",
                              "SE",
                              "DE",
                              "US",
                              "PL",
                              "VN",
                              "FR",
                              "ES",
                              "GL",
                              "IT",
                              "NL",
                              "CH",
                              "BE",
                              "AT",
                              "FI",
                              "IS",
                              "AU",
                              "LT",
                              "AR",
                              "BS",
                              "BB",
                              "BY",
                              "BR",
                              "BG",
                              "KH",
                              "CA",
                              "CL",
                              "CN",
                              "CZ",
                              "DO",
                              "EC",
                              "EG",
                              "EE",
                              "FK",
                              "GE",
                              "GR",
                              "GD",
                              "HK",
                              "HU",
                              "IN",
                              "IE",
                              "IL",
                              "JM",
                              "JP",
                              "KR",
                              "KW",
                              "LV",
                              "LB",
                              "LU",
                              "MO",
                              "MY",
                              "MV",
                              "MT",
                              "MX",
                              "MA",
                              "NZ",
                              "PY",
                              "PE",
                              "PH",
                              "PT",
                              "PR",
                              "RO",
                              "RU",
                              "SG",
                              "ZA",
                              "LK",
                              "TW",
                              "TH",
                              "TN",
                              "TR",
                              "UA",
                              "AE",
                              "UY",
                              "VE",
                              "GI",
                              "FO",
                              "NG",
                              "SK",
                              "NP",
                              "GH",
                              "ER",
                              "ML",
                              "TZ",
                              "IR",
                              "PK",
                              "SY",
                              "AL",
                              "ID",
                              "RS",
                              "HR",
                              "SI",
                              "TT",
                              "BA",
                              "MK",
                              "ME",
                              "XK",
                              "SL",
                              "BO",
                              "DZ",
                              "CI",
                              "BD",
                              "CY",
                              "MW",
                              "MN",
                              "CM",
                              "UG",
                              "QA",
                              "CG",
                              "KE",
                              "SA",
                              "CO",
                              "MM",
                              "GM",
                              "FJ",
                              "ZW",
                              "SD",
                              "AO",
                              "YE",
                              "MU",
                              "RW",
                              "BW",
                              "RE",
                              "HN",
                              "ET",
                              "LY",
                              "MD",
                              "SO"
                            ]
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "numeric": {
                        "type": "number"
                      },
                      "optionalArray<System.Int64>": {
                        "anyOf": [
                          {
                            "type": "array",
                            "items": {
                              "$ref": "#/definitions/numeric"
                            }
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalDate": {
                        "anyOf": [
                          {
                            "type": "string",
                            "pattern": "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])(?:T(2[0-3]|[0-1][0-9]):([0-5][0-9]):([0-5][0-9])(\\\\.[0-9]+)?(Z|[+-](?:2[0-3]|[0-1][0-9]):[0-5][0-9])?)?$"
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalGender": {
                        "anyOf": [
                          {
                            "type": "string",
                            "enum": [
                              "Male",
                              "Female"
                            ],
                            "values": [
                              "Male",
                              "Female"
                            ]
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalEmployeeType": {
                        "anyOf": [
                          {
                            "type": "integer",
                            "enum": [
                              71285,
                              71286,
                              71287
                            ],
                            "values": [
                              "Intern",
                              "Part-time",
                              "Full-time"
                            ]
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalNumeric": {
                        "anyOf": [
                          {
                            "type": "number"
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalImage": {
                        "anyOf": [
                          {
                            "type": "string"
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "optionalBoolean": {
                        "anyOf": [
                          {
                            "type": "boolean"
                          },
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "maxLength": 0
                          }
                        ]
                      },
                      "bankAccount": {
                        "type": "object",
                        "properties": {
                          "accountNumber": {
                            "$ref": "#/definitions/optionalString"
                          },
                          "registrationNumber": {
                            "$ref": "#/definitions/optionalString"
                          }
                        },
                        "required": [ ],
                        "readOnly": [ ],
                        "unique": [ ]
                      }
                    },
                    "portalId": 1022990,
                    "readOnly": [
                      "email",
                      "cellPhoneCountryCode",
                      "cellPhone"
                    ],
                    "unique": [ ]
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/employees/reactivate/{employeeId}": {
      "put": {
        "tags": [
          "Employee"
        ],
        "summary": "PUT Reactivate employee",
        "description": "Immediately reactivate employee with given id. **Authorization policy**: employee:update.\n<br/>Requires authorization. **Authorization policy**: employee:update.",
        "parameters": [
          {
            "name": "employeeId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          }
        ],
        "requestBody": {
          "description": "",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ReactivateEmployeeInput"
                  }
                ]
              }
            },
            "text/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ReactivateEmployeeInput"
                  }
                ]
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ReactivateEmployeeInput"
                  }
                ]
              }
            },
            "application/json-patch+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ReactivateEmployeeInput"
                  }
                ]
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/employees": {
      "post": {
        "tags": [
          "Employee"
        ],
        "summary": "POST Create employee",
        "description": "Create a new employee account based on provided parameters. Additional fields might be required depending on the portal configuration. **Authorization policy**: employee:create.\n<br/>Requires authorization. **Authorization policy**: employee:create.",
        "requestBody": {
          "description": "Employee input model",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/EmployeeInputCreate"
                  }
                ]
              }
            },
            "text/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/EmployeeInputCreate"
                  }
                ]
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/EmployeeInputCreate"
                  }
                ]
              }
            },
            "application/json-patch+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/EmployeeInputCreate"
                  }
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CreateEmployeeOutputOpenApiResponse"
                },
                "example": {
                  "data": {
                    "id": 614517,
                    "hiredFrom": "2016-01-01",
                    "deactivationDate": "2026-09-24",
                    "salaryIdentifier": "DKF614517",
                    "gender": "Female",
                    "jobTitle": "Bartender",
                    "employeeTypeId": 5322,
                    "primaryDepartmentId": 4967,
                    "dateTimeCreated": "2016-01-02T16:55:00Z",
                    "dateTimeModified": "2016-07-11T13:22:00Z",
                    "supervisorEmployeeId": 451874,
                    "securityGroups": [
                      8673,
                      98741
                    ],
                    "firstName": "Mindy",
                    "lastName": "Haynes",
                    "userName": "mindy.haynes@test.com",
                    "cellPhone": "1212121212",
                    "cellPhoneCountryCode": "DK",
                    "street1": "Lundsbjergvej 51",
                    "street2": "Lundsbjegvej 52",
                    "zip": "1924",
                    "phone": "2121212121",
                    "phoneCountryCode": "DK",
                    "city": "Copenhagen",
                    "email": "mindy.haynes@test.com",
                    "departments": [
                      6324,
                      4967
                    ],
                    "employeeGroups": [
                      9663,
                      8987
                    ],
                    "custom_11111": {
                      "name": "Custom Text",
                      "type": "Text",
                      "value": "This is an example text.",
                      "url": "dummyUrl"
                    },
                    "custom_22222": {
                      "name": "Custom Numeric",
                      "type": "Numeric",
                      "value": 42,
                      "url": "dummyUrl"
                    },
                    "custom_33333": {
                      "name": "Custom Boolean",
                      "type": "Boolean",
                      "value": true,
                      "url": "dummyUrl"
                    },
                    "custom_44444": {
                      "name": "Custom Date",
                      "type": "Date",
                      "value": "2013-05-10T09:37:58",
                      "url": "dummyUrl"
                    },
                    "custom_55555": {
                      "name": "Custom Dropdown",
                      "type": "Dropdown",
                      "value": "Option B",
                      "url": "dummyUrl"
                    },
                    "custom_66666": {
                      "name": "Custom Image",
                      "type": "Image",
                      "value": { },
                      "url": "http://hr/v1/employees/614517/customfields/custom_66666/value"
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateEmployeeOutputOpenApiResponse"
                },
                "example": {
                  "data": {
                    "id": 614517,
                    "hiredFrom": "2016-01-01",
                    "deactivationDate": "2026-09-24",
                    "salaryIdentifier": "DKF614517",
                    "gender": "Female",
                    "jobTitle": "Bartender",
                    "employeeTypeId": 5322,
                    "primaryDepartmentId": 4967,
                    "dateTimeCreated": "2016-01-02T16:55:00Z",
                    "dateTimeModified": "2016-07-11T13:22:00Z",
                    "supervisorEmployeeId": 451874,
                    "securityGroups": [
                      8673,
                      98741
                    ],
                    "firstName": "Mindy",
                    "lastName": "Haynes",
                    "userName": "mindy.haynes@test.com",
                    "cellPhone": "1212121212",
                    "cellPhoneCountryCode": "DK",
                    "street1": "Lundsbjergvej 51",
                    "street2": "Lundsbjegvej 52",
                    "zip": "1924",
                    "phone": "2121212121",
                    "phoneCountryCode": "DK",
                    "city": "Copenhagen",
                    "email": "mindy.haynes@test.com",
                    "departments": [
                      6324,
                      4967
                    ],
                    "employeeGroups": [
                      9663,
                      8987
                    ],
                    "custom_11111": {
                      "name": "Custom Text",
                      "type": "Text",
                      "value": "This is an example text.",
                      "url": "dummyUrl"
                    },
                    "custom_22222": {
                      "name": "Custom Numeric",
                      "type": "Numeric",
                      "value": 42,
                      "url": "dummyUrl"
                    },
                    "custom_33333": {
                      "name": "Custom Boolean",
                      "type": "Boolean",
                      "value": true,
                      "url": "dummyUrl"
                    },
                    "custom_44444": {
                      "name": "Custom Date",
                      "type": "Date",
                      "value": "2013-05-10T09:37:58",
                      "url": "dummyUrl"
                    },
                    "custom_55555": {
                      "name": "Custom Dropdown",
                      "type": "Dropdown",
                      "value": "Option B",
                      "url": "dummyUrl"
                    },
                    "custom_66666": {
                      "name": "Custom Image",
                      "type": "Image",
                      "value": { },
                      "url": "http://hr/v1/employees/614517/customfields/custom_66666/value"
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateEmployeeOutputOpenApiResponse"
                },
                "example": {
                  "data": {
                    "id": 614517,
                    "hiredFrom": "2016-01-01",
                    "deactivationDate": "2026-09-24",
                    "salaryIdentifier": "DKF614517",
                    "gender": "Female",
                    "jobTitle": "Bartender",
                    "employeeTypeId": 5322,
                    "primaryDepartmentId": 4967,
                    "dateTimeCreated": "2016-01-02T16:55:00Z",
                    "dateTimeModified": "2016-07-11T13:22:00Z",
                    "supervisorEmployeeId": 451874,
                    "securityGroups": [
                      8673,
                      98741
                    ],
                    "firstName": "Mindy",
                    "lastName": "Haynes",
                    "userName": "mindy.haynes@test.com",
                    "cellPhone": "1212121212",
                    "cellPhoneCountryCode": "DK",
                    "street1": "Lundsbjergvej 51",
                    "street2": "Lundsbjegvej 52",
                    "zip": "1924",
                    "phone": "2121212121",
                    "phoneCountryCode": "DK",
                    "city": "Copenhagen",
                    "email": "mindy.haynes@test.com",
                    "departments": [
                      6324,
                      4967
                    ],
                    "employeeGroups": [
                      9663,
                      8987
                    ],
                    "custom_11111": {
                      "name": "Custom Text",
                      "type": "Text",
                      "value": "This is an example text.",
                      "url": "dummyUrl"
                    },
                    "custom_22222": {
                      "name": "Custom Numeric",
                      "type": "Numeric",
                      "value": 42,
                      "url": "dummyUrl"
                    },
                    "custom_33333": {
                      "name": "Custom Boolean",
                      "type": "Boolean",
                      "value": true,
                      "url": "dummyUrl"
                    },
                    "custom_44444": {
                      "name": "Custom Date",
                      "type": "Date",
                      "value": "2013-05-10T09:37:58",
                      "url": "dummyUrl"
                    },
                    "custom_55555": {
                      "name": "Custom Dropdown",
                      "type": "Dropdown",
                      "value": "Option B",
                      "url": "dummyUrl"
                    },
                    "custom_66666": {
                      "name": "Custom Image",
                      "type": "Image",
                      "value": { },
                      "url": "http://hr/v1/employees/614517/customfields/custom_66666/value"
                    }
                  }
                }
              }
            }
          },
          "409": {
            "description": "Creating employee failed."
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      },
      "get": {
        "tags": [
          "Employee"
        ],
        "summary": "GET List of employees",
        "description": "Get a list of active employee profiles. **Authorization policy**: employee:read.\n<br/>Requires authorization. **Authorization policy**: employee:read.",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Return no more than \"limit\" records. Maximum of 50 records per request",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip first \"offset\" records (for paging purposes)",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "createdFrom",
            "in": "query",
            "description": "Return only employees created after specified instant. Use yyyy-mm-ddThh:mm:ssZ format",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "createdTo",
            "in": "query",
            "description": "Return only employees created before specified instant. Use yyyy-mm-ddThh:mm:ssZ format",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "modifiedFrom",
            "in": "query",
            "description": "Return only employees modified, created or deleted after specified instant. Use yyyy-mm-ddThh:mm:ssZ format",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "modifiedTo",
            "in": "query",
            "description": "Return only employees that were last modified, created or deleted before specified instant. Use yyyy-mm-ddThh:mm:ssZ",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "special",
            "in": "query",
            "description": "Indicates which of the available fields should be included for each employee",
            "schema": {
              "type": "array",
              "items": {
                "enum": [
                  "BankAccount",
                  "BirthDate",
                  "Ssn"
                ],
                "type": "string"
              }
            }
          },
          {
            "name": "includeSecurityGroups",
            "in": "query",
            "description": "Include security groups for each employee",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "searchQuery",
            "in": "query",
            "description": "Free text search query that allows to filter employees by First Name, Last Name, Email, Phone/Cell Phone Number, Salary Identifier and SSN",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeOutputPagedOpenApiResponse"
                },
                "example": {
                  "data": [
                    {
                      "hiredDate": "2016-01-01",
                      "deactivationDate": "2017-01-01",
                      "securityGroups": [
                        8673,
                        98741
                      ],
                      "supervisorId": 2345,
                      "primaryDepartmentId": 1234,
                      "id": 614517,
                      "dateTimeCreated": "2016-01-02",
                      "dateTimeModified": "2016-07-11T13:22:00Z",
                      "dateTimeDeleted": "2026-09-24T02:45:28.6189775Z",
                      "employeeTypeId": 5322,
                      "salaryIdentifier": "DKF614517",
                      "firstName": "Mindy",
                      "lastName": "Haynes",
                      "userName": "mindy.haynes@test.com",
                      "cellPhone": "+451212121212",
                      "street1": "Lundsbjergvej 51",
                      "street2": "Lundsbjegvej 52",
                      "zip": "1924",
                      "city": "Copenhagen",
                      "phone": "+452121212121",
                      "email": "mindy.haynes@test.com",
                      "departments": [
                        6324,
                        4967
                      ],
                      "employeeGroups": [
                        9663,
                        8987
                      ],
                      "bankAccount": {
                        "registrationNumber": "333",
                        "accountNumber": "1234-1234-1234-1234"
                      },
                      "birthDate": "1991-10-16",
                      "ssn": "98765432",
                      "cellPhoneCountryPrefix": "+45",
                      "cellPhoneCountryCode": "DK",
                      "phoneCountryPrefix": "+45",
                      "phoneCountryCode": "DK"
                    }
                  ],
                  "paging": {
                    "offset": 0,
                    "limit": 50,
                    "total": 1
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeOutputPagedOpenApiResponse"
                },
                "example": {
                  "data": [
                    {
                      "hiredDate": "2016-01-01",
                      "deactivationDate": "2017-01-01",
                      "securityGroups": [
                        8673,
                        98741
                      ],
                      "supervisorId": 2345,
                      "primaryDepartmentId": 1234,
                      "id": 614517,
                      "dateTimeCreated": "2016-01-02",
                      "dateTimeModified": "2016-07-11T13:22:00Z",
                      "dateTimeDeleted": "2026-09-24T02:45:28.6189775Z",
                      "employeeTypeId": 5322,
                      "salaryIdentifier": "DKF614517",
                      "firstName": "Mindy",
                      "lastName": "Haynes",
                      "userName": "mindy.haynes@test.com",
                      "cellPhone": "+451212121212",
                      "street1": "Lundsbjergvej 51",
                      "street2": "Lundsbjegvej 52",
                      "zip": "1924",
                      "city": "Copenhagen",
                      "phone": "+452121212121",
                      "email": "mindy.haynes@test.com",
                      "departments": [
                        6324,
                        4967
                      ],
                      "employeeGroups": [
                        9663,
                        8987
                      ],
                      "bankAccount": {
                        "registrationNumber": "333",
                        "accountNumber": "1234-1234-1234-1234"
                      },
                      "birthDate": "1991-10-16",
                      "ssn": "98765432",
                      "cellPhoneCountryPrefix": "+45",
                      "cellPhoneCountryCode": "DK",
                      "phoneCountryPrefix": "+45",
                      "phoneCountryCode": "DK"
                    }
                  ],
                  "paging": {
                    "offset": 0,
                    "limit": 50,
                    "total": 1
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeOutputPagedOpenApiResponse"
                },
                "example": {
                  "data": [
                    {
                      "hiredDate": "2016-01-01",
                      "deactivationDate": "2017-01-01",
                      "securityGroups": [
                        8673,
                        98741
                      ],
                      "supervisorId": 2345,
                      "primaryDepartmentId": 1234,
                      "id": 614517,
                      "dateTimeCreated": "2016-01-02",
                      "dateTimeModified": "2016-07-11T13:22:00Z",
                      "dateTimeDeleted": "2026-09-24T02:45:28.6189775Z",
                      "employeeTypeId": 5322,
                      "salaryIdentifier": "DKF614517",
                      "firstName": "Mindy",
                      "lastName": "Haynes",
                      "userName": "mindy.haynes@test.com",
                      "cellPhone": "+451212121212",
                      "street1": "Lundsbjergvej 51",
                      "street2": "Lundsbjegvej 52",
                      "zip": "1924",
                      "city": "Copenhagen",
                      "phone": "+452121212121",
                      "email": "mindy.haynes@test.com",
                      "departments": [
                        6324,
                        4967
                      ],
                      "employeeGroups": [
                        9663,
                        8987
                      ],
                      "bankAccount": {
                        "registrationNumber": "333",
                        "accountNumber": "1234-1234-1234-1234"
                      },
                      "birthDate": "1991-10-16",
                      "ssn": "98765432",
                      "cellPhoneCountryPrefix": "+45",
                      "cellPhoneCountryCode": "DK",
                      "phoneCountryPrefix": "+45",
                      "phoneCountryCode": "DK"
                    }
                  ],
                  "paging": {
                    "offset": 0,
                    "limit": 50,
                    "total": 1
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/employees/{employeeId}": {
      "put": {
        "tags": [
          "Employee"
        ],
        "summary": "PUT Update employee",
        "description": "Update employee’s details such as phone number, name, or department membership. **Authorization policy**: employee:update.\n<br/>Requires authorization. **Authorization policy**: employee:update.",
        "parameters": [
          {
            "name": "employeeId",
            "in": "path",
            "description": "Employee id",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "useValidation",
            "in": "query",
            "description": "If any required field in the employee profile is empty, require the field value in the update request.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "requestBody": {
          "description": "Employee input model",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/EmployeeInputUpdate"
                  }
                ]
              }
            },
            "text/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/EmployeeInputUpdate"
                  }
                ]
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/EmployeeInputUpdate"
                  }
                ]
              }
            },
            "application/json-patch+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/EmployeeInputUpdate"
                  }
                ]
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Employee id is invalid"
          },
          "409": {
            "description": "Updating employee failed."
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      },
      "get": {
        "tags": [
          "Employee"
        ],
        "summary": "GET Employee by id",
        "description": "Get details of an employee’s profile. **Authorization policy**: employee:read.\n<br/>Requires authorization. **Authorization policy**: employee:read.",
        "parameters": [
          {
            "name": "employeeId",
            "in": "path",
            "description": "Employee ID",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "special",
            "in": "query",
            "description": "Indicates which of the available fields should be included for each employee",
            "schema": {
              "type": "array",
              "items": {
                "enum": [
                  "BankAccount",
                  "BirthDate",
                  "Ssn"
                ],
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeDetailsOutputOpenApiResponse"
                },
                "example": {
                  "data": {
                    "id": 614517,
                    "hiredFrom": "2016-01-01",
                    "deactivationDate": "2026-09-24",
                    "salaryIdentifier": "DKF614517",
                    "gender": "Female",
                    "jobTitle": "Bartender",
                    "employeeTypeId": 5322,
                    "primaryDepartmentId": 4967,
                    "dateTimeCreated": "2016-01-02T16:55:00Z",
                    "dateTimeModified": "2016-07-11T13:22:00Z",
                    "firstName": "Mindy",
                    "lastName": "Haynes",
                    "userName": "mindy.haynes@test.com",
                    "cellPhone": "1212121212",
                    "street1": "Lundsbjergvej 51",
                    "street2": "Lundsbjegvej 52",
                    "zip": "1924",
                    "phone": "2121212121",
                    "city": "Copenhagen",
                    "email": "mindy.haynes@test.com",
                    "departments": [
                      6324,
                      4967
                    ],
                    "employeeGroups": [
                      9663,
                      8987
                    ],
                    "supervisorEmployeeId": 451874,
                    "securityGroups": [
                      8673,
                      98741
                    ],
                    "skillIds": [ ],
                    "ssn": "",
                    "cellPhoneCountryPrefix": "+45",
                    "cellPhoneCountryCode": "DK",
                    "phoneCountryPrefix": "+45",
                    "phoneCountryCode": "DK",
                    "custom_11111": {
                      "name": "Custom Text",
                      "type": "Text",
                      "value": "This is an example text.",
                      "url": "dummyUrl"
                    },
                    "custom_22222": {
                      "name": "Custom Numeric",
                      "type": "Numeric",
                      "value": 42,
                      "url": "dummyUrl"
                    },
                    "custom_33333": {
                      "name": "Custom Boolean",
                      "type": "Boolean",
                      "value": true,
                      "url": "dummyUrl"
                    },
                    "custom_44444": {
                      "name": "Custom Date",
                      "type": "Date",
                      "value": "2013-05-10T09:37:58",
                      "url": "dummyUrl"
                    },
                    "custom_55555": {
                      "name": "Custom Dropdown",
                      "type": "Dropdown",
                      "value": "Option B",
                      "url": "dummyUrl"
                    },
                    "custom_66666": {
                      "name": "Custom Image",
                      "type": "Image",
                      "value": { },
                      "url": "http://hr/v1/employees/614517/customfields/custom_66666/value"
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeDetailsOutputOpenApiResponse"
                },
                "example": {
                  "data": {
                    "id": 614517,
                    "hiredFrom": "2016-01-01",
                    "deactivationDate": "2026-09-24",
                    "salaryIdentifier": "DKF614517",
                    "gender": "Female",
                    "jobTitle": "Bartender",
                    "employeeTypeId": 5322,
                    "primaryDepartmentId": 4967,
                    "dateTimeCreated": "2016-01-02T16:55:00Z",
                    "dateTimeModified": "2016-07-11T13:22:00Z",
                    "firstName": "Mindy",
                    "lastName": "Haynes",
                    "userName": "mindy.haynes@test.com",
                    "cellPhone": "1212121212",
                    "street1": "Lundsbjergvej 51",
                    "street2": "Lundsbjegvej 52",
                    "zip": "1924",
                    "phone": "2121212121",
                    "city": "Copenhagen",
                    "email": "mindy.haynes@test.com",
                    "departments": [
                      6324,
                      4967
                    ],
                    "employeeGroups": [
                      9663,
                      8987
                    ],
                    "supervisorEmployeeId": 451874,
                    "securityGroups": [
                      8673,
                      98741
                    ],
                    "skillIds": [ ],
                    "ssn": "",
                    "cellPhoneCountryPrefix": "+45",
                    "cellPhoneCountryCode": "DK",
                    "phoneCountryPrefix": "+45",
                    "phoneCountryCode": "DK",
                    "custom_11111": {
                      "name": "Custom Text",
                      "type": "Text",
                      "value": "This is an example text.",
                      "url": "dummyUrl"
                    },
                    "custom_22222": {
                      "name": "Custom Numeric",
                      "type": "Numeric",
                      "value": 42,
                      "url": "dummyUrl"
                    },
                    "custom_33333": {
                      "name": "Custom Boolean",
                      "type": "Boolean",
                      "value": true,
                      "url": "dummyUrl"
                    },
                    "custom_44444": {
                      "name": "Custom Date",
                      "type": "Date",
                      "value": "2013-05-10T09:37:58",
                      "url": "dummyUrl"
                    },
                    "custom_55555": {
                      "name": "Custom Dropdown",
                      "type": "Dropdown",
                      "value": "Option B",
                      "url": "dummyUrl"
                    },
                    "custom_66666": {
                      "name": "Custom Image",
                      "type": "Image",
                      "value": { },
                      "url": "http://hr/v1/employees/614517/customfields/custom_66666/value"
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeDetailsOutputOpenApiResponse"
                },
                "example": {
                  "data": {
                    "id": 614517,
                    "hiredFrom": "2016-01-01",
                    "deactivationDate": "2026-09-24",
                    "salaryIdentifier": "DKF614517",
                    "gender": "Female",
                    "jobTitle": "Bartender",
                    "employeeTypeId": 5322,
                    "primaryDepartmentId": 4967,
                    "dateTimeCreated": "2016-01-02T16:55:00Z",
                    "dateTimeModified": "2016-07-11T13:22:00Z",
                    "firstName": "Mindy",
                    "lastName": "Haynes",
                    "userName": "mindy.haynes@test.com",
                    "cellPhone": "1212121212",
                    "street1": "Lundsbjergvej 51",
                    "street2": "Lundsbjegvej 52",
                    "zip": "1924",
                    "phone": "2121212121",
                    "city": "Copenhagen",
                    "email": "mindy.haynes@test.com",
                    "departments": [
                      6324,
                      4967
                    ],
                    "employeeGroups": [
                      9663,
                      8987
                    ],
                    "supervisorEmployeeId": 451874,
                    "securityGroups": [
                      8673,
                      98741
                    ],
                    "skillIds": [ ],
                    "ssn": "",
                    "cellPhoneCountryPrefix": "+45",
                    "cellPhoneCountryCode": "DK",
                    "phoneCountryPrefix": "+45",
                    "phoneCountryCode": "DK",
                    "custom_11111": {
                      "name": "Custom Text",
                      "type": "Text",
                      "value": "This is an example text.",
                      "url": "dummyUrl"
                    },
                    "custom_22222": {
                      "name": "Custom Numeric",
                      "type": "Numeric",
                      "value": 42,
                      "url": "dummyUrl"
                    },
                    "custom_33333": {
                      "name": "Custom Boolean",
                      "type": "Boolean",
                      "value": true,
                      "url": "dummyUrl"
                    },
                    "custom_44444": {
                      "name": "Custom Date",
                      "type": "Date",
                      "value": "2013-05-10T09:37:58",
                      "url": "dummyUrl"
                    },
                    "custom_55555": {
                      "name": "Custom Dropdown",
                      "type": "Dropdown",
                      "value": "Option B",
                      "url": "dummyUrl"
                    },
                    "custom_66666": {
                      "name": "Custom Image",
                      "type": "Image",
                      "value": { },
                      "url": "http://hr/v1/employees/614517/customfields/custom_66666/value"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Employee id is invalid"
          },
          "404": {
            "description": "Employee with given id doesn't exist"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/employees/deactivate/{employeeId}": {
      "put": {
        "tags": [
          "Employee"
        ],
        "summary": "PUT Deactivate employee",
        "description": "Deactivate an employee’s system access.\nIf no or past date is provided, the employee will lose access immediately, otherwise their access will be terminated on the specified date. **Authorization policy**: employee:update.\n<br/>Requires authorization. **Authorization policy**: employee:update.",
        "parameters": [
          {
            "name": "employeeId",
            "in": "path",
            "description": "Employee ID",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "description": "Deactivate employee input model",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/DeactivateEmployeeInput"
                  }
                ]
              }
            },
            "text/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/DeactivateEmployeeInput"
                  }
                ]
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/DeactivateEmployeeInput"
                  }
                ]
              }
            },
            "application/json-patch+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/DeactivateEmployeeInput"
                  }
                ]
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/employees/supervisors": {
      "get": {
        "tags": [
          "Employee"
        ],
        "summary": "GET Supervisors",
        "description": "Get a list of employees who can be assigned as supervisors. Use this endpoint to map special supervisorIDs to the user’s employeeID (supervisorID is used in GET and UPDATE endpoints when referring to the employee’s supervisor). **Authorization policy**: employee:read.\n<br/>Requires authorization. **Authorization policy**: employee:read.",
        "parameters": [
          {
            "name": "offset",
            "in": "query",
            "description": "Skip first \"offset\" records (for paging purposes)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Return no more than \"limit\" records. Maximum of 50 records per request",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SupervisorOutputPagedOpenApiResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SupervisorOutputPagedOpenApiResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SupervisorOutputPagedOpenApiResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/employees/{employeeId}/invite": {
      "post": {
        "tags": [
          "EmployeeAccountManagement"
        ],
        "summary": "POST Invite employee",
        "description": "Invite an employee by sending an invitation email with a password reset link to their username email address. **Authorization policy**: employee:create.\n<br/>Requires authorization. **Authorization policy**: employee:create.",
        "parameters": [
          {
            "name": "employeeId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Employee ID is invalid"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/employees/{employeeId}/change_username": {
      "put": {
        "tags": [
          "EmployeeAccountManagement"
        ],
        "summary": "PUT Change employee username",
        "description": "Update an employee’s username.\n\nThe endpoint triggers a username update flow: a verification email is sent to the new address automatically.\nThe new username will only show on the employee’s profile once they click the verification link in the email. **Authorization policy**: employee:update.\n<br/>Requires authorization. **Authorization policy**: employee:update.",
        "parameters": [
          {
            "name": "employeeId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "description": "",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ChangeUsernameInput"
                  }
                ]
              }
            },
            "text/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ChangeUsernameInput"
                  }
                ]
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ChangeUsernameInput"
                  }
                ]
              }
            },
            "application/json-patch+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ChangeUsernameInput"
                  }
                ]
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "409": {
            "description": "Provided username cannot be used"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/employees/{employeeId}/reset_password": {
      "put": {
        "tags": [
          "EmployeeAccountManagement"
        ],
        "summary": "PUT Reset employee password",
        "description": "Send a password reset email to an employee. **Authorization policy**: employee:update.\n<br/>Requires authorization. **Authorization policy**: employee:update.",
        "parameters": [
          {
            "name": "employeeId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "409": {
            "description": "Provided username cannot be used"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/employeegroups": {
      "post": {
        "tags": [
          "EmployeeGroups"
        ],
        "summary": "POST Create employee group",
        "description": "Create a new employee group. **Authorization policy**: employeegroup:create.\n<br/>Requires authorization. **Authorization policy**: employeegroup:create.",
        "requestBody": {
          "description": "Employee group input model",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/EmployeeGroupInput"
                  }
                ],
                "description": ""
              }
            },
            "text/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/EmployeeGroupInput"
                  }
                ],
                "description": ""
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/EmployeeGroupInput"
                  }
                ],
                "description": ""
              }
            },
            "application/json-patch+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/EmployeeGroupInput"
                  }
                ],
                "description": ""
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeGroupOutputOpenApiResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeGroupOutputOpenApiResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeGroupOutputOpenApiResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      },
      "get": {
        "tags": [
          "EmployeeGroups"
        ],
        "summary": "GET List of employee groups",
        "description": "Get a list of employee groups. **Authorization policy**: employeegroup:read.\n<br/>Requires authorization. **Authorization policy**: employeegroup:read.",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Return no more than \"limit\" records. Maximum of 50 records per request",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip first \"offset\" records (for paging purposes)",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeGroupOutputPagedOpenApiResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeGroupOutputPagedOpenApiResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeGroupOutputPagedOpenApiResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/employeegroups/{id}": {
      "get": {
        "tags": [
          "EmployeeGroups"
        ],
        "summary": "GET Employee group by id",
        "description": "Get details of an employee group. **Authorization policy**: employeegroup:read.\n<br/>Requires authorization. **Authorization policy**: employeegroup:read.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Employee group id, must be a non-negative value",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeGroupOutputOpenApiResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeGroupOutputOpenApiResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeGroupOutputOpenApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Employee group id is invalid"
          },
          "404": {
            "description": "Employee group with given id doesn't exist"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      },
      "put": {
        "tags": [
          "EmployeeGroups"
        ],
        "summary": "PUT Update employee group",
        "description": "Update details of an employee group. **Authorization policy**: employeegroup:update.\n<br/>Requires authorization. **Authorization policy**: employeegroup:update.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Employee group id, must be a non-negative value",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "description": "Employee group input model",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/EmployeeGroupInput"
                  }
                ],
                "description": ""
              }
            },
            "text/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/EmployeeGroupInput"
                  }
                ],
                "description": ""
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/EmployeeGroupInput"
                  }
                ],
                "description": ""
              }
            },
            "application/json-patch+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/EmployeeGroupInput"
                  }
                ],
                "description": ""
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Employee group id or employee group name is invalid"
          },
          "404": {
            "description": "Employee group with given id doesn't exist"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      },
      "delete": {
        "tags": [
          "EmployeeGroups"
        ],
        "summary": "DELETE Employee group",
        "description": "Delete an employee group. Use this endpoint with caution. **Authorization policy**: employeegroup:delete.\n<br/>Requires authorization. **Authorization policy**: employeegroup:delete.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Employee group id, must be a non-negative value",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Employee group id is invalid"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/employeegroups/{id}/employees": {
      "get": {
        "tags": [
          "EmployeeGroups"
        ],
        "summary": "GET Employees in employee group",
        "description": "Gets a collection of employee ids in this employee group **Authorization policy**: employee:read.\n<br/>Requires authorization. **Authorization policy**: employee:read.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Employee group id, must be a non-negative value",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeGroupEmployeeOutputIEnumerableOpenApiResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeGroupEmployeeOutputIEnumerableOpenApiResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeGroupEmployeeOutputIEnumerableOpenApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Employee group id or employee group name is invalid"
          },
          "404": {
            "description": "Employee group with given id doesn't exist"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/employees/{employeeId}/history": {
      "get": {
        "tags": [
          "EmployeeHistory"
        ],
        "summary": "GET Employee change history by employee ID",
        "description": "Get history of changes of an employee account. **Authorization policy**: employee:history.\n<br/>Requires authorization. **Authorization policy**: employee:history.",
        "parameters": [
          {
            "name": "employeeId",
            "in": "path",
            "description": "Employee ID",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "startDateTime",
            "in": "query",
            "description": "Only records with creation date equal or greater than \"startDateTime\" wil be returned. Use yyyy-mm-dd format",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "endDateTime",
            "in": "query",
            "description": "Only records with creation date equal or lower than \"endDateTime\" will be returned. Use yyyy-mm-dd format",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip first \"offset\" records (for paging purposes)",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Return no more than \"limit\" records. Maximum of 50 records per request",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeChangeHistoryOutputPagedOpenApiResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeChangeHistoryOutputPagedOpenApiResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeChangeHistoryOutputPagedOpenApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Employee ID is invalid"
          },
          "404": {
            "description": "Employee change history for given ID doesn't exist"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/employeetypes": {
      "get": {
        "tags": [
          "EmployeeType"
        ],
        "summary": "GET List of employee types",
        "description": "Get a list of available employee types. **Authorization policy**: employeetype:read.\n<br/>Requires authorization. **Authorization policy**: employeetype:read.",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeTypeOutputPagedOpenApiResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeTypeOutputPagedOpenApiResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeTypeOutputPagedOpenApiResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    },
    "/hr/v1.0/skills": {
      "get": {
        "tags": [
          "Skills"
        ],
        "summary": "GET List of skills",
        "description": "Get a list of skills on the portal which can be used for scheduled shifts or assigned to employees. **Authorization policy**: EmployeeReadSkillRead.\n<br/>Requires authorization. **Authorization policy**: EmployeeReadSkillRead.",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SkillsOutput"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SkillsOutput"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SkillsOutput"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      },
      "post": {
        "tags": [
          "Skills"
        ],
        "summary": "POST Create skill",
        "description": "Create a new skill on the portal. **Authorization policy**: skill:create.\n<br/>Requires authorization. **Authorization policy**: skill:create.",
        "requestBody": {
          "description": "Skill Input",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SkillInput"
                  }
                ]
              }
            },
            "text/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SkillInput"
                  }
                ]
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SkillInput"
                  }
                ]
              }
            },
            "application/json-patch+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SkillInput"
                  }
                ]
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      },
      "put": {
        "tags": [
          "Skills"
        ],
        "summary": "PUT Update skill",
        "description": "Update the name, description and time limited status of a skill by providing the skill id and the new values. **Authorization policy**: skill:update.\n<br/>Requires authorization. **Authorization policy**: skill:update.",
        "parameters": [
          {
            "name": "skillId",
            "in": "query",
            "description": "Skill Id",
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "description": "Skill Input",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SkillInput"
                  }
                ]
              }
            },
            "text/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SkillInput"
                  }
                ]
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SkillInput"
                  }
                ]
              }
            },
            "application/json-patch+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SkillInput"
                  }
                ]
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      },
      "delete": {
        "tags": [
          "Skills"
        ],
        "summary": "DELETE Delete skill",
        "description": "Delete a skill by providing the skill id. **Authorization policy**: skill:delete.\n<br/>Requires authorization. **Authorization policy**: skill:delete.",
        "parameters": [
          {
            "name": "skillId",
            "in": "query",
            "description": "Skill Id",
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too many requests"
          },
          "401": {
            "description": "Unauthorized."
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "BankAccountInput": {
        "type": "object",
        "properties": {
          "registrationNumber": {
            "type": "string",
            "description": "Registration number of the bank account (only used in a few countries)",
            "nullable": true
          },
          "accountNumber": {
            "type": "string",
            "description": "Bank account number",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "BankAccountOutput": {
        "type": "object",
        "properties": {
          "registrationNumber": {
            "type": "string",
            "description": "Registration number of the bank account (only used in a few countries)",
            "nullable": true
          },
          "accountNumber": {
            "type": "string",
            "description": "Bank account number",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ChangeUsernameInput": {
        "required": [
          "newUsername"
        ],
        "type": "object",
        "properties": {
          "newUsername": {
            "minLength": 1,
            "type": "string",
            "description": "New username must be a valid email address unique to the portal"
          }
        },
        "additionalProperties": false
      },
      "CreateEmployeeOutput": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "ID of the employee",
            "format": "int64"
          },
          "hiredFrom": {
            "type": "string",
            "description": "The date the employee got hired",
            "format": "date",
            "nullable": true
          },
          "deactivationDate": {
            "type": "string",
            "description": "The date the employee is no longer active",
            "format": "date",
            "nullable": true
          },
          "salaryIdentifier": {
            "type": "string",
            "description": "Salary identifier of the employee (autogenerated by default, can be edited)",
            "nullable": true
          },
          "gender": {
            "enum": [
              "Male",
              "Female"
            ],
            "type": "string",
            "description": "Gender of the employee",
            "nullable": true
          },
          "jobTitle": {
            "type": "string",
            "description": "Job title of the employee",
            "nullable": true
          },
          "employeeTypeId": {
            "type": "integer",
            "description": "ID of the Employee type associated with the employee",
            "format": "int64",
            "nullable": true
          },
          "primaryDepartmentId": {
            "type": "integer",
            "description": "ID of the primary department associated with the employee",
            "format": "int64",
            "nullable": true
          },
          "dateTimeCreated": {
            "type": "string",
            "description": "Date and time when the employee got registered in the system"
          },
          "dateTimeModified": {
            "type": "string",
            "description": "Date and time of the last edit of the employee information",
            "nullable": true
          },
          "bankAccount": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BankAccountOutput"
              }
            ],
            "description": "Bank account information of the employee",
            "nullable": true
          },
          "supervisorEmployeeId": {
            "type": "integer",
            "description": "EmployeeId of the supervisor. The Supervisor field is only available in Planday per request.",
            "format": "int64",
            "nullable": true
          },
          "supervisorId": {
            "type": "integer",
            "description": "The Supervisor Id.",
            "format": "int64",
            "nullable": true
          },
          "isSupervisor": {
            "type": "boolean",
            "description": "Is Supervisor",
            "nullable": true
          },
          "securityGroups": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "Security group ids",
            "nullable": true
          },
          "firstName": {
            "type": "string",
            "description": "First name of the employee",
            "nullable": true
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the employee",
            "nullable": true
          },
          "userName": {
            "type": "string",
            "description": "Username of the employee - must be an e-mail",
            "nullable": true
          },
          "cellPhone": {
            "type": "string",
            "description": "Cell phone number associated with the employee",
            "nullable": true
          },
          "birthDate": {
            "type": "string",
            "description": "Birth date of the employee",
            "format": "date",
            "nullable": true
          },
          "ssn": {
            "type": "string",
            "description": "Social security number of the employee",
            "nullable": true
          },
          "cellPhoneCountryCode": {
            "type": "string",
            "description": "Country code of the cell phone number. Follows ISO 3155. alpha-2 codes.",
            "nullable": true
          },
          "street1": {
            "type": "string",
            "description": "Address 1 information of the employee's address",
            "nullable": true
          },
          "street2": {
            "type": "string",
            "description": "Address 2 information of the employee's address",
            "nullable": true
          },
          "zip": {
            "type": "string",
            "description": "Zip code of the employee's address",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "description": "Phone number associated with the employee (not frequently used)",
            "nullable": true
          },
          "phoneCountryCode": {
            "type": "string",
            "description": "Country code of the phone number. Follows ISO 3155. alpha-2 codes.",
            "nullable": true
          },
          "city": {
            "type": "string",
            "description": "City of the employee's address",
            "nullable": true
          },
          "email": {
            "type": "string",
            "description": "Primary email address of the employee",
            "nullable": true
          },
          "departments": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "List of Departments associated with the employee, specified as a list of Department IDs",
            "nullable": true
          },
          "employeeGroups": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "List of Employee Groups associated with the employee, specified as a list of Employee Groups IDs",
            "nullable": true
          },
          "skillIds": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "List of Employee Skills associated with the employee, specified as a list of Employee Skill IDs",
            "nullable": true
          },
          "contractRulesRuleId": {
            "type": "integer",
            "description": "ID of the contract rule associated with the employee",
            "format": "int64",
            "nullable": true
          },
          "workHours": {
            "type": "number",
            "description": "Hours per month",
            "format": "double",
            "nullable": true
          }
        },
        "additionalProperties": { }
      },
      "CreateEmployeeOutputOpenApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CreateEmployeeOutput"
              }
            ],
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DeactivateEmployeeInput": {
        "type": "object",
        "properties": {
          "date": {
            "type": "string",
            "description": "The last date (in ISO-8601 date format 'YYYY-MM-DD') where the user is active. If {null}, the user will be deactivated immediately using the portal's current date",
            "format": "date",
            "nullable": true
          },
          "reason": {
            "type": "string",
            "description": "Value shown to users in the “Detail” field.",
            "nullable": true
          },
          "keepShifts": {
            "type": "boolean",
            "description": "True - keeps shifts assigned to the employee\n\nFalse - unassigns the employee from shifts scheduled past their deactivation date",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DeactivatedEmployeeOutput": {
        "type": "object",
        "properties": {
          "hiredDate": {
            "type": "string",
            "description": "Date when the employee got hired",
            "format": "date",
            "nullable": true
          },
          "id": {
            "type": "integer",
            "description": "Employee identifier",
            "format": "int64"
          },
          "dateTimeCreated": {
            "type": "string",
            "description": "Date and time of employee creation",
            "format": "date"
          },
          "dateTimeModified": {
            "type": "string",
            "description": "Date and time of the last employee data modification",
            "nullable": true
          },
          "dateTimeDeleted": {
            "type": "string",
            "description": "Datetime when the employee account was last deactivated",
            "nullable": true
          },
          "employeeTypeId": {
            "type": "integer",
            "description": "Identifier of the employee's employee type",
            "format": "int64",
            "nullable": true
          },
          "salaryIdentifier": {
            "type": "string",
            "description": "Salary code identifier of the employee"
          },
          "firstName": {
            "type": "string",
            "description": "First name of the employee"
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the employee"
          },
          "userName": {
            "type": "string",
            "description": "Username of the employee - must be an e-mail"
          },
          "cellPhone": {
            "type": "string",
            "description": "Cell phone number associated with the employee"
          },
          "street1": {
            "type": "string",
            "description": "Address 1 information of the employee's address"
          },
          "street2": {
            "type": "string",
            "description": "Address 2 information of the employee's address"
          },
          "zip": {
            "type": "string",
            "description": "Zip code of the employee's address"
          },
          "city": {
            "type": "string",
            "description": "City of the employee's address"
          },
          "phone": {
            "type": "string",
            "description": "Phone number associated with the employee (not frequently used)"
          },
          "email": {
            "type": "string",
            "description": "Primary email address of the employee"
          },
          "departments": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "List of Departments associated with the employee, specified as a list of Department IDs"
          },
          "employeeGroups": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "List of Employee Groups associated with the employee, specified as a list of Employee Groups IDs"
          },
          "bankAccount": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BankAccountOutput"
              }
            ],
            "description": "Bank account associated with the employee",
            "nullable": true
          },
          "birthDate": {
            "type": "string",
            "description": "Birth date of the employee",
            "format": "date",
            "nullable": true
          },
          "ssn": {
            "type": "string",
            "description": "Social security number of the employee",
            "nullable": true
          },
          "cellPhoneCountryPrefix": {
            "type": "string",
            "description": "Country prefix of the cell phone number",
            "nullable": true
          },
          "cellPhoneCountryCode": {
            "type": "string",
            "description": "Country code of the cell phone number. Follows ISO 3155. alpha-2 codes.",
            "nullable": true
          },
          "phoneCountryPrefix": {
            "type": "string",
            "description": "Country prefix of the phone number",
            "nullable": true
          },
          "phoneCountryCode": {
            "type": "string",
            "description": "Country code of the phone number. Follows ISO 3155. alpha-2 codes.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DeactivatedEmployeeOutputPagedOpenApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DeactivatedEmployeeOutput"
            }
          },
          "paging": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Paging"
              }
            ],
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DepartmentEmployeeOutput": {
        "type": "object",
        "properties": {
          "employeeId": {
            "type": "integer",
            "format": "int64"
          }
        },
        "additionalProperties": false
      },
      "DepartmentEmployeeOutputIEnumerableOpenApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DepartmentEmployeeOutput"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DepartmentInput": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "minLength": 1,
            "type": "string"
          },
          "number": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Department input model"
      },
      "DepartmentOutput": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int64"
          },
          "name": {
            "type": "string"
          },
          "number": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "DepartmentOutputOpenApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DepartmentOutput"
              }
            ],
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DepartmentOutputPagedOpenApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DepartmentOutput"
            }
          },
          "paging": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Paging"
              }
            ],
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EmployeeChangeHistoryOutput": {
        "type": "object",
        "properties": {
          "op": {
            "enum": [
              "not specified",
              "add",
              "remove",
              "replace"
            ],
            "type": "string",
            "description": "Name of the executed operation"
          },
          "path": {
            "type": "string",
            "description": "Name of the property changed"
          },
          "value": {
            "type": "string",
            "description": "Change value"
          },
          "modificationDateTime": {
            "type": "string",
            "description": "Modification date and time"
          },
          "modifiedBy": {
            "type": "integer",
            "description": "Identifier of the user who applied the change",
            "format": "int64"
          },
          "modifiedByUserGuid": {
            "type": "string",
            "description": "GUID of the user who applied the change",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EmployeeChangeHistoryOutputPagedOpenApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EmployeeChangeHistoryOutput"
            }
          },
          "paging": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Paging"
              }
            ],
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EmployeeDetailsOutput": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "ID of the employee",
            "format": "int64"
          },
          "hiredFrom": {
            "type": "string",
            "description": "The date the employee got hired",
            "format": "date",
            "nullable": true
          },
          "deactivationDate": {
            "type": "string",
            "description": "The date the employee is no longer active",
            "format": "date",
            "nullable": true
          },
          "salaryIdentifier": {
            "type": "string",
            "description": "Salary identifier of the employee"
          },
          "gender": {
            "enum": [
              "Male",
              "Female"
            ],
            "type": "string",
            "description": "Gender of the employee",
            "nullable": true
          },
          "jobTitle": {
            "type": "string",
            "description": "Job title of the employee"
          },
          "employeeTypeId": {
            "type": "integer",
            "description": "ID of the Employee type associated with the employee",
            "format": "int64",
            "nullable": true
          },
          "primaryDepartmentId": {
            "type": "integer",
            "description": "ID of the primary department associated with the employee",
            "format": "int64",
            "nullable": true
          },
          "dateTimeCreated": {
            "type": "string",
            "description": "Date and time when the employee got registered in the system"
          },
          "dateTimeModified": {
            "type": "string",
            "description": "Date and time of the last edit of the employee information",
            "nullable": true
          },
          "firstName": {
            "type": "string",
            "description": "First name of the employee"
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the employee"
          },
          "userName": {
            "type": "string",
            "description": "Username of the employee - must be an e-mail"
          },
          "cellPhone": {
            "type": "string",
            "description": "Cell phone number associated with the employee"
          },
          "street1": {
            "type": "string",
            "description": "Address 1 information of the employee's address"
          },
          "street2": {
            "type": "string",
            "description": "Address 2 information of the employee's address"
          },
          "zip": {
            "type": "string",
            "description": "Zip code of the employee's address"
          },
          "phone": {
            "type": "string",
            "description": "Phone number associated with the employee (not frequently used)"
          },
          "city": {
            "type": "string",
            "description": "City of the employee's address"
          },
          "email": {
            "type": "string",
            "description": "Primary email address of the employee"
          },
          "departments": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "List of Departments associated with the employee, specified as a list of Department IDs"
          },
          "employeeGroups": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "List of Employee Groups associated with the employee, specified as a list of Employee Groups IDs"
          },
          "supervisorEmployeeId": {
            "type": "integer",
            "description": "EmployeeId of the supervisor. The Supervisor field is only available in Planday per request.",
            "format": "int64",
            "nullable": true
          },
          "securityGroups": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "Security group ids"
          },
          "skillIds": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "Skill ids"
          },
          "supervisorId": {
            "type": "integer",
            "description": "ID of the employee’s supervisor. The value is a supervisor ID, look up the supervisor’s employee ID using the GET supervisors endpoint.",
            "format": "int64",
            "nullable": true
          },
          "contractRulesRuleId": {
            "type": "integer",
            "description": "ID of the contract rule associated with the employee",
            "format": "int64",
            "nullable": true
          },
          "workHours": {
            "type": "number",
            "description": "Hours per month",
            "format": "double",
            "nullable": true
          },
          "bankAccount": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BankAccountOutput"
              }
            ],
            "description": "Bank account associated with the employee",
            "nullable": true
          },
          "birthDate": {
            "type": "string",
            "description": "Birth date of the employee",
            "format": "date",
            "nullable": true
          },
          "ssn": {
            "type": "string",
            "description": "Social security number of the employee",
            "nullable": true
          },
          "cellPhoneCountryPrefix": {
            "type": "string",
            "description": "Country prefix of the cell phone number",
            "nullable": true
          },
          "cellPhoneCountryCode": {
            "type": "string",
            "description": "Country code of the cell phone number. Follows ISO 3155. alpha-2 codes.",
            "nullable": true
          },
          "phoneCountryPrefix": {
            "type": "string",
            "description": "Country prefix of the phone number",
            "nullable": true
          },
          "phoneCountryCode": {
            "type": "string",
            "description": "Country code of the phone number. Follows ISO 3155. alpha-2 codes.",
            "nullable": true
          }
        },
        "additionalProperties": { }
      },
      "EmployeeDetailsOutputOpenApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/EmployeeDetailsOutput"
              }
            ],
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EmployeeGroupEmployeeOutput": {
        "type": "object",
        "properties": {
          "employeeId": {
            "type": "integer",
            "description": "The unique identifier of the employee",
            "format": "int64"
          }
        },
        "additionalProperties": false
      },
      "EmployeeGroupEmployeeOutputIEnumerableOpenApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EmployeeGroupEmployeeOutput"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EmployeeGroupInput": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "minLength": 1,
            "type": "string",
            "description": "Name of the employee group"
          }
        },
        "additionalProperties": false,
        "description": ""
      },
      "EmployeeGroupOutput": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Unique ID of the employee group",
            "format": "int64"
          },
          "name": {
            "type": "string",
            "description": "Employee group name"
          }
        },
        "additionalProperties": false,
        "description": "Entity which represents an employee group"
      },
      "EmployeeGroupOutputOpenApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/EmployeeGroupOutput"
              }
            ],
            "description": "Entity which represents an employee group",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EmployeeGroupOutputPagedOpenApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EmployeeGroupOutput"
            }
          },
          "paging": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Paging"
              }
            ],
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EmployeeInputCreate": {
        "required": [
          "departments",
          "firstName",
          "lastName",
          "userName"
        ],
        "type": "object",
        "properties": {
          "firstName": {
            "minLength": 1,
            "type": "string",
            "description": "First name of the employee"
          },
          "lastName": {
            "minLength": 1,
            "type": "string",
            "description": "Last name of the employee"
          },
          "userName": {
            "minLength": 1,
            "type": "string",
            "description": "Username of the employee - must be an e-mail"
          },
          "departments": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "List of Departments associated with the employee, specified as a list of Department IDs"
          },
          "cellPhone": {
            "type": "string",
            "description": "Cell phone number associated with the employee",
            "nullable": true
          },
          "birthDate": {
            "type": "string",
            "description": "Birthdate of the employee",
            "format": "date",
            "nullable": true
          },
          "ssn": {
            "type": "string",
            "description": "Social security number of the employee",
            "nullable": true
          },
          "cellPhoneCountryCode": {
            "type": "string",
            "description": "Country code of the cell phone number. Follows ISO 3155. alpha-2 codes.",
            "nullable": true
          },
          "cellPhoneCountryId": {
            "type": "integer",
            "description": "Country code od of the cell phone number",
            "format": "int64",
            "nullable": true
          },
          "street1": {
            "type": "string",
            "description": "Address 1 information of the employee's address",
            "nullable": true
          },
          "street2": {
            "type": "string",
            "description": "Address 2 information of the employee's address",
            "nullable": true
          },
          "zip": {
            "type": "string",
            "description": "Zip code of the employee's address",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "description": "Phone number associated with the employee (not frequently used)",
            "nullable": true
          },
          "phoneCountryCode": {
            "type": "string",
            "description": "Country code of the phone number. Follows ISO 3155. alpha-2 codes.",
            "nullable": true
          },
          "phoneCountryId": {
            "type": "integer",
            "description": "Country code id of the phone number",
            "format": "int64",
            "nullable": true
          },
          "city": {
            "type": "string",
            "description": "City of the employee's address",
            "nullable": true
          },
          "email": {
            "type": "string",
            "description": "Primary email address of the employee",
            "nullable": true
          },
          "employeeGroups": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "List of Employee Groups associated with the employee, specified as a list of Employee Groups IDs",
            "nullable": true
          },
          "hiredFrom": {
            "type": "string",
            "format": "date",
            "nullable": true
          },
          "gender": {
            "enum": [
              "Male",
              "Female"
            ],
            "type": "string",
            "nullable": true
          },
          "primaryDepartmentId": {
            "type": "integer",
            "description": "Available only on portals with the field enabled.",
            "format": "int64",
            "nullable": true
          },
          "jobTitle": {
            "type": "string",
            "nullable": true
          },
          "employeeTypeId": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "bankAccount": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BankAccountInput"
              }
            ],
            "nullable": true
          },
          "salaryIdentifier": {
            "type": "string",
            "nullable": true
          },
          "contractRulesRuleId": {
            "type": "integer",
            "description": "ID of the contract rule associated with the employee",
            "format": "int64",
            "nullable": true
          },
          "workHours": {
            "type": "number",
            "description": "Hours per month",
            "format": "double",
            "nullable": true
          },
          "isSupervisor": {
            "type": "boolean",
            "description": "Setting this to true will create an Employee visible in GET Supervisors",
            "nullable": true
          },
          "supervisorId": {
            "type": "integer",
            "description": "Supervisor associated with the employee, specified as Supervisor Id",
            "format": "int64",
            "nullable": true
          },
          "skillIds": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "List of Skills associated with the employee, specified as a list of Skill IDs",
            "nullable": true
          }
        },
        "additionalProperties": { }
      },
      "EmployeeInputUpdate": {
        "type": "object",
        "properties": {
          "firstName": {
            "type": "string",
            "description": "First name of the employee",
            "nullable": true
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the employee",
            "nullable": true
          },
          "userName": {
            "type": "string",
            "description": "Use the dedicated Change Username endpoint to update this value",
            "nullable": true
          },
          "departments": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "List of Departments associated with the employee, specified as a list of Department IDs",
            "nullable": true
          },
          "cellPhone": {
            "type": "string",
            "description": "Cell phone number associated with the employee",
            "nullable": true
          },
          "birthDate": {
            "type": "string",
            "description": "Birthdate of the employee",
            "format": "date",
            "nullable": true
          },
          "ssn": {
            "type": "string",
            "description": "Social security number of the employee",
            "nullable": true
          },
          "cellPhoneCountryCode": {
            "type": "string",
            "description": "Country code of the cell phone number. Follows ISO 3155. alpha-2 codes.",
            "nullable": true
          },
          "cellPhoneCountryId": {
            "type": "integer",
            "description": "Country code od of the cell phone number",
            "format": "int64",
            "nullable": true
          },
          "street1": {
            "type": "string",
            "description": "Address 1 information of the employee's address",
            "nullable": true
          },
          "street2": {
            "type": "string",
            "description": "Address 2 information of the employee's address",
            "nullable": true
          },
          "zip": {
            "type": "string",
            "description": "Zip code of the employee's address",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "description": "Phone number associated with the employee (not frequently used)",
            "nullable": true
          },
          "phoneCountryCode": {
            "type": "string",
            "description": "Country code of the phone number. Follows ISO 3155. alpha-2 codes.",
            "nullable": true
          },
          "phoneCountryId": {
            "type": "integer",
            "description": "Country code id of the phone number",
            "format": "int64",
            "nullable": true
          },
          "city": {
            "type": "string",
            "description": "City of the employee's address",
            "nullable": true
          },
          "email": {
            "type": "string",
            "description": "Primary email address of the employee",
            "nullable": true
          },
          "employeeGroups": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "List of Employee Groups associated with the employee, specified as a list of Employee Groups IDs",
            "nullable": true
          },
          "hiredFrom": {
            "type": "string",
            "format": "date",
            "nullable": true
          },
          "gender": {
            "enum": [
              "Male",
              "Female"
            ],
            "type": "string",
            "nullable": true
          },
          "primaryDepartmentId": {
            "type": "integer",
            "description": "Available only on portals with the field enabled.",
            "format": "int64",
            "nullable": true
          },
          "jobTitle": {
            "type": "string",
            "nullable": true
          },
          "employeeTypeId": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "bankAccount": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BankAccountInput"
              }
            ],
            "nullable": true
          },
          "salaryIdentifier": {
            "type": "string",
            "nullable": true
          },
          "contractRulesRuleId": {
            "type": "integer",
            "description": "ID of the contract rule associated with the employee",
            "format": "int64",
            "nullable": true
          },
          "workHours": {
            "type": "number",
            "description": "Hours per month",
            "format": "double",
            "nullable": true
          },
          "isSupervisor": {
            "type": "boolean",
            "description": "Setting this to true will create an Employee visible in GET Supervisors",
            "nullable": true
          },
          "supervisorId": {
            "type": "integer",
            "description": "Supervisor associated with the employee, specified as Supervisor Id",
            "format": "int64",
            "nullable": true
          },
          "skillIds": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "List of Skills associated with the employee, specified as a list of Skill IDs",
            "nullable": true
          }
        },
        "additionalProperties": { }
      },
      "EmployeeOutput": {
        "type": "object",
        "properties": {
          "hiredDate": {
            "type": "string",
            "description": "Date when the employee got hired",
            "format": "date",
            "nullable": true
          },
          "deactivationDate": {
            "type": "string",
            "description": "Date when the employee got deactivated",
            "format": "date",
            "nullable": true
          },
          "securityGroups": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "List of Security Groups associated with the employee, specified as a list of Security Groups IDs"
          },
          "supervisorId": {
            "type": "integer",
            "description": "ID of the employee’s supervisor. The value is a supervisor ID, look up the supervisor’s employee ID using the GET supervisors endpoint.",
            "format": "int64",
            "nullable": true
          },
          "primaryDepartmentId": {
            "type": "integer",
            "description": "ID of the primary department associated with the employee",
            "format": "int64",
            "nullable": true
          },
          "id": {
            "type": "integer",
            "description": "Employee identifier",
            "format": "int64"
          },
          "dateTimeCreated": {
            "type": "string",
            "description": "Date and time of employee creation",
            "format": "date"
          },
          "dateTimeModified": {
            "type": "string",
            "description": "Date and time of the last employee data modification",
            "nullable": true
          },
          "dateTimeDeleted": {
            "type": "string",
            "description": "Datetime when the employee account was last deactivated",
            "nullable": true
          },
          "employeeTypeId": {
            "type": "integer",
            "description": "Identifier of the employee's employee type",
            "format": "int64",
            "nullable": true
          },
          "salaryIdentifier": {
            "type": "string",
            "description": "Salary code identifier of the employee"
          },
          "firstName": {
            "type": "string",
            "description": "First name of the employee"
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the employee"
          },
          "userName": {
            "type": "string",
            "description": "Username of the employee - must be an e-mail"
          },
          "cellPhone": {
            "type": "string",
            "description": "Cell phone number associated with the employee"
          },
          "street1": {
            "type": "string",
            "description": "Address 1 information of the employee's address"
          },
          "street2": {
            "type": "string",
            "description": "Address 2 information of the employee's address"
          },
          "zip": {
            "type": "string",
            "description": "Zip code of the employee's address"
          },
          "city": {
            "type": "string",
            "description": "City of the employee's address"
          },
          "phone": {
            "type": "string",
            "description": "Phone number associated with the employee (not frequently used)"
          },
          "email": {
            "type": "string",
            "description": "Primary email address of the employee"
          },
          "departments": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "List of Departments associated with the employee, specified as a list of Department IDs"
          },
          "employeeGroups": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "description": "List of Employee Groups associated with the employee, specified as a list of Employee Groups IDs"
          },
          "bankAccount": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BankAccountOutput"
              }
            ],
            "description": "Bank account associated with the employee",
            "nullable": true
          },
          "birthDate": {
            "type": "string",
            "description": "Birth date of the employee",
            "format": "date",
            "nullable": true
          },
          "ssn": {
            "type": "string",
            "description": "Social security number of the employee",
            "nullable": true
          },
          "cellPhoneCountryPrefix": {
            "type": "string",
            "description": "Country prefix of the cell phone number",
            "nullable": true
          },
          "cellPhoneCountryCode": {
            "type": "string",
            "description": "Country code of the cell phone number. Follows ISO 3155. alpha-2 codes.",
            "nullable": true
          },
          "phoneCountryPrefix": {
            "type": "string",
            "description": "Country prefix of the phone number",
            "nullable": true
          },
          "phoneCountryCode": {
            "type": "string",
            "description": "Country code of the phone number. Follows ISO 3155. alpha-2 codes.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EmployeeOutputPagedOpenApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EmployeeOutput"
            }
          },
          "paging": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Paging"
              }
            ],
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EmployeeTypeOutput": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int64"
          },
          "name": {
            "type": "string"
          },
          "description": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "EmployeeTypeOutputPagedOpenApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EmployeeTypeOutput"
            }
          },
          "paging": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Paging"
              }
            ],
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Paging": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "format": "int32"
          },
          "limit": {
            "type": "integer",
            "format": "int32"
          },
          "total": {
            "type": "integer",
            "format": "int64"
          }
        },
        "additionalProperties": false
      },
      "ReactivateEmployeeInput": {
        "type": "object",
        "properties": {
          "comment": {
            "type": "string",
            "nullable": true
          },
          "departments": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int64"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SkillInput": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "isTimeLimited": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "SkillsOutput": {
        "type": "object",
        "properties": {
          "skillId": {
            "type": "integer",
            "description": "Skill Id",
            "format": "int64",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "Skill Name",
            "nullable": true
          },
          "description": {
            "type": "string",
            "description": "Skill Description",
            "nullable": true
          },
          "isTimeLimited": {
            "type": "boolean",
            "description": "Is Skill Time Limited",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents the Skill Model"
      },
      "SupervisorOutput": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Supervisor Id",
            "format": "int64"
          },
          "employeeId": {
            "type": "integer",
            "description": "Employee Id",
            "format": "int64"
          },
          "name": {
            "type": "string",
            "description": "Name"
          }
        },
        "additionalProperties": false,
        "description": "Supervisor output model"
      },
      "SupervisorOutputPagedOpenApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SupervisorOutput"
            }
          },
          "paging": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Paging"
              }
            ],
            "nullable": true
          }
        },
        "additionalProperties": false
      }
    },
    "securitySchemes": {
      "Bearer": {
        "type": "http",
        "description": "Authorization header using the Bearer token scheme. Example: \"Authorization: Bearer {access_token}\"",
        "scheme": "Bearer"
      }
    }
  },
  "security": [
    {
      "Bearer": [ ]
    }
  ],
  "tags": [
    {
      "name": "Employee",
      "description": "\n### Overview\n\n\n**Methods Supported** | `GET`, `PUT`, `POST`\n--- | ---\n**Description** | Operations that can be performed on employees.\n**Scopes used** | `employee:read`, `employee:update`, `employee:create`"
    },
    {
      "name": "Departments",
      "description": "\n### Overview\n\n\n**Methods Supported** | `POST`, `GET`, `PUT`, `DELETE`\n--- | ---\n**Description** | Create, read, update and delete department information\n**Scopes used** | `department:create`, `department:read`, `department:update`, `department:delete`, `employee:read`"
    },
    {
      "name": "EmployeeGroups",
      "description": "\n### Overview\n\n\n**Methods Supported** | `POST`, `GET`, `PUT`, `DELETE`\n--- | ---\n**Description** | Create, read, update and delete employee groups\n**Scopes used** | `employeegroup:create`, `employeegroup:read`, `employeegroup:update`, `employeegroup:delete`, `employee:read`"
    },
    {
      "name": "EmployeeType",
      "description": "\n### Overview\n\n\n**Methods Supported** | `GET`\n--- | ---\n**Description** | Operations that can be performed on Employee Groups.\n**Scopes used** | `employeetype:read`"
    },
    {
      "name": "EmployeeAccountManagement",
      "description": "\n### Overview\n\n\n**Methods Supported** | `POST`, `PUT`\n--- | ---\n**Description** | Operations that can be performed on user accounts.\n**Scopes used** | `employee:create`, `employee:update`"
    },
    {
      "name": "EmployeeHistory",
      "description": "\n### Overview\n\n\n**Methods Supported** | `GET`\n--- | ---\n**Description** | Get employee change history filtered by specified parameters.\n**Scopes used** | `employee:history`"
    },
    {
      "name": "CustomPropertyAttachmentValues",
      "description": "\n### Overview\n\n\n**Methods Supported** | `POST`, `GET`, `PUT`, `DELETE`\n--- | ---\n**Description** | Support custom fields with image values. You can manage employee custom field attachments with the operations\nbelow, but remember to use the GET employee field definitions endpoint to identify the attachment custom fields.\n**Scopes used** | `employee:create`, `employee:read`, `employee:update`"
    },
    {
      "name": "Skills",
      "description": "\n### Overview\n\n\n**Methods Supported** | `GET`, `POST`, `PUT`, `DELETE`\n--- | ---\n**Description** | Create, read, update and delete skills\n**Scopes used** | `EmployeeReadSkillRead`, `skill:create`, `skill:update`, `skill:delete`"
    }
  ]
}