Keka ATS API Integration

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


Get Active or Archived Candidates for a Job

  • ID: get_active_or_archived_candidates_for_a_job
  • Operation: read
  • Entities: job, candidate, job application
  • Summary: This API endpoint retrieves active or archived candidates for a specified job. It requires the job ID as a path parameter and allows filtering by archived status, last modified date, page number, and page size through query parameters. The response includes detailed information about each candidate, such as personal details, education, experience, skills, and job application details. The response is returned in JSON format.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get All Preboarding Candidates

  • ID: get_all_preboarding_candidates
  • Operation: read
  • Entities: candidate
  • Summary: This API endpoint retrieves all preboarding candidates from the specified company and environment. It supports filtering candidates by various query parameters such as candidateIds, stage, status, and lastModified date. Pagination is supported through pageNumber and pageSize parameters, with a default page size of 100 and a maximum of 200. The response includes a list of candidates with details such as id, firstName, lastName, email, job title, and more, along with pagination information like totalItems and totalPages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get All Published, Confidential and Archived Jobs

  • ID: get_all_published_confidential_and_archived_jobs
  • Operation: read
  • Entities: job, hiring team, department
  • Summary: This API endpoint retrieves all published, confidential, and archived jobs from the specified company and environment. It supports filtering by last modified date, job status, job board identifier, and pagination through page number and page size. The response includes detailed information about each job, such as its ID, title, description, number of openings, department name, job type, referral status, requisition details, internal employee eligibility, organizational job ID, job locations, hiring team, career portal URL, target hire date, status, creation and publication dates, experience requirements, and custom fields.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Available Job Boards

  • ID: get_available_job_boards
  • Operation: read
  • Entities: job board
  • Summary: This API endpoint retrieves a list of all job boards that are currently available. It uses the GET method and requires an 'accept' header with the value 'application/json'. The response is an array of objects, each representing a job board with properties such as 'jobBoardName', 'jobBoardIdentifier', and 'isActive'. The response can return various status codes including 200 for success, 401 for unauthorized access, 403 for forbidden access, and 500 for server errors.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Interview Details for a Job and Candidate

  • ID: get_interview_details_for_a_job_and_candidate
  • Operation: read
  • Entities: job, candidate, interview
  • Summary: This API endpoint retrieves the interview details scheduled and completed for a specific job and candidate. It requires the candidateId and jobId as path parameters. The API supports pagination through the optional query parameters pageNumber and pageSize, where pageSize defaults to 100 and has a maximum of 200. The response includes an array of interview objects, each containing details such as interview date, start and end times, time zone, scheduled by, scheduled date, interview type, stage ID, and panel members.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Job Application Fields

  • ID: get_job_application_fields
  • Operation: read
  • Entities: job, job application, application field
  • Summary: This API endpoint retrieves the application fields for a specific job identified by the jobId path parameter. The request is made using the GET method and requires the 'accept' header to specify the response format as 'application/json'. The response includes an array of field objects, each containing details such as fieldName, id, required status, fieldType, and fieldOptions. The fieldType is an integer with possible values ranging from 0 to 9, and fieldOptions is an array of objects with id and value properties.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Scorecards for a Job Candidate

  • ID: get_scorecards_for_a_job_candidate
  • Operation: read
  • Entities: job, candidate, scorecard
  • Summary: This API endpoint retrieves the scorecards submitted for a specified job candidate. It requires the 'candidateId' and 'jobId' as path parameters. Optional query parameters include 'pageNumber' and 'pageSize' to paginate the results. The response is a JSON array of scorecards, each containing details such as 'id', 'jobId', 'candidateId', 'stageId', 'interviewId', 'overallFeedbackDecision', 'overallComments', 'feedbackSubmittedByName', and 'sections' with detailed feedback.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Add Preboarding Candidate

  • ID: post_add_preboarding_candidate
  • Operation: write
  • Entities: preboarding candidate, department, work location
  • Summary: This API endpoint is used to add a preboarding candidate to the system. It requires a POST request to the specified URL with headers 'accept' and 'content-type' set to 'application/json' and 'application/*+json' respectively. The request body should contain details of the candidate such as id, firstName, middleName, lastName, email, countryCode, mobileNumber, jobtitle, gender, department, workLocation, expectedDateOfJoining, stage, and status. The response will be a string indicating success if the operation is successful, or an error code if unauthorized or forbidden.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Post Candidate to Job

  • ID: post_candidate_to_job
  • Operation: write
  • Entities: job, candidate, field
  • Summary: This API endpoint allows posting a candidate to a specified job. It requires the jobId as a path parameter and accepts a JSON body with candidate details such as firstName, email, phone, currentSalary, expectedSalary, gender, workExperience, fieldIdentifier, and multiChoiceFieldIdentifier. The response can be a success message or an error message with details in case of a bad request, unauthorized access, forbidden access, or server error.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Update Candidate Notes

  • ID: post_update_candidate_notes
  • Operation: write
  • Entities: candidate, note, tag
  • Summary: This API endpoint is used to update notes for a candidate associated with a specific job. It requires the candidateId and jobId as path parameters. The request body can include comments and tags for the candidate, both of which are optional. The API returns a success message upon successful update, or detailed error information if the request fails.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Update Candidate Information

  • ID: put_update_candidate_information
  • Operation: write
  • Entities: job, candidate
  • Summary: This API endpoint is used to update the information of a candidate for a specific job. It requires the candidateId and jobId as path parameters. The request must include headers specifying the acceptable response media type and the content type of the request body. The request body can be any JSON object. On success, it returns a string message. In case of a bad request, it returns a detailed error object with status, succeeded flag, message, errors, and errorCode. Other possible responses include 401 Unauthorized, 403 Forbidden, and 500 Server Error.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Update Preboarding Candidate

  • ID: put_update_preboarding_candidate
  • Operation: write
  • Entities: preboarding candidate, department, work location
  • Summary: This API endpoint is used to update the details of a preboarding candidate. The request requires the candidate's unique ID as a path parameter. The request body can include optional fields such as firstName, middleName, lastName, jobtitle, gender, department, workLocation, expectedDateOfJoining, and stage. The response returns a boolean indicating the success of the update operation. The API requires 'accept' and 'content-type' headers to be set to 'application/json' and 'application/*+json' respectively.
  • Input Fields: Input Fields
  • Output Fields: Output Fields