Darwinbox API Integration

These are the list of integration use cases supported by Knit for Darwinbox API as part of the HRIS category


Activate Pending Employee

  • ID: post_activate_pending_employee
  • Operation: write
  • Entities: user, api_key, employee
  • Summary: The Activate Pending Employee API is used to activate employees in the Darwinbox system. It requires a POST request to the specified endpoint with a JSON body containing an API key and an array of user IDs. The API key is mandatory and is provided by the Darwinbox team. The user IDs are the identifiers of the employees to be activated. The request must include the 'Content-Type: application/json' header. The response includes a list of errors for any user IDs that could not be activated and a list of successfully activated employees with their corresponding employee IDs and success messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add Activity

  • ID: post_add_activity
  • Operation: write
  • Entities: activity, project
  • Summary: The Add Activity API allows users to add new activities to the Darwinbox system. It requires an API key for authentication and a list of activities to be added. Each activity must include an activity name, activity code, and associated project codes. The API returns a success message for each activity added successfully, or an error message if any issues occur.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add Attendance Punches

  • ID: post_add_attendance_punches
  • Operation: write
  • Entities: machine, employee, attendance
  • Summary: The Add Attendance Punches API allows clients to record attendance punches for employees. It requires a POST request to the specified endpoint with a JSON body containing attendance data. The attendance data is structured with employee IDs as keys and an array of punch details as values. Each punch detail includes an ID, timestamp, machine ID, and status (1 for in, 2 for out). The API responds with a status code indicating success, a message, and detailed status for each employee's punches, including a reference ID and a message indicating the result of the punch recording.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add Backdated Attendance

  • ID: post_add_backdated_attendance
  • Operation: write
  • Entities: employee, shift, attendance
  • Summary: The Add Backdated Attendance API allows users to add attendance records for employees for past dates. It requires basic authentication and an API key. The request body must include the employee number, shift date, in-time and out-time details, shift name, policy name, weekly off name, and break duration. The API returns a status indicating success or failure, an error message if applicable, and a response message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add or Update Custom Section

  • ID: post_add_or_update_custom_section
  • Operation: write
  • Entities: custom section, employee, array section
  • Summary: The Add or Update Custom Section API allows users to add or update custom sections for employees in the Darwinbox system. It requires a POST request to the specified endpoint with a mandatory API key, an array of employee details, and a section name. The request body must be in JSON format and include the API key, employee details such as Email/Employee ID, Array ID, and optional fields like temp and Delete Entire Section. The response returns a list of errors, if any, and a list of successful operations with record numbers and user emails.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add or Update Department Master

  • ID: post_add_or_update_department_master
  • Operation: write
  • Entities: cost center, department, company
  • Summary: The Add or Update Department Master API allows users to create or update department details in the Darwinbox system. It requires a POST request to the specified endpoint with a mandatory API key and department details in the request body. The department details include fields such as department name, code, email, parent company ID, business unit ID, and various head roles. The API uses basic authentication for security. Upon successful execution, it returns a status, any errors encountered, and a message indicating the success of the operation.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add or Update Employee Education Details

  • ID: post_add_or_update_employee_education_details
  • Operation: write
  • Entities: employee, education detail
  • Summary: The Add/Update Education Details API allows users to add or update the education details of employees in the Darwinbox system. The API requires a POST request to the specified endpoint with a mandatory API key and an array of employee education details. Each employee's education details include fields such as Email/Employee ID, Array ID, Education Degree, Field Of Specialisation, Institution Name, GPA Percentage, and more. The response returns a list of errors if any, and a list of successfully processed records with their respective record numbers and user emails.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add or Update Past Work Details

  • ID: post_add_or_update_past_work_details
  • Operation: write
  • Entities: past work detail, employee
  • Summary: The Add or Update Past Work Details API allows users to add or update past work details for employees in the Darwinbox system. The API requires a POST request to the specified endpoint with a mandatory API key and an array of employee details. Each employee detail includes fields such as Email/Employee ID, Array ID, Job Title, Company Name, Job Location, Job Summary, From Date, To Date, Skills, and a flag indicating if the employee is currently working there. The response includes any errors encountered and a list of successfully processed records.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add or Update Project

  • ID: post_add_or_update_project
  • Operation: write
  • Entities: project champion, project head, project
  • Summary: The Add or Update Project API allows users to add new projects to the Darwinbox system. It requires a POST request to the specified endpoint with a JSON body containing an API key and an array of project details. Each project must include fields such as project name, code, description, creation date, and other relevant details. The API returns a response indicating the success or failure of the operation, with details of any errors encountered.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add Pending Employee

  • ID: post_add_pending_employee
  • Operation: write
  • Entities: manager, employee, contact
  • Summary: The Add Pending Employee API allows you to add new employee records to the Darwinbox system. It requires a POST request to the specified endpoint with a mandatory API key and employee details in JSON format. The request must include a Content-Type header set to application/json. The employee details include mandatory fields such as Firstname, Lastname, Email, Date of Joining, Date of Birth, Employee Type, Designation Code, Office Location Work Area Code, and Gender. The response will indicate success or errors for each record processed, with a 200 OK status code.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add Project Team

  • ID: post_add_project_team
  • Operation: write
  • Entities: project team, employee, project
  • Summary: The Add Project Team API allows users to add a project team to the Darwinbox system. It requires a POST request to the specified endpoint with a JSON body containing an API key and a team array. Each team member must have an employee number, project code, effective date, and project lead identifier. The API returns a response with any errors encountered and a list of successful operations.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add Standard Documents

  • ID: post_add_standard_documents
  • Operation: write
  • Entities: document, employee, attachment
  • Summary: The Add Standard Documents API allows users to upload standard documents for employees on Darwinbox. The documents must be zipped and base64 encoded before being sent. The API requires either a user_id or employee_no to identify the employee. The type of document is mandatory and can be one of several predefined types such as 'pan', 'aadhar', 'passport', etc. If the type is 'personal', a description can be optionally provided. The attachment parameter is mandatory and should contain the base64 encoded zipped document. The API uses basic authentication and requires the Content-Type header to be set to application/json. Upon successful upload, the API returns a status of 1 and a message indicating success.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add Tags to Candidate Profile V3

  • ID: post_add_tags_to_candidate_profile_v3
  • Operation: write
  • Entities: tag, candidate
  • Summary: The 'Add Tags to Candidate Profile V3' API allows users to add preconfigured custom tags to candidate profiles. It requires a POST request to the specified endpoint with a JSON body containing the API key, a list of candidate IDs, and the custom tags to be added. The request must include the 'Content-Type: application/json' header. Upon successful execution, the API returns a response with a status code of 200, indicating that the tags were successfully added to the candidate profiles.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add or Update Business Unit Master

  • ID: post_add_update_business_unit_master
  • Operation: write
  • Entities: head, company, business unit
  • Summary: The Add or Update Business Unit Master API allows users to create or update business units in the system. It requires a POST request to the specified endpoint with a mandatory API key and an array of business unit details. The request body must include the unit name, unit code, unit address, parent company ID, cost center, and a list of business unit heads. Basic authentication is required using a username and password. Upon successful execution, the API returns a status of 1 and a message indicating successful creation of business units.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add/Update Email ID

  • ID: post_add_update_email_id
  • Operation: write
  • Entities: email id, employee, employee id
  • Summary: This API is used for updating the Email IDs and Employee IDs of the employees in the Darwinbox system. It requires an API key for authentication and can update the email ID of an employee using either the unique user ID or the employee ID. The request body must include the 'api_key' and 'email_id', while 'user_id' or 'employee_id' is required. Optional parameters include 'self_service', 'activate', and 'date_of_joining'. The response includes messages about the update status and a status code indicating the success of the operation.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add/Update Employee Email ID

  • ID: post_add_update_employee_email_id
  • Operation: write
  • Entities: employee id, employee, email id
  • Summary: This API is used for updating the Email IDs and Employee IDs of the employees in the Darwinbox system. It requires an API key for authentication and can update the email ID based on either the user ID or employee ID. The request body must include the 'api_key' and 'email_id', while 'user_id' or 'employee_id' is required. Optional parameters include 'self_service', 'activate', and 'date_of_joining'. The response includes messages about the update status and a status code indicating success.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Assign Permissions

  • ID: post_assign_permissions
  • Operation: write
  • Entities: employee number, user assignment, permission group
  • Summary: The Assign Permissions API allows users to assign specific permissions to a group of employees. It requires an API key, a permission group, user assignments, and employee numbers as input. The API uses basic authentication and expects a JSON body with the specified parameters. Upon successful execution, it returns a status code of 200 and a message indicating that the permissions have been updated for the specified users.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Background Verification - Download Form Attachments

  • ID: post_background_verification_download_form_attachments
  • Operation: read
  • Entities: candidate, attachment, file
  • Summary: The Background Verification - Download Form Attachments API allows users to download form attachments related to candidates. It requires a POST request to the specified endpoint with a mandatory API key and file key in the request body. Basic authentication is required using a username and password. The response includes a status, a message indicating the success of the operation, and the base64 encoded content of the downloaded file.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Background Verification - Fetch Candidate Details V2

  • ID: post_background_verification_fetch_candidate_details_v2
  • Operation: read
  • Entities: candidate, education detail, dependent detail
  • Summary: The Background Verification - Fetch Candidate Details V2 API is used to retrieve detailed information about a specific candidate as part of the background verification process. This API requires a POST request to the specified endpoint with mandatory parameters: 'api_key', 'bgv_id', and 'unique_id'. The 'api_key' is provided by the Darwinbox team, 'bgv_id' is a static identifier for a vendor-client instance, and 'unique_id' is the identifier for the candidate. Basic authentication is required with a username and password. The response includes a status, message, and detailed candidate data, including personal information, education, work experience, and contact details.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Background Verification - Fetch Candidate List V2

  • ID: post_background_verification_fetch_candidate_list_v2
  • Operation: read
  • Entities: candidate data, candidate, vendor
  • Summary: The Background Verification - Fetch Candidate List V2 API allows users to fetch a list of all candidates assigned to a BGV vendor. It requires a POST request to the specified endpoint with mandatory parameters including api_key, bgv_id, application_form_updated_from, application_form_updated_to, bgv_status, employee_status, and get_all_bgv_approved_list. The request must include basic authentication headers. The response includes a status code, a message, and a list of candidate data with details such as unique_id, candidate_name, employee_status, and timestamps for application form submission, creation, and updates.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Background Verification - Submit Verification Report V2

  • ID: post_background_verification_submit_verification_report_v2
  • Operation: write
  • Entities: verification report, status, comment
  • Summary: The Background Verification - Submit Verification Report V2 API is used to submit a background verification (BGV) report to Darwinbox. It requires a POST request to the endpoint with mandatory parameters including 'api_key', 'bgv_id', 'unique_id', 'action', 'bgv_status', 'bgv_report', and 'bgv_comments'. The 'action' parameter can be used to either update or complete the BGV process. The 'bgv_report' should be a base64 encoded zipped file. The API uses basic authentication with a username and password. Upon successful submission, it returns a status and message indicating the result of the operation.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create Cost Center Master

  • ID: post_create_cost_center_master
  • Operation: write
  • Entities: cost center head, cost center, employee
  • Summary: The Create Cost Center Master API allows users to create a new cost center in the Darwinbox system. It requires a POST request to the specified endpoint with a mandatory API key, cost center name, and cost center ID. Optionally, a list of cost center heads can be provided as a pipe-separated string. The request must include basic authentication headers. Upon successful creation, the API returns a status of 1 and a message confirming the creation of the cost center.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create Designation

  • ID: post_create_designation
  • Operation: write
  • Entities: department, position, designation
  • Summary: The Create Designation API allows users to create a new designation within the Darwinbox system. It requires an API key for authentication and a JSON array containing the details of the designation to be created. The request must include a Content-Type header set to application/json. The body of the request should include fields such as designation_name, job_code, department_code, and other relevant details. Upon successful creation, the API returns a status of 1 and a message indicating success.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create Location Masters

  • ID: post_create_location_masters
  • Operation: write
  • Entities: company, location
  • Summary: The Create Location Masters API allows users to add new locations to the system. It requires a POST request to the specified endpoint with a mandatory API key and an array of location details. Each location must include fields such as city_type, centre_type, location_type, city, work_area_code, and location_head. The API uses basic authentication with a username and password. Upon successful addition, it returns a success message with the work area code of the added location. If there are any errors, they will be listed in the response.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create or Update Designation Name

  • ID: post_create_or_update_designation_name
  • Operation: write
  • Entities: designation name, designation
  • Summary: This API allows the creation or updating of a designation name in the Darwinbox system. It requires a POST request to the specified endpoint with a JSON body containing an API key and an array of designation objects. Each designation object must include a 'name' field. The request must include a 'Content-Type' header set to 'application/json'. The API responds with a status code of 200 OK, and the response body includes a status indicator, any errors, and a message indicating the success of the operation.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Create or Update Position Master

  • ID: post_create_or_update_position_master
  • Operation: write
  • Entities: manager, job code, position
  • Summary: The Create or Update Position Master API allows users to create or update position details in the Darwinbox system. It requires a POST request to the specified endpoint with a mandatory API key and an array of position details. The request body must include fields such as job_code, position_id, employee_type, location, job_level, effective_from, effective_date, is_new, need_to_hire, reason, and budgeted. The API uses basic authentication for security. Upon successful execution, it returns a status, any errors encountered, and a message indicating the success of the operation.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Deactivate Active Employee

  • ID: post_deactivate_active_employee
  • Operation: write
  • Entities: deactivate type, deactivate reason, employee
  • Summary: The Deactivate Active Employee API allows you to deactivate employees in the Darwinbox system. It requires a POST request to the specified endpoint with a JSON body containing an array of employee objects. Each employee object must include the employee_id, deactivate_type (which must be 'terminated'), deactivate_reason, date_of_resignation, and date_of_exit. The API returns a response with lists of errors and successful deactivations, indicating which employees were successfully deactivated and which encountered errors.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Delete Pending Employee

  • ID: post_delete_pending_employee
  • Operation: write
  • Entities: user, employee
  • Summary: The Delete Pending Employee API allows users to delete pending employees from the system. It requires a POST request to the specified endpoint with a JSON body containing an API key and either an array of employee IDs or user IDs. The API key is mandatory, and either employee_ids or user_ids must be provided. The request must include a Content-Type header set to application/json. The response will include a status indicating success, an error array if there are any issues, and a message confirming the deletion of pending employees.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Employee Timesheet Datewise

  • ID: post_employee_timesheet_datewise
  • Operation: read
  • Entities: timesheet, employee, attendance
  • Summary: The Employee Timesheet Datewise API allows users to fetch timesheet data for employees within a specified date range. The API requires a POST request to the specified endpoint with basic authentication and an API key. The request body must include the 'api_key', 'from', and 'to' parameters, which define the API key and the date range for the data retrieval. The response includes a status code, headers describing the data fields, and the timesheet data itself, which contains details such as employee number, name, date, project, activity, claimed time, approved time, acted by, acted on, status, and source.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Fetch Advance Travel Requests

  • ID: post_fetch_advance_travel_requests
  • Operation: read
  • Entities: department, employee, advance travel request
  • Summary: The Fetch Advance Travel Requests API allows users to retrieve advance travel requests within a specified date range. The API requires an API key for authentication and accepts optional parameters 'approved_from' and 'approved_to' to define the date range. The response includes a status code, headers describing the data fields, the data itself which contains details of each travel request, and a message indicating the success of the operation.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Fetch Approved Confirmation Data

  • ID: post_fetch_approved_confirmation_data
  • Operation: read
  • Entities: probation period, department, approved confirmation, employee detail
  • Summary: The Fetch Approved Confirmation Data API is used to retrieve the approved confirmation data from the Darwinbox system. It requires a POST request to the specified endpoint with a mandatory API key and an optional last modified date. The request must include basic authentication headers. The response includes a status code, a list of column names, and the corresponding data rows. The API returns a success message upon successful data retrieval.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Fetch Attendance Report API

  • ID: post_fetch_attendance_report
  • Operation: read
  • Entities: attendance, timesheets
  • Summary: The Fetch Attendance Report API is used to retrieve attendance regularization details for employees. It requires a POST request to the specified endpoint with mandatory parameters including a list of employee IDs, and a date range (from_date and to_date). The response includes a status code and detailed attendance data for each employee, including columns such as Date, Employee ID, Name, Designation, Department, Shift details, and more.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Fetch Employee Data (Full Load) API

  • ID: post_fetch_employee_data_full_load
  • Operation: read
  • Entities: employees
  • Summary: The Fetch Employee Data (Full Load) API is used to retrieve a comprehensive list of all employees from the Darwinbox system. The request must include a 'Content-Type' header set to 'application/json'. Upon successful execution, the API returns a JSON response with a status code of 200 OK, containing a 'status' field indicating success, a 'message' field, and an 'employee_data' array. This array includes detailed information about each employee, such as their ID, name, department, designation, contact details, and employment status.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Fetch Employee Data (Single/Multiple Employees, Full Load)

  • ID: post_fetch_employee_data_single_multiple_employees_full_load
  • Operation: read
  • Entities: employee
  • Summary: The Fetch Employee Data (Single/Multiple Employees, Full Load) API allows users to retrieve detailed information about specific employees using their employee IDs. The API requires a POST request to the specified endpoint with a JSON body containing an optional list of employee IDs. The response includes a status code, a message, and an array of employee data objects, each containing detailed information about an employee such as their name, department, designation, contact details, and employment status.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Fetch Employee Global CTC Data

  • ID: post_fetch_employee_global_ctc_data
  • Operation: read
  • Entities: compensation, salary
  • Summary: The Fetch Employee Global CTC Data API allows users to retrieve the CTC data and CTC break-up data for an employee from the Global Compensation Module. The API requires a POST request to the endpoint 'https://{{subdomain}}.darwinbox.in/payrollapi/componentctcbreakup' with a JSON body containing parameters such as 'date', 'from_date', 'to_date', 'employee_no', and 'group_company'. The 'date', 'from_date', and 'to_date' are conditionally mandatory. The response includes detailed CTC data for the specified employees, including components like 'Basic', 'HRA', and variable pay components, along with metadata such as 'employee_no', 'email', 'designation', and 'department'.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Fetch Employee Location Information

  • ID: post_fetch_employee_location_information
  • Operation: read
  • Entities: location, address
  • Summary: The Fetch Organization Masters - Employee Location API is used to retrieve the office location history of employees. It requires an array of employee numbers as input. The API returns a status, column headers, employee location data, and a message indicating the success of the operation. The request must include a Content-Type header set to 'application/json'.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Fetch Global Extra Deductions API

  • ID: post_fetch_global_extra_deductions
  • Operation: read
  • Entities: deductions
  • Summary: The Fetch Global Extra Deductions API allows users to retrieve extra deductions data for an employee from the Global Compensation Module. The API requires a POST request to the specified endpoint with a JSON body containing parameters such as deduction_from, deduction_to, modified_from, modified_to, employee_id, and group_company. The response includes a status, message, and data array containing details of the extra deductions, such as employee_id, deduction_name, deduction_amount, and more.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Fetch Leave Transactions API

  • ID: post_fetch_leave_transactions
  • Operation: read
  • Entities: leave, timeoff, leave request
  • Summary: The Fetch Leave Transactions API allows for fetching leave transactions for an employee within a specified date range and approval state. The API requires an action parameter to specify the type of leave transactions to fetch. Optional parameters include date range ('from' and 'to'), employee numbers, and unpaid status. The response includes detailed information about each leave transaction, such as employee details, leave type, dates, and approval status.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Fetch Salary Register Details

  • ID: post_fetch_salary_register_details
  • Operation: read
  • Entities: salary, bank
  • Summary: The Fetch Salary Register Details API is used to retrieve the salary register details of employees for a specific month. It requires a POST request to the endpoint with the month for which the data is needed, and a list of employee IDs. The response includes a status, a message, and detailed salary register data for each employee, including columns like Employee Code, Employee Name, Joining Date, and various salary components.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Update Employee Record API

  • ID: post_update_employee_record
  • Operation: write
  • Entities: employee
  • Summary: The Update Employee Record API is used to update the details of specific employees in the Darwinbox system. It requires a POST request to the endpoint 'https://{{subdomain}}.darwinbox.in/importapi/update' with a JSON body containing an array of 'employees'. Each employee object must include an 'Email/Employee ID' and can include various other fields such as 'Firstname', 'Lastname', 'Date of Joining', etc. The API returns a response with a list of errors if any, and a list of successful updates with employee IDs and success messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Update Leave Status API

  • ID: post_update_leave_status
  • Operation: write
  • Entities: leave, time off
  • Summary: The Update Leave Status API allows the updating of the Leave transaction status to Approved, Rejected, or Revoked. It requires employee number, leave ID, and action as mandatory parameters. The manager can optionally include a message. The API uses Oauth and expects a JSON body. Upon successful execution, it returns a status, the employee number, and a message indicating the result of the operation.
  • Input Fields: Input Fields
  • Output Fields: Output Fields