Skip to main content

eBAHRAPI Document

This document describes the endpoints in eBAHRAPI and their request-response models. eBAHRAPI provides the endpoints necessary to perform the operations that we can do on the organization screen within the system by integrating them into other applications.

There are 8 different controllers in the API, these are;

  • Login
  • User
  • Department
  • Group
  • Position
  • Profession
  • Property
  • Relay

NOTE: Endpoints that do not have a response example in the document do not return a value.

There is a response wrapper in the API, so all endpoint results are returned in a patient format. You can check out the format below.

Success

'''json { "Success": true, "Code": 200, "Result": null }


#### Error
'''json
{
"success": false,
"code": 200,
"message": "An error occured",
"stackTrace": "An error occured in PropertyController line:21"
}

Authentication

In order to use the endpoints in the API, a token must be obtained with a user registered in the eBA system. This user must have the Admin role. Other endpoints should then be used with this token. To get tokens, the api/Login/GetLogin '(POST)' endpoint is used. In other endpoints, we need to send this created token with the Token value in the header** section.

Request Example

http://localhost/eBAHRAPI/api/Login/GetLogin?userID=admin&password=12345

Request Query Parameters

  • userID ('string'): The eBA username.
  • password ('string'): The eBA user password.

Response Example

'''json { "Success": true, "Code": 200, "Result": { "UserID": "admin", "Token": "h7b9g1N+69N2X7VieO75Hd05UcK6YfzYTnwNIFnrJS8maKyK2pFxmrIpofVXBdeHw4CAkH8MlIDoD8VTr3FHMKC6xjUK0VLVX+7Ldaw+Gpc=" } }


## Endpoints

### api/Department/**GetDepartments** '[GET]'
---
Fetches all departments in the system.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Response Example
'''json
{
"Success": true,
"Code": 200,
"Result": [
{
"ID": "R&D",
"Description": "Research and Development",
"ManagerDepartment": "",
"Status": 1,
"Type": 0,
"ImportStatus": 1,
"ManagerUserId": "hkar"
},
{
"ID": "G2",
"Description": "Finance and Financial Affairs",
"ManagerDepartment": "G0",
"Status": 0,
"Type": 0,
"ImportStatus": 0,
"ManagerUserId": "tkir"
}
]
}

api/Department/GetActiveDepartments '[GET]'


Fetches all active departments in the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Response Example

'''json { "Success": true, "Code": 200, "Result": [ { "ID": "G0", "Description": "Department of Administrative Affairs", "ManagerDepartment": "", "Status": 1, "Type": 0, "ImportStatus": 0, "ManagerUserId": "hkar" }, { "ID": "G3", "Description": "Quality Assurance", "ManagerDepartment": "G0", "Status": 1, "Type": 0, "ImportStatus": 0, "ManagerUserId": "ykurt" } ] }


### api/Department/**GetPassiveDepartments** '[GET]'
---
It fetches all the passive departments in the system.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Response Example
'''json
{
"Success": true,
"Code": 200,
"Result": [
{
"ID": "G0",
"Description": "Department of Administrative Affairs",
"ManagerDepartment": "",
"Status": 0,
"Type": 0,
"ImportStatus": 0,
"ManagerUserId": "hkar"
},
{
"ID": "G3",
"Description": "Quality Assurance",
"ManagerDepartment": "G0",
"Status": 0,
"Type": 0,
"ImportStatus": 0,
"ManagerUserId": "ykurt"
}
]
}

api/Department/GetDepartmentDetail '[POST]'


Returns a department in the system based on the ID value.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

http://localhost/eBAHRAPI/api/Department/GetDepartmentDetail?id=G2

Request Query Parameters

  • id ('string'): The department ID value.

Response Example

'''json { "Success": true, "Code": 200, "Result": { "ID": "G2", "Description": "Finance and Financial Affairs", "ManagerDepartment": "G0", "Status": 1, "Type": 0, "ImportStatus": 0, "ManagerUserId": "tkir" } }


### api/Department/**ChangeDepartmentStatus** '[POST]'
---
Activates/deactivates a department in the system.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
http://localhost/eBAHRAPI/api/Department/ChangeDepartmentStatus?id=G2&status=true

#### Request Query Parameters
- **id** ('string'): The department ID value.
- **status** ('boolean'): The activity status of the department.

### api/Department/**AddNewDepartment** '[POST]'
---
Adds a new department with the information entered into the system.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
'''json
{
"ID": "IT",
"Description": "Information Technologies",
"ManagerDepartment": null,
"Status": true,
"Type": 0,
"ImportStatus": true,
"ManagerUserId": "tozer",
"PropertyValues": [
{
"Name": "Example",
"Value": "Example Test",
"ImportStatus": true
}
]
}

Request Body Parameters

  • ID ('string'): The Department ID value.
  • Description ('string'): A description of the department.
  • ManagerDepartment ('string'): If the department to which it will be affiliated is a parent department, 'null' must be passed.
  • Status ('boolean'): Department activity/inactivity status.
  • Type ('integer'): The type of department.
  • ImportStatus ('boolean'): The import status for the HR transfer.
  • ManagerUserId ('string'): The ID value of the user who is the department manager.
  • PropertyValues ('object[]'): Adds a custom field to the business unit to be added. 'null' can be passed.
    • Name ('string'): The name of the custom field.
    • Value ('string'): The value of the custom field.
    • ImportStatus ('boolean'): The import status of the custom field for the HR transfer.

api/Department/UpdateDepartment '[POST]'


Updates the information for an existing business unit.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

'''json { "ID": "IT", "Description": "Information Technologies", "ManagerDepartment": null, "Status": true, "Type": 0, "ImportStatus": true, "ManagerUserId": "hkar", "PropertyValues": [ { "Name": "Example", "Value": null, "ImportStatus": false } ] }


#### Request Body Parameters
* **ID** ('string'): The Department ID value.
* **Description** ('string'): A description of the department.
* **ManagerDepartment** ('string'): If the department to which it will be affiliated is a parent department, 'null' must be passed.
* **Status** ('boolean'): Department activity/inactivity status.
* **Type** ('integer'): The type of department.
* **ImportStatus** ('boolean'): The import status for the HR transfer.
* **ManagerUserId** ('string'): The ID value of the user who is the department manager.
* **PropertyValues** ('object[]'): Adds a custom field to the business unit to be added. 'null' can be passed.
* **Name** ('string'): The name of the custom field.
* **Value** ('string'): The value of the custom field.
* **ImportStatus** ('boolean'): The import status of the custom field for the HR transfer.

### api/Group/**GetGroups** '[GET]'
---
Fetches all groups in the system.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Response Example
'''json
{
"Success": true,
"Code": 200,
"Result": [
{
"ID": "everyone",
"Description": "Everyone",
"Status": 1,
"ImportStatus": 0
},
{
"ID": "UN",
"Description": "Board Members",
"Status": 0,
"ImportStatus": 0
}
]
}

api/Group/GetActiveGroups '[GET]'


Fetches all active groups in the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Response Example

'''json { "Success": true, "Code": 200, "Result": [ { "ID": "everyone", "Description": "Everyone", "Status": 1, "ImportStatus": 0 }, { "ID": "UN", "Description": "Board Members", "Status": 1, "ImportStatus": 0 } ] }


### api/Group/**GetPassiveGroups** '[GET]'
---
Fetches all passive groups in the system.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Response Example
'''json
{
"Success": true,
"Code": 200,
"Result": [
{
"ID": "everyone",
"Description": "Everyone",
"Status": 0,
"ImportStatus": 0
},
{
"ID": "UN",
"Description": "Board Members",
"Status": 0,
"ImportStatus": 0
}
]
}

api/Group/GetGroupDetail '[POST]'


Returns a group in the system based on its ID value.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

http://localhost/eBAHRAPI/api/Group/GetGroupDetail?id=everyone

Request Query Parameters

  • id ('string'): The group ID value.

Response Example

'''json { "Success": true, "Code": 200, "Result": { "ID": "everyone", "Description": "Everyone", "Status": 1, "ImportStatus": 0 } }


### api/Group/**ChangeGroupStatus** '[POST]'
---
It activates/deactivates a group in the system.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
http://localhost/eBAHRAPI/api/Group/ChangeGroupStatus?id=everyone&status=true

#### Request Query Parameters
- **id** ('string'): The group ID value.
- **status** ('boolean'): The activity status of the group.

### api/Group/**AddNewGroup** '[POST]'
---
Adds a new group with the information entered into the system.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
'''json
{
"ID": "UN",
"Description": "Board Members",
"Status": true,
"ImportStatus": true,
"PropertyValues": [
{
"Name": "Example",
"Value": "Example Test",
"ImportStatus": true
}
]
}

Request Body Parameters

  • ID ('string'): The group ID value.
  • Description ('string'): Group description.
  • Status ('boolean'): The active/passive state of the group.
  • ImportStatus ('boolean'): The import status for the HR transfer.
  • PropertyValues ('object[]'): Adds a custom field to the group to be added. 'null' can be passed.
    • Name ('string'): The name of the custom field.
    • Value ('string'): The value of the custom field.
    • ImportStatus ('boolean'): The import status of the custom field for the HR transfer.

api/Group/AddUserToGroup '[POST]'


Adds a user to a group in the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

http://localhost/eBAHRAPI/api/Group/AddUserToGroup?groupId=BM&userId=tozer

Request Query Parameters

  • groupId ('string'): The group ID value.
  • userId ('string'): The ID value of the user to be added.

api/Group/RemoveUserFromGroup '[POST]'


Removes a user from a group in the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

http://localhost/eBAHRAPI/api/Group/RemoveUserFromGroup?groupId=BM&userId=tozer

Request Query Parameters

  • groupId ('string'): The group ID value.
  • userId ('string'): The ID value of the user to be added.

api/Position/GetPositions '[GET]'


Fetches all positions in the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Response Example

'''json { "Success": true, "Code": 200, "Result": [ { "ID": "PG2001", "Description": "Finance Group Manager", "UserID": "tkir", "Status": 0, "Type": 0, "ImportedPosCode": "", "ImportStatus": 0 }, { "ID": "PG0001", "Description": "General Manager", "UserID": "hkar", "Status": 1, "Type": 0, "ImportedPosCode": "", "ImportStatus": 0 } ] }


### api/Position/**GetActivePositions** '[GET]'
---
It fetches all active positions in the system.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Response Example
'''json
{
"Success": true,
"Code": 200,
"Result": [
{
"ID": "PG2001",
"Description": "Finance Group Manager",
"UserID": "tkir",
"Status": 1,
"Type": 0,
"ImportedPosCode": "",
"ImportStatus": 0
},
{
"ID": "PG0001",
"Description": "General Manager",
"UserID": "hkar",
"Status": 1,
"Type": 0,
"ImportedPosCode": "",
"ImportStatus": 0
}
]
}

api/Position/GetPassivePositions '[GET]'


It brings all passive positions in the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Response Example

'''json { "Success": true, "Code": 200, "Result": [ { "ID": "PG1005", "Description": "Software Specialist", "UserID": "sderin", "Status": 0, "Type": 0, "ImportedPosCode": "", "ImportStatus": 0 }, { "ID": "PG1006", "Description": "Software Specialist", "UserID": "sak", "Status": 0, "Type": 0, "ImportedPosCode": "", "ImportStatus": 0 } ] }


### api/Position/**GetPositionDetail** '[POST]'
---
Returns a department in the system based on the ID value.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
http://localhost/eBAHRAPI/api/Position/GetPositionDetail?id=PG0001

#### Request Query Parameters
- **id** ('string'): The position ID value.

#### Response Example
'''json
{
"Success": true,
"Code": 200,
"Result": {
"ID": "PG0001",
"Description": "General Manager",
"UserID": "hkar",
"Status": 1,
"Type": 0,
"ImportedPosCode": "",
"ImportStatus": 0
}
}

api/Position/ChangePositionStatus '[POST]'


Activates/deactivates a position in the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

http://localhost/eBAHRAPI/api/Position/ChangePositionStatus?id=PG0001&status=true

Request Query Parameters

  • id ('string'): The position ID value.
  • status ('boolean'): The activity status of the position.

api/Position/AddNewPosition '[POST]'


Adds a new position with the information entered into the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

'''json { "ID": "PG1008", "Description": "Software Technical Lead", "UserID": "tozer", "Status": true, "Type": 0, "ImportedPosCode": "PG1008", "ImportStatus": true, "PropertyValues": [ { "Name": "Example", "Value": "Example Test", "ImportStatus": true } ] }


#### Request Body Parameters
* **ID** ('string'): The value of the position ID.
* **Description** ('string'): Position description.
* **UserId** ('string'): The ID of the user to whom the position is assigned.
* **Status** ('boolean'): The active/passive status of the position.
* **Type** ('integer'): Specifies the type of position.
ImportedPosCode** ('string'): The import code for the HR transfer of the position.
* **ImportStatus** ('boolean'): The import status for the HR transfer.
* **PropertyValues** ('object[]'): Adds a custom field to the position to be added. 'null' can be passed.
* **Name** ('string'): The name of the custom field.
* **Value** ('string'): The value of the custom field.
* **ImportStatus** ('boolean'): The import status of the custom field for the HR transfer.

### api/Position/**UpdatePosition** '[POST]'
---
Updates the information for an existing position.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
'''json
{
"ID": "PG1008",
"Description": "Software Team Leader",
"UserID": "tozer",
"Status": true,
"Type": 0,
"ImportedPosCode": "PG1008",
"ImportStatus": true,
"PropertyValues": [
{
"Name": "Example",
"Value": "Example Test",
"ImportStatus": true
}
]
}

Request Body Parameters

  • ID ('string'): The value of the position ID.
  • Description ('string'): Position description.
  • UserId ('string'): The ID of the user to whom the position is assigned.
  • Status ('boolean'): The active/passive status of the position.
  • Type ('integer'): Specifies the type of position. ImportedPosCode** ('string'): The import code for the HR transfer of the position.
  • ImportStatus ('boolean'): The import status for the HR transfer.
  • PropertyValues ('object[]'): Adds a custom field to the position to be added. 'null' can be passed.
    • Name ('string'): The name of the custom field.
    • Value ('string'): The value of the custom field.
    • ImportStatus ('boolean'): The import status of the custom field for the HR transfer.

api/Profession/GetProfessions '[GET]'


Fetches all the titles in the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Response Example

'''json { "Success": true, "Code": 200, "Result": [ { "ID": "T1", "Description": "General Manager", "Status": 1, "Type": 0, "ImportStatus": 0 }, { "ID": "T2", "Description": "Group Administrator", "Status": 0, "Type": 0, "ImportStatus": 0 } ] }


### api/Profession/**GetActiveProfessions** '[GET]'
---
Fetches all active titles in the system.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Response Example
'''json
{
"Success": true,
"Code": 200,
"Result": [
{
"ID": "T1",
"Description": "General Manager",
"Status": 1,
"Type": 0,
"ImportStatus": 0
},
{
"ID": "T2",
"Description": "Group Administrator",
"Status": 1,
"Type": 0,
"ImportStatus": 0
}
]
}

api/Profession/GetPassiveProfessions '[GET]'


Fetches all passive titles in the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Response Example

'''json { "Success": true, "Code": 200, "Result": [ { "ID": "T1", "Description": "General Manager", "Status": 0, "Type": 0, "ImportStatus": 0 }, { "ID": "T2", "Description": "Group Administrator", "Status": 0, "Type": 0, "ImportStatus": 0 } ] }


### api/Profession/**GetProfessionDetail** '[POST]'
---
Returns a title in the system based on the ID value.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
http://localhost/eBAHRAPI/api/Profession/GetProfessionDetail?id=T1

#### Request Query Parameters
- **id** ('string'): Title ID value.

#### Response Example
'''json
{
"Success": true,
"Code": 200,
"Result": {
"ID": "T1",
"Description": "General Manager",
"Status": 1,
"Type": 0,
"ImportStatus": 0
}
}

api/Profession/ChangeProfessionStatus '[POST]'


Activates/deactivates a title in the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

http://localhost/eBAHRAPI/api/Profession/ChangeProfessionStatus?id=T1&status=true

Request Query Parameters

  • id ('string'): Title ID value.
  • status ('boolean'): The activity status of the title.

api/Profession/AddNewProfession '[POST]'


Adds a new title with the information entered into the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

'''json { "ID": "T8", "Description": "Officer", "Status": true, "Type": 0, "ImportStatus": true, "PropertyValues": [ { "Name": "Example", "Value": "Example Test", "ImportStatus": true } ] }


#### Request Body Parameters
* **ID** ('string'): Title ID value.
* **Description** ('string'): Title description.
* **Status** ('boolean'): The active/passive status of the title.
* **Type** ('integer'): Specifies the type of title.
* **ImportStatus** ('boolean'): The import status for the HR transfer.
* **PropertyValues** ('object[]'): Adds a custom field to the title to be added. 'null' can be passed.
* **Name** ('string'): The name of the custom field.
* **Value** ('string'): The value of the custom field.
* **ImportStatus** ('boolean'): The import status of the custom field for the HR transfer.

### api/Profession/**UpdateProfession** '[POST]'
---
Updates the information for an existing title.

#### Headers
Content-Type: 'application/json'\\
**Token**: 'token'

#### Request Example
'''json
{
"ID": "T8",
"Description": "Senior Specialist",
"Status": true,
"Type": 0,
"ImportStatus": true,
"PropertyValues": [
{
"Name": "Example",
"Value": "Example Test",
"ImportStatus": true
}
]
}

Request Body Parameters

  • ID ('string'): Title ID value.
  • Description ('string'): Title description.
  • Status ('boolean'): The active/passive status of the title.
  • Type ('integer'): Specifies the type of title.
  • ImportStatus ('boolean'): The import status for the HR transfer.
  • PropertyValues ('object[]'): Adds a custom field to the title to be added. 'null' can be passed.
    • Name ('string'): The name of the custom field.
    • Value ('string'): The value of the custom field.
    • ImportStatus ('boolean'): The import status of the custom field for the HR transfer.

api/User/GetUsers '[GET]'


It fetches all the users in the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Response Example

'''json { "Success": true, "Code": 200, "Result": [ { "ID": "adogru", "FirstName": "Bob", "LastName": "True", "Email": "eba@eba.net", "Status": 1, "Type": 0, "ImportStatus": 0, "BirthDate": null, "EmployementStart": null, "EmployementEnd": null, "Category": 0, "Sex": 1, "Department": "G0", "Profession": "T7", "Companies": [], "Managers": [ { "Key": "default", "ID": "hkar", "Fullname": "Hussein Kar" }, { "Key": "report", "ID": "tozer", "Fullname": "Talha Özer" } ] }, { "ID": "huzal", "FirstName": "John", "LastName": "Uzal", "Email": "eba@eba.net", "Status": 0, "Type": 1, "ImportStatus": 1, "BirthDate": null, "EmployementStart": null, "EmployementEnd": null, "Category": 0, "Sex": 0, "Department": "G2", "Profession": "T4", "Companies": [], "Managers": [] } ] }


### api/User/**GetActiveUsers** '[GET]'
---
It fetches all active users in the system.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Response Example
'''json
{
"Success": true,
"Code": 200,
"Result": [
{
"ID": "adogru",
"FirstName": "Bob",
"LastName": "True",
"Email": "eba@eba.net",
"Status": 1,
"Type": 0,
"ImportStatus": 0,
"BirthDate": null,
"EmployementStart": null,
"EmployementEnd": null,
"Category": 0,
"Sex": 1,
"Department": "G0",
"Profession": "T7",
"Companies": [],
"Managers": [
{
"Key": "default",
"ID": "hkar",
"Fullname": "Hussein Kar"
},
{
"Key": "report",
"ID": "tozer",
"Fullname": "Talha Özer"
}
]
},
{
"ID": "huzal",
"FirstName": "John",
"LastName": "Uzal",
"Email": "eba@eba.net",
"Status": 1,
"Type": 1,
"ImportStatus": 1,
"BirthDate": null,
"EmployementStart": null,
"EmployementEnd": null,
"Category": 0,
"Sex": 0,
"Department": "G2",
"Profession": "T4",
"Companies": [],
"Managers": []
}
]
}

api/User/GetPassiveUsers '[GET]'


It fetches all passive users in the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Response Example

'''json { "Success": true, "Code": 200, "Result": [ { "ID": "adogru", "FirstName": "Bob", "LastName": "True", "Email": "eba@eba.net", "Status": 0, "Type": 0, "ImportStatus": 0, "BirthDate": null, "EmployementStart": null, "EmployementEnd": null, "Category": 0, "Sex": 1, "Department": "G0", "Profession": "T7", "Companies": [], "Managers": [ { "Key": "default", "ID": "hkar", "Fullname": "Hussein Kar" }, { "Key": "report", "ID": "tozer", "Fullname": "Talha Özer" } ] }, { "ID": "huzal", "FirstName": "John", "LastName": "Uzal", "Email": "eba@eba.net", "Status": 0, "Type": 1, "ImportStatus": 1, "BirthDate": null, "EmployementStart": null, "EmployementEnd": null, "Category": 0, "Sex": 0, "Department": "G2", "Profession": "T4", "Companies": [], "Managers": [] } ] }


### api/User/**GetUserDetail** '[POST]'
---
Returns a user in the system based on the ID value.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
http://localhost/eBAHRAPI/api/User/GetUserDetail?userId=tozer

#### Request Query Parameters
- **userId** ('string'): The value of the user ID.

#### Response Example
'''json
{
"Success": true,
"Code": 200,
"Result": {
"ID": "tozer",
"FirstName": "Talha",
"LastName": "Ozer",
"Email": "tozer@bimser.com",
"Status": 1,
"Type": 0,
"ImportStatus": 0,
"BirthDate": null,
"EmployementStart": null,
"EmployementEnd": null,
"Category": 0,
"Sex": 1,
"Department": "G0",
"Profession": "T4",
"Companies": [],
"Managers": []
}
}

api/User/ChangeUserStatus '[POST]'


It activates/deactivates a user in the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

http://localhost/eBAHRAPI/api/User/ChangeUserStatus?userId=tozer&status=true

Request Query Parameters

  • userId ('string'): The value of the user ID.
  • status ('boolean'): User activity status.

api/User/AddNewUser '[POST]'


Adds a new user with the information entered into the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

'''json { "ID": "ycelik", "FirstName": "Valiant", "LastName": "Steel", "Password": "12345678", "Email": "ycelik@bimser.com", "Status": true, "Type": 0, "ImportStatus": true, "BirthDate": "2000-07-31T06:22:03.551Z", "EmploymentStart": "2024-03-27T06:22:03.551Z", "EmploymentEnd": "2024-03-27T06:22:03.551Z", "Category": 0, "Sex": 0, "Company": "Bimser,Test", "Department": "G4", "Profession": "T7", "PropertyValues": [ { "Name": "Example", "Value": "this is test value", "ImportStatus": true } ], "Managers": [ { "Key": "default", "ID": "tozer" } ] }


#### Request Body Parameters
* **ID** ('string'): The value of the user ID.
* **Firstname** ('string'): The name of the user.
* **Lastname** ('string'): The user's last name.
* **Password** ('string'): The user's password.
* **Email** ('string'): The user's email address.
* **Status** ('boolean'): The user's active/inactive status.
* **Type** ('string'): The type of the user.
* **ImportStatus** ('boolean'): The import status for the HR transfer.
* **BirthDate** ('datetime'): The user's date of birth.
***EmploymentStart** ('datetime'): The date the user was hired.
* **EmploymentEnd** ('datetime'): The date the user's dismissal.
* **Category** ('integer'): Indicates whether the user will be blue or white. 0-Blue collar, 1-White collar.
* **Sex** ('integer'): The gender of the user. 0-Female, 1-Male.
* **Company** ('string'): Specifies the companies to which the user is affiliated. "," should be separated by (comma).
* **Department** ('string'): The ID of the department to which the user is connected.
* **Profession** ('string'): The ID of the title that the user has.
* **PropertyValues** ('object[]'): Adds a custom field to the business unit to be added. 'null' can be passed.
* **Name** ('string'): The name of the custom field.
* **Value** ('string'): The value of the custom field.
* **ImportStatus** ('boolean'): The import status of the custom field for the HR transfer.
* **Managers** ('object[]'): This is the field where the user's managers are entered.
* **Key** ('string'): The key value of the administrator.
* **ID** ('string'): The ID value of the admin user.

### api/User/**UpdateUser** '[POST]'
---
Updates an existing user's information.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
'''json
{
"ID": "ycelik",
"FirstName": "Valiant",
"LastName": "Steel",
"Password": "12345678",
"Email": "ycelik@bimser.com",
"Status": true,
"Type": 0,
"ImportStatus": true,
"BirthDate": "2000-07-31T06:22:03.551Z",
"EmploymentStart": "2024-03-27T06:22:03.551Z",
"EmploymentEnd": "2024-03-27T06:22:03.551Z",
"Category": 0,
"Sex": 0,
"Company": "Bimser,Test",
"Department": "G4",
"Profession": "T7",
"PropertyValues": [
{
"Name": "Example",
"Value": "this is test value",
"ImportStatus": true
}
],
"Managers": [
{
"Key": "default",
"ID": "tozer"
}
]
}

Request Body Parameters

  • ID ('string'): The value of the user ID.
  • Firstname ('string'): The name of the user.
  • Lastname ('string'): The user's last name.
  • Password ('string'): The user's password.
  • Email ('string'): The user's email address.
  • Status ('boolean'): The user's active/inactive status.
  • Type ('string'): The type of the user.
  • ImportStatus ('boolean'): The import status for the HR transfer.
  • BirthDate ('datetime'): The user's date of birth. *EmploymentStart ('datetime'): The date the user was hired.
  • EmploymentEnd ('datetime'): The date the user's dismissal.
  • Category ('integer'): Indicates whether the user will be blue or white. 0-Blue collar, 1-White collar.
  • Sex ('integer'): The gender of the user. 0-Female, 1-Male.
  • Company ('string'): Specifies the companies to which the user is affiliated. "," should be separated by (comma). If the existing values are not sent in the update process, these values are deleted from the user, and if there are different values entered, they are added to the user.
  • Department ('string'): The ID of the department to which the user is connected.
  • Profession ('string'): The ID of the title that the user has.
  • PropertyValues ('object[]'): Adds a custom field to the business unit to be added. 'null' can be passed.
    • Name ('string'): The name of the custom field.
    • Value ('string'): The value of the custom field.
    • ImportStatus ('boolean'): The import status of the custom field for the HR transfer.
  • Managers ('object[]'): This is the field where the user's managers are entered. If the existing values are not sent in the update process, these values are deleted from the user, and if there are different values entered, they are added to the user.
    • Key ('string'): The key value of the administrator.
    • ID ('string'): The ID value of the admin user.

api/Property/GetPropertyTypes '[GET]'


Fetches all feature types in the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Response Example

'''json { "Success": true, "Code": 200, "Result": [ { "Name": "DigitalSignatureCertificateIdentifier", "Caption": "Digital Signature Certificate Identifier", "Description": "Digital Signature Certificate Identifier", "Type": 0, "DefaultValue": "" }, { "Name": "ExternalUsername", "Caption": "External Username", "Description": "LDAP or custom Authentication username", "Type": 0, "DefaultValue": "" }, { "Name": "HasDigitalSignatureCertificate", "Caption": "Has Digital Signature Certificate", "Description": "Has Digital Signature Certificate", "Type": 2, "DefaultValue": "False" } ] }


### api/Property/**GetPropertyTypeDetail** '[POST]'
---
Returns a property type in the system based on the Name value.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
http://localhost/eBAHRAPI/api/Property/GetPropertyTypeDetail?name=ExternalUsername

#### Request Query Parameters
- **name** ('string'): Property type name value.

#### Response Example
'''json
{
"Success": true,
"Code": 200,
"Result": {
"Name": "ExternalUsername",
"Caption": "External Username",
"Description": "LDAP or custom Authentication username",
"Type": 0,
"DefaultValue": ""
}
}

api/Property/AddNewPropertyType '[POST]'


Adds a new feature type with the information entered into the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

'''json { "Name": "ExternalUsername", "Caption": "External Username", "Description": "External username", "Type": 0, "DefaultValue": "admin" }


#### Request Body Parameters
* **Name** ('string'): The name of the property type.
* **Caption** ('string'): Feature type title.
* **Description** ('string'): A description of the property type.
* **Type** ('integer'): Property type value type.
* **0** Text
* **1** Issue
* **2** Yes/No
* **3** Date
* **4** List
* **5** Comma Number
* **6** File
* **7** Picture
* **8** From the table
* **9** Password
* **DefaultValue** ('string'): The default value of the property type.

### api/Property/**UpdatePropertyType** '[POST]'
---
Updates the information for an existing property type.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
'''json
{
"Name": "ExternalUsername",
"Caption": "External Username",
"Description": "External username",
"Type": 0,
"DefaultValue": "admin"
}

Request Body Parameters

  • Name ('string'): The name of the property type.
  • Caption ('string'): Feature type title.
  • Description ('string'): A description of the property type.
  • Type ('integer'): Property type value type.
    • 0 Text
    • 1 Issue
    • 2 Yes/No
    • 3 Date
    • 4 List
    • 5 Comma Number
    • 6 File
    • 7 Picture
    • 8 From the table
    • 9 Password
  • DefaultValue ('string'): The default value of the property type.

api/Property/DeletePropertyType '[POST]'


Deletes a property type in the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

http://localhost/eBAHRAPI/api/Property/DeletePropertyType?name=ExternalUsername

Request Query Parameters

  • name ('string'): The name of the property type.

api/Property/AddPropertyToUser '[POST]'


Associates a feature type in the system with the user structure.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

'''json { "Name": "ExternalUsername", "Order": 0, "Required": true }


#### Request Body Parameters
* **Name** ('string'): The name of the property type that you want to associate with the user structure.
* **Order** ('integer'): The order of the property type on the user screen.
* **Required** ('boolean'): The requirement state of the property type.

### api/Property/**RemovePropertyFromUser** '[POST]'
---
Removes a feature type from the user artifact in the system.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
http://localhost/eBAHRAPI/api/Property/RemovePropertyFromUser?name=ExternalUsername

#### Request Query Parameters
- **name** ('string'): The name of the property type.

### api/Property/**AddPropertyToPosition** '[POST]'
---
It associates a feature type in the system with the position structure.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
'''json
{
"Name": "ExternalUsername",
"Order": 0,
"Required": true
}

Request Body Parameters

  • Name ('string'): The name of the property type that you want to associate with the position structure.
  • Order ('integer'): The order of the property type on the position screen.
  • Required ('boolean'): The requirement state of the property type.

api/Property/RemovePropertyFromPosition '[POST]'


Removes a feature type from the system from the position structure.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

http://localhost/eBAHRAPI/api/Property/RemovePropertyFromPosition?name=ExternalUsername

Request Query Parameters

  • name ('string'): The name of the property type.

api/Property/AddPropertyToProfession '[POST]'


It associates a type of feature in the system with the title structure.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

'''json { "Name": "ExternalUsername", "Order": 0, "Required": true }


#### Request Body Parameters
* **Name** ('string'): The name of the type of attribute that you want to associate with the title structure.
* **Order** ('integer'): The order of the property type on the title screen.
* **Required** ('boolean'): The requirement state of the property type.

### api/Property/**RemovePropertyFromProfession** '[POST]'
---
Removes a property type from the title structure in the system.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
http://localhost/eBAHRAPI/api/Property/RemovePropertyFromProfession?name=ExternalUsername

#### Request Query Parameters
- **name** ('string'): The name of the property type.

### api/Property/**AddPropertyToDepartment** '[POST]'
---
Associates a feature type in the system with the department structure.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
'''json
{
"Name": "ExternalUsername",
"Order": 0,
"Required": true
}

Request Body Parameters

  • Name ('string'): The name of the type of attribute that you want to associate with the department structure.
  • Order ('integer'): The order of the property type on the business unit screen.
  • Required ('boolean'): The requirement state of the property type.

api/Property/RemovePropertyFromDepartment '[POST]'


Removes a property type from the system from the department structure.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

http://localhost/eBAHRAPI/api/Property/RemovePropertyFromDepartment?name=ExternalUsername

Request Query Parameters

  • name ('string'): The name of the property type.

api/Property/AddPropertyToGroup '[POST]'


Associates a feature type in the system with a group structure.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

'''json { "Name": "ExternalUsername", "Order": 0, "Required": true }


#### Request Body Parameters
* **Name** ('string'): The name of the property type that you want to associate with the group structure.
* **Order** ('integer'): The order of the property type on the group screen.
* **Required** ('boolean'): The requirement state of the property type.

### api/Property/**RemovePropertyFromGroup** '[POST]'
---
Removes a feature type from the system from the group structure.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
http://localhost/eBAHRAPI/api/Property/RemovePropertyFromGroup?name=ExternalUsername

#### Request Query Parameters
- **name** ('string'): The name of the property type.

### api/Role/**GetRoles** '[GET]'
---
Fetches all the roles in the system.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Response Example
'''json
{
"Success": true,
"Code": 200,
"Result": [
{
"Name": "Admin",
"Description": "Admin"
},
{
"Name": "Default",
"Description": "Default"
},
{
"Name": "Standard",
"Description": "Standard"
}
]
}

api/Role/GetUserRoles '[GET]'


Fetches all user roles in the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Response Example

'''json { "Success": true, "Code": 200, "Result": [ { "ID": "adogru", "Description": "Ali Doğru" }, { "ID": "hkar", "Description": "Hussein Kar" }, { "ID": "kexclusive", "Description": "Kerim Seçkin" } ] }


### api/Role/**GetDepartmentRoles** '[GET]'
---
Fetches all departmental roles in the system.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Response Example
'''json
{
"Success": true,
"Code": 200,
"Result": [
{
"ID": "G2",
"Description": "Finance and Financial Affairs"
},
{
"ID": "G1",
"Description": "Production"
}
]
}

api/Role/GetPositionRoles '[GET]'


It brings all the position roles in the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Response Example

'''json { "Success": true, "Code": 200, "Result": [ { "ID": "PG1008", "Description": "Software Specialist" }, { "ID": "PG1007", "Description": "Software Technical Lead" } ] }


### api/Role/**GetGroupRoles** '[GET]'
---
Fetches all group roles in the system.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Response Example
'''json
{
"Success": true,
"Code": 200,
"Result": [
{
"ID": "everyone",
"Description": "Everyone"
},
{
"ID": "UN",
"Description": "Board Members"
}
]
}

api/Role/GetProfessionRoles '[GET]'


It fetches all title roles in the system.

Headers

Content-Type: 'application/json'\ Token: 'token'

Response Example

'''json { "Success": true, "Code": 200, "Result": [ { "ID": "T4", "Description": "Expert" } { "ID": "T5", "Description": "Manager" } ] }


### api/Role/**AddRoleToUser** '[POST]'
---
Based on the information entered, it associates a user with an authorization.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
'''json
{
"App": "eba",
"Name": "adogru",
"IncludeName": "web. Delegation",
"IncludeType": 1
}

Request Body Parameters

  • App ('string'): The name of the application to which the authorization will be applied, usually given as "eba".
  • Name ('string'): The user ID to which the authorization will be applied.
  • IncludeName ('string'): The name of the authority.
  • IncludeType ('integer'): The type of authority.
    • 1: Authority
    • 2: Authority Group

api/Role/RemoveRoleFromUser '[POST]'


Removes authorization from a user based on the information entered.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

'''json { "App": "eba", "Name": "adogru", "IncludeName": "web. Delegation", "IncludeType": 1 }


#### Request Body Parameters
* **App** ('string'): The name of the app to be deprovisioned, usually given as "eba".
* **Name** ('string'): The user ID value to deauthorize.
* **IncludeName** ('string'): The name of the authority.
* **IncludeType** ('integer'): The type of authority.
* **1**: Authority
* **2**: Authority Group

### api/Role/**AddRoleToDepartment** '[POST]'
---
It associates a department with an authority based on the information entered.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
'''json
{
"App": "eba",
"Name": "DEP001",
"IncludeName": "webLoginAsUser",
"IncludeType": 1
}

Request Body Parameters

  • App ('string'): The name of the application to which the authorization will be applied, usually given as "eba".
  • Name ('string'): The ID of the department to which the authorization will be applied.
  • IncludeName ('string'): The name of the authority.
  • IncludeType ('integer'): The type of authority.
    • 1: Authority
    • 2: Authority Group

api/Role/RemoveRoleFromDepartment '[POST]'


Removes authorization from a user based on the information entered.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

'''json { "App": "eba", "Name": "DEP001", "IncludeName": "webLoginAsUser", "IncludeType": 1 }


#### Request Body Parameters
* **App** ('string'): The name of the app to be deprovisioned, usually given as "eba".
* **Name** ('string'): The ID of the department from which the authorization will be removed.
* **IncludeName** ('string'): The name of the authority.
* **IncludeType** ('integer'): The type of authority.
* **1**: Authority
* **2**: Authority Group

### api/Role/**AddRoleToProfession** '[POST]'
---
According to the information entered, it associates a title with an authority.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
'''json
{
"App": "eba",
"Name": "T1",
"IncludeName": "managerFlowManager",
"IncludeType": 1
}

Request Body Parameters

  • App ('string'): The name of the application to which the authorization will be applied, usually given as "eba".
  • Name ('string'): The ID of the title to which the authority will be applied.
  • IncludeName ('string'): The name of the authority.
  • IncludeType ('integer'): The type of authority.
    • 1: Authority
    • 2: Authority Group

api/Role/RemoveRoleFromProfession '[POST]'


Based on the information entered, it removes the authority from a title.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

'''json { "App": "eba", "Name": "T1", "IncludeName": "managerFlowManager", "IncludeType": 1 }


#### Request Body Parameters
* **App** ('string'): The name of the app to be deprovisioned, usually given as "eba".
* **Name** ('string'): The ID of the title from which to deauthorize.
* **IncludeName** ('string'): The name of the authority.
* **IncludeType** ('integer'): The type of authority.
* **1**: Authority
* **2**: Authority Group

### api/Role/**AddRoleToPosition** '[POST]'
---
It associates a position with an authority based on the information entered.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
'''json
{
"App": "eba",
"Name": "PG1008",
"IncludeName": "designerAdmin",
"IncludeType": 2
}

Request Body Parameters

  • App ('string'): The name of the application to which the authorization will be applied, usually given as "eba".
  • Name ('string'): The position ID value to which the authorization will be applied.
  • IncludeName ('string'): The name of the authority.
  • IncludeType ('integer'): The type of authority.
    • 1: Authority
    • 2: Authority Group

api/Role/RemoveRoleFromPosition '[POST]'


Based on the information entered, it removes the authority from a position.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

'''json { "App": "eba", "Name": "PG1008", "IncludeName": "designerAdmin", "IncludeType": 2 }


#### Request Body Parameters
* **App** ('string'): The name of the app to be deprovisioned, usually given as "eba".
* **Name** ('string'): The position ID value for which the authority will be removed.
* **IncludeName** ('string'): The name of the authority.
* **IncludeType** ('integer'): The type of authority.
* **1**: Authority
* **2**: Authority Group

### api/Role/**AddRoleToGroup** '[POST]'
---
It associates a group with an authority based on the information entered.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
'''json
{
"App": "eba",
"Name": "everyone",
"IncludeName": "Default",
"IncludeType": 2
}

Request Body Parameters

  • App ('string'): The name of the application to which the authorization will be applied, usually given as "eba".
  • Name ('string'): The group ID value to which the authorization will be applied.
  • IncludeName ('string'): The name of the authority.
  • IncludeType ('integer'): The type of authority.
    • 1: Authority
    • 2: Authority Group

api/Role/RemoveRoleFromPosition '[POST]'


Removes authority from a group based on the information entered.

Headers

Content-Type: 'application/json'\ Token: 'token'

Request Example

'''json { "App": "eba", "Name": "everyone", "IncludeName": "Default", "IncludeType": 2 }


#### Request Body Parameters
* **App** ('string'): The name of the app to be deprovisioned, usually given as "eba".
* **Name** ('string'): The group ID value to deauthorize.
* **IncludeName** ('string'): The name of the authority.
* **IncludeType** ('integer'): The type of authority.
* **1**: Authority
* **2**: Authority Group

### api/Property/**GetUserRoleContents** '[POST]'
---
Specifies which global role a user belongs to.

#### Headers
Content-Type: 'application/json'\
**Token**: 'token'

#### Request Example
http://localhost/eBAHRAPI/api/Role/GetUserRoleContents?userId=hkar

#### Request Query Parameters
- **userId** ('string'): The value of the user ID.

#### Response Example
'''json
{
"Success": true,
"Code": 200,
"Result": [
{
"ID": "hkar",
"Name": "Admin",
"Description": "Hussein Kar"
}
]
}