Employees
List of Employees
Endpoint: GET /api/employees
Retrieve a list of employees. Optionally, include the deleted=true
parameter to show deleted employees, which can later be restored.
URL
http
GET https://portal.innfinn.com/api/employees
Optional Parameters
deleted=true
show deleted employees, e.g./api/employees?deleted=true
Response Schema
id
(string) Employee ID.status
(string) Employee status (e.g.,New
,Probation
,Active
,Offboarding
,Terminated
,Unknown
).department_id
(string) Department ID.first_name
(string) Employee's first name.last_name
(string) Employee's last name.full_name
(string) Full employee name (as per Emirates ID).emirates_id
(string) Emirates ID in the format784-YYYY-NNNNNNN-X
.emirates_id_expire_date
(string) Expiry date of the Emirates ID (e.g.,2026-09-01
).contract_start_date
(string) Start date of the employee’s contract (e.g.,2023-09-01
).contract_end_date
(string) End date of the employee’s contract (e.g.,2027-09-01
).contract_salary_amount
(integer) Contract salary amount in the smallest currency unit (e.g., cents, fils).contract_currency
(string) Currency code for the contract salary (e.g.,AED
).mohre_id
(string) Ministry of Human Resources (MOHRE) IDbank_code
(string) Bank routing code (e.g.,302620122
for Emirates NBD).bank_name
(string) Bank name.bank_iban
(string) Bank IBAN number.allow_advances
(boolean) Whether advances are allowed.last_advance_at
(string) Date and time of the last advance, if applicable.enrolled_at
(string) Date and time the employee was enrolled.created_at
(string) Date and time the employee was created.deleted_at
(string) Date and time the employee was deleted, if applicable.
Example Response
json
{
"response": [
{
"id": "21090700330100",
"status": "New",
"department_id": "24090913158788",
"first_name": "Khalid",
"last_name": "Al Habtoor",
"full_name": "Khalid Al Habtoor",
"emirates_id": "784-1980-7589346-4",
"emirates_id_expire_date": "2024-09-01",
"contract_start_date": "2021-07-01",
"contract_end_date": "2024-07-01",
"contract_salary_amount": 1500000,
"contract_currency": "AED",
"mohre_id": "128734325231",
"bank_code": "203320101",
"bank_name": "Mashreq Bank",
"bank_iban": "AE07 0331 2345 6789 0123 456",
"allow_advances": true,
"last_advance_at": "2024-09-09 21:56:57",
"enrolled_at": "2021-06-30",
"created_at": "2024-09-06 11:26:16",
"deleted_at": null
},
{
"id": "24090509341103",
"status": "Active",
"department_id": "24090913152730",
"first_name": "Zainab",
"last_name": "Ibrahim",
"full_name": "Zainab Ibrahim",
"emirates_id": "784-1993-7788990-7",
"emirates_id_expire_date": "2025-12-31",
"contract_start_date": "2020-03-15",
"contract_end_date": "2025-03-15",
"contract_salary_amount": 850000,
"contract_currency": "AED",
"mohre_id": "198374612093",
"bank_code": "302620122",
"bank_name": "National Bank of Dubai (Emirates NBD)",
"bank_iban": "AE07 0331 9876 5432 1098 765",
"allow_advances": true,
"last_advance_at": "2024-09-10 00:56:14",
"enrolled_at": "2020-03-14",
"created_at": "2024-09-06 11:26:26",
"deleted_at": null
}
]
}
Employee Info
Endpoint: GET /api/employee/{id}
Retrieve detailed information about a specific employee by their ID.
URL
http
GET https://portal.innfinn.com/api/employee/{id}
Example Response
json
{
"response": {
"id": "24090909343199",
"status": "Active",
"department_id": "24090913158788",
"first_name": "Mohammed",
"last_name": "Al Shaikh",
"full_name": "Mohammed Al Shaikh",
"emirates_id": "784-1990-9876543-1",
"emirates_id_expire_date": "2025-01-31",
"contract_start_date": "2023-02-01",
"contract_end_date": "2026-02-01",
"contract_salary_amount": 2500000,
"contract_currency": "AED",
"mohre_id": "145987632109",
"bank_code": "603510102",
"bank_name": "National Bank of Abu Dhabi",
"bank_iban": "AE07 0331 1122 3344 5566 778",
"allow_advances": true,
"last_advance_at": null,
"enrolled_at": "2023-01-31",
"created_at": "2024-09-09 03:09:34",
"deleted_at": null
}
}
Create Employee
Endpoint: POST /api/employee
Create a new employee.
URL
http
POST https://portal.innfinn.com/api/employee
Required Fields
department_id
(string) Department ID.first_name
(string) Employee's first name.last_name
(string) Employee's last name.full_name
(string) Full employee name (as per Emirates ID).allow_advances
(boolean) Whether advances are allowed.
Optional Fields
status
(string, case-insensitive) Employee status (e.g.,New
,Probation
,Active
,Offboarding
,Terminated
,Unknown
).emirates_id
(string) Emirates ID in the format784-YYYY-NNNNNNN-X
.emirates_id_expire_date
(string) Expiry date of the Emirates ID (e.g.,2024-09-01
).contract_start_date
(string) Start date of the employee’s contract (e.g.,2024-09-01
).contract_end_date
(string) End date of the employee’s contract (e.g.,2025-09-01
).contract_salary_amount
(string) Contract salary amount in the smallest currency unit (e.g., cents, fils).contract_currency
(string) Currency code for the contract salary (e.g.,AED
).mohre_id
(string) Ministry of Human Resources (MOHRE) ID.bank_code
(string) Bank routing code (e.g.,302620122
for Emirates NBD).bank_iban
(string) Bank IBAN number.
Note on status
If the status
field is not provided, the default status will be set to Unknown
.
Note on allow_advances
Can only be true
when status = "Active"
If set to true
with any other status, the API returns an error.
Example Request
json
{
"status": "Active",
"department_id": "24090913158788",
"first_name": "Ali",
"last_name": "Al Amri",
"full_name": "Ali Al Amri",
"emirates_id": "784-1995-1234567-8",
"emirates_id_expire_date": "2025-12-31",
"contract_start_date": "2024-01-01",
"contract_end_date": "2026-01-01",
"contract_salary_amount": 2000000,
"contract_currency": "AED",
"mohre_id": "123456789012",
"bank_code": "302620122",
"bank_iban": "AE07 0331 1234 5678 9012 345",
"allow_advances": true
}
Example Response
json
{
"response": {
"success": true,
"id": "24090909343199"
}
}
Edit Employee
Endpoint: POST /api/employee/{id}
Update the information of an employee by their ID. All fields are optional unless specified as required.
URL
http
POST https://portal.innfinn.com/api/employee/{id}
Required Fields
department_id
(string) Department ID.first_name
(string) Employee's first name.last_name
(string) Employee's last name.full_name
(string) Full employee name (as per Emirates ID).allow_advances
(boolean) Whether advances are allowed.
Optional Fields
status
(string, case-insensitive) Employee status (e.g.,New
,Probation
,Active
,Offboarding
,Terminated
,Unknown
).emirates_id
(string) Emirates ID in the format784-YYYY-NNNNNNN-X
.emirates_id_expire_date
(string) Expiry date of the Emirates ID (e.g.,2024-09-01
).contract_start_date
(string) Start date of the employee’s contract (e.g.,2024-09-01
).contract_end_date
(string) End date of the employee’s contract (e.g.,2025-09-01
).contract_salary_amount
(string) Contract salary amount in the smallest currency unit (e.g., cents, fils).contract_currency
(string) Currency code for the contract salary (e.g.,AED
).mohre_id
(string) Ministry of Human Resources (MOHRE) ID.bank_code
(string) Bank routing code (e.g.,302620122
for Emirates NBD).bank_iban
(string) Bank IBAN number.
Note on status
If the status
field is not provided, the default status will be set to Unknown
.
Note on allow_advances
Can only be true
when status = "Active"
If set to true
with any other status, the API returns an error.
Example Request
json
{
"status": "Active",
"department_id": "24090913158788",
"first_name": "Ali",
"last_name": "Al Amri",
"full_name": "Ali Al Amri",
"emirates_id": "784-1995-1234567-8",
"emirates_id_expire_date": "2025-12-31",
"contract_start_date": "2024-01-01",
"contract_end_date": "2026-01-01",
"contract_salary_amount": 2000000,
"contract_currency": "AED",
"mohre_id": "123456789012",
"bank_code": "302620122",
"bank_iban": "AE07 0331 1234 5678 9012 345",
"allow_advances": true
}
Example Response
json
{
"response": {
"success": true,
"id": "24090909343199"
}
}
Delete Employee
Endpoint: DELETE /api/employee/{id}
Delete an employee by their ID.
URL
http
DELETE https://portal.innfinn.com/api/employee/{id}
Example Response
json
{
"response": {
"success": true,
"id": "24090909343199"
}
}
Restore Employee
Endpoint: GET /api/employee/{id}/restore
Restore a previously deleted employee by their ID.
URL
http
GET https://portal.innfinn.com/api/employee/{id}/restore
Example Response
json
{
"response": {
"success": true,
"id": "24090909343199"
}
}