SmartRecruiters ATS API Integration Vol.1

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


Create a New Candidate and Assign to a Job

  • ID: create_a_new_application
  • Operation: write
  • Entities:
  • Summary: This API endpoint allows you to create a new candidate and assign them to a specific job using the job ID. It is crucial to track the candidate's source accurately by including the sourceDetails object in the request body. The request requires the candidate's first name, last name, and email, and optionally includes additional details such as phone number, location, web profiles, tags, education, experience, and source details. The response returns the created candidate's details, including their ID, name, contact information, location, web profiles, education, experience, and job assignments. The API also handles various error responses for invalid source details, permission issues, and non-existent source types.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Share Message with Users and Teams

  • ID: create_candidate_note
  • Operation: write
  • Entities:
  • Summary: This API endpoint allows users to share messages with specific users, hiring teams, or everyone in a company. The request body requires a 'content' field for the message text, and optional fields such as 'correlationId' for additional ID reference, and 'shareWith' for specifying visibility options. The 'shareWith' object can include 'users' (an array of user IDs), 'hiringTeamOf' (an array of job IDs), 'everyone' (a boolean to share with all company members), and 'openNote' (a boolean to share with those having access to tagged candidates). The response returns a 201 status with an 'id' and 'shareRequired' flag if successful, or a 400 status with error codes for various issues such as invalid visibility options or non-existent users.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Delete Candidate

  • ID: delete_candidate
  • Operation: write
  • Entities: candidate
  • Summary: The Delete Candidate API allows you to delete a candidate from the system using their unique identifier. The API requires the candidate's ID as a path parameter. The request should include an 'accept' header specifying 'application/json'. A successful deletion returns a 204 status code with no content. If the candidate access is denied, a 403 status code is returned with a JSON body containing error details. If the candidate is not found, a 404 status code is returned with a JSON body containing error details.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Delete Candidate Attachment

  • ID: delete_candidate_attachment
  • Operation: write
  • Entities: candidate, attachment
  • Summary: This API endpoint is used to delete a candidate's attachment by its identifier. The DELETE method is used, and the endpoint requires the 'attachmentId' as a path parameter. The request should include an 'accept' header with 'application/json' as the value. If the deletion is successful, a 204 status code is returned with no content. If the user does not have permission to delete the attachment, a 403 status code is returned with a message and error details. If the attachment does not exist, a 404 status code is returned with a message and error details.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Remove Candidate Property Value Label

  • ID: delete_candidate_property_value_label
  • Operation: delete
  • Entities: candidate property value, candidate property
  • Summary: This API endpoint is used to remove a candidate property value label. It requires the candidate property identifier 'id' and the candidate property's value identifier 'valueId' as path parameters. The request does not require a body or query parameters. The response can be a 204 No Content if successful, a 400 Bad Request with specific error codes if there are issues with the request, or a 404 Not Found if the specified candidate property or value does not exist.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Delete Candidate Tags

  • ID: delete_candidate_tags
  • Operation: write
  • Entities: tag, candidate
  • Summary: This API endpoint deletes all tags associated with a given candidate. The request requires the candidate's identifier as a path parameter. The DELETE method is used, and the request should include an 'accept' header specifying 'application/json'. If successful, a 204 status code is returned indicating that the candidate's tags have been successfully deleted. If the user does not have permission to access the candidate, a 403 status code is returned with a JSON response containing an error message and details.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Delete Candidate's Application to a Job

  • ID: delete_candidates_application_to_a_job
  • Operation: write
  • Entities: candidate, job, application
  • Summary: This API endpoint allows the deletion of a candidate's application to a specific job. It requires the candidate identifier and job identifier as path parameters. The request does not require a body or specific headers, but it can accept 'application/json' as a response format. Upon successful deletion, a 204 status code is returned. If the user does not have permission, a 403 status code is returned with a message and error details. If the application is not found, a 404 status code is returned with a message and error details.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Delete Company Integration

  • ID: delete_company_integration
  • Operation: write
  • Entities: company, integration
  • Summary: The Delete Company Integration API allows you to remove an integration for a specific company identified by the companyId path parameter. The request requires the companyId as a path parameter and accepts an optional 'accept' header to specify the media type for the response. The API responds with a 204 No Content status, indicating that the operation was successful and no content is returned in the response body.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Deactivate Job Property

  • ID: delete_deactivate_job_property
  • Operation: write
  • Entities: job property
  • Summary: This API endpoint deactivates a job property identified by the 'id' path parameter. It requires the 'id' of the job property to be specified in the URL path. The request does not require a body or additional query parameters. The response can be a 204 status code indicating success with no content, a 403 status code indicating forbidden access due to authorization issues, or a 404 status code indicating that the job property was not found. The 403 and 404 responses include a JSON body with a message and an array of errors, each containing a code and message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Deactivate User Account

  • ID: delete_deactivate_user_account
  • Operation: write
  • Entities: user
  • Summary: This API endpoint is used to deactivate a user account in the SmartRecruiters system. The request requires the user identifier as a path parameter. The DELETE method is used to perform the deactivation. The request header can optionally include 'accept: application/json' to specify the response format. If the operation is successful, a 204 status code is returned indicating the user has been successfully deactivated. If the user is not permitted to manage users, a 403 status code is returned with a detailed error message. If the user is not found, a 404 status code is returned with an appropriate error message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Remove Dependency Between Job Properties

  • ID: delete_dependency_between_job_properties
  • Operation: write
  • Entities: job property, dependent
  • Summary: This API endpoint is used to remove a dependency between job properties in the SmartRecruiters system. It requires two path parameters: 'id', which is the job property identifier, and 'dependentId', which is the job property's dependent identifier. The request does not require a body or query parameters. The response can be a 204 status code indicating successful deletion with no content, a 403 status code indicating forbidden access due to authorization issues, or a 404 status code indicating that the job property or its dependent was not found. The 403 and 404 responses include a JSON body with a message and an array of errors, each containing a code and a message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Remove Hiring Team Member from Job

  • ID: delete_hiring_team_member_from_job
  • Operation: write
  • Entities: user, hiring team, job
  • Summary: This API endpoint is used to remove a member from the hiring team of a specified job. The request requires the job ID and user ID as path parameters. The request header must include 'accept: application/json'. If successful, the response will be a 204 No Content status. If there are errors, such as attempting to remove the last member of a hiring team, lacking job access, or the user not being a member of the hiring team, the response will include error messages with appropriate status codes (400, 401, 404).
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Delete Interview

  • ID: delete_interview
  • Operation: write
  • Entities: interview
  • Summary: The Delete Interview API allows users to delete an interview by providing the interview ID in the path parameters. The request requires the 'interviewId' as a path parameter, which is a GUID string representing the ID of the interview to be deleted. The API responds with a 204 status code if the interview is successfully deleted. If the user is forbidden from deleting the interview, a 403 status code is returned with an error message. If the interview is not found, a 404 status code is returned with an error message indicating 'INTERVIEW_NOT_FOUND'. A 500 status code indicates an unexpected error.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Delete Interview Timeslot

  • ID: delete_interview_timeslot
  • Operation: write
  • Entities: timeslot, interview
  • Summary: This API endpoint allows the deletion of a specific timeslot associated with an interview. It requires the 'interviewId' and 'timeslotId' as path parameters, both of which are GUIDs. The request must include an 'accept' header with the value 'application/json'. A successful deletion returns a 204 status code. If the user is forbidden from deleting the timeslot, a 403 status code is returned with an error message. Other possible responses include 404 if the interview or timeslot is not found, 409 if the last timeslot cannot be deleted, and 500 for unexpected errors.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Delete Interview Type

  • ID: delete_interview_type
  • Operation: write
  • Entities: interview type
  • Summary: The Delete Interview Type API allows users to delete a specific interview type by providing the interview type name as a path parameter. The request requires the 'interviewType' path parameter, which is a string with a maximum length of 400 characters. The API responds with a 204 status code if the interview type is successfully deleted. If the user is forbidden to delete the interview type, a 403 status code is returned with an error message. If the interview type is not found, a 404 status code is returned with an error message. In case of an unexpected error, a 500 status code is returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Delete Job Application

  • ID: delete_job_application
  • Operation: write
  • Entities: job application
  • Summary: The Delete Job Application API allows users to delete a job application identified by a given job application ID. The API requires the jobApplicationId as a path parameter, which must be a valid UUID. The request does not require a body or specific headers, but it can accept 'application/json' as a response format. Upon successful deletion, the API returns a 204 status code. If the jobApplicationId is invalid, a 400 status code is returned with an error message. If the job application is not found, a 404 status code is returned with an error message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Delete Job Position

  • ID: delete_job_position
  • Operation: write
  • Entities: position, job, candidate
  • Summary: This API endpoint is used to delete a specific job position identified by the jobId and positionId path parameters. The DELETE method is used to remove the position. The request requires the jobId and positionId as path parameters. The response can be a 204 status code indicating successful removal, or error responses such as 400 if the position has a candidate assigned, 403 if the approval process is enabled or access is forbidden, and 404 if the position is not found. The error responses include a message and an array of errors with codes and messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Delete Message by ID

  • ID: delete_message_by_id
  • Operation: write
  • Entities: message
  • Summary: This API endpoint allows the deletion of a message by its ID. The DELETE method is used to remove a message from the system, making it no longer visible on Hireloop. The request requires the 'id' path parameter, which is the identifier of the message to be deleted. The response can be a 204 status code indicating successful deletion, a 403 status code indicating no permission to delete the message, or a 404 status code indicating that the message was not found. The 403 and 404 responses include a JSON body with a message and an array of errors, each containing a code and a message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Remove Relationship Between Dependent Job Properties Values

  • ID: delete_relationship_between_dependent_job_properties_values
  • Operation: write
  • Entities: job property, relationship, dependent value
  • Summary: This API endpoint is used to remove the relationship between dependent job properties values. It requires the identifiers for the job property, its value, the dependent property, and the dependent value as path parameters. The DELETE method is used to perform this operation. If successful, the API returns a 204 status code with no content. If the request is forbidden due to authorization issues, a 403 status code is returned with a message and errors. If any of the specified identifiers are not found, a 404 status code is returned with detailed error codes and messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Delete Review by ID

  • ID: delete_review_by_id
  • Operation: write
  • Entities: reviewer, review
  • Summary: The Delete Review by ID API allows users to delete a specific review by providing the review ID and reviewer ID. The request requires an 'accept' header with 'application/json' and a query parameter 'reviewerId' which must be a 24-character hexadecimal string. The response will be a 204 status code if the review is successfully deleted. If there are errors, such as invalid IDs or unauthorized access, the response will include error codes and messages detailing the issue.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Unarchive Job Property Value

  • ID: delete_unarchive_job_property_value
  • Operation: write
  • Entities: job property, value
  • Summary: The 'Unarchive Job Property Value' API allows users to unarchive a specific job property value by providing the job property identifier and the value identifier in the path parameters. The request requires an 'accept' header with the value 'application/json'. The API does not require a request body or query parameters. Upon successful execution, the API returns a 204 status code with no content. If the user does not have the necessary authorization, a 403 status code is returned with an error message. If the job property or value does not exist, a 404 status code is returned with an appropriate error message. If the value label contains invalid characters, a 422 status code is returned, indicating that the label must be updated before unarchiving.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Unpublish Job Ad from All Sources

  • ID: delete_unpublish_job_ad
  • Operation: write
  • Entities: source, job, job ad
  • Summary: This API endpoint is used to unpublish a job ad from all sources. It requires the job identifier (jobId) and the job ad identifier (jobAdId) as path parameters. The request does not require a body or query parameters. The response can be a 202 status indicating the unposting is pending, a 401 status if the user is not authorized, or a 404 status if the job ad is not found. The response body for a 202 status includes the unposting status, while 401 and 404 responses include error messages and codes.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Unpublish Job from All Sources

  • ID: delete_unpublish_job_from_all_sources
  • Operation: write
  • Entities: source, job, user
  • Summary: This API endpoint unpublishes a job from all sources. It requires the job identifier as a path parameter. The request must include an 'accept' header with the value 'application/json'. The API does not require a request body. On success, it returns a 204 status code with no content. If the user is not authorized to access the job, it returns a 401 status code with an error message and error code 'UNAUTHORIZED_TO_ACCESS_JOB'.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Deactivate User Activation

  • ID: delete_user_activation
  • Operation: write
  • Entities: user
  • Summary: The Deactivate User Activation API allows you to deactivate a user's activation status by sending a DELETE request to the specified endpoint. The request requires a path parameter 'id', which is the user identifier. The response can be a 204 status code indicating successful deactivation, a 403 status code indicating permission denied if the user is not permitted to manage users, or a 404 status code if the user is not found. The 403 and 404 responses include a JSON body with a message and an array of errors, each containing a code and message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Delete User from Access Group

  • ID: delete_user_from_access_group
  • Operation: write
  • Entities: user, access group
  • Summary: This API endpoint is used to delete a user from a specified access group. It requires the access group identifier and the user identifier as path parameters. The request can include an 'accept' header to specify the media type for the response. If successful, it returns a 204 status code indicating the user was successfully removed. If the user is not permitted to manage access groups, a 403 status code is returned with a detailed error message. If the user is not found or not in the access group, a 404 status code is returned with a detailed error message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Delete Webhook Subscription

  • ID: delete_webhook_subscription
  • Operation: write
  • Entities: subscription, webhook
  • Summary: The Delete Webhook Subscription API allows users to delete a webhook subscription by specifying the subscription identifier in the path parameter. The API requires the 'id' path parameter, which is a UUID representing the subscription identifier. The request can include an 'accept' header to specify the media type for the response, though it is optional. Upon successful deletion, a 204 status code is returned. If the user does not have permission to delete the subscription, a 403 status code is returned with an error message. If the subscription is not found, a 404 status code is returned with an error message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Access Groups

  • ID: get_access_groups
  • Operation: read
  • Entities: user, access group
  • Summary: The Get Access Groups API retrieves a list of access groups from the SmartRecruiters platform. It requires an 'accept' header specifying 'application/json'. The response includes a 200 status code with a list of access groups, each having an 'id' and 'name'. If the user does not have permission to manage access groups, a 403 status code is returned with a 'PERMISSION_DENIED' error message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Application Configuration for Posting

  • ID: get_application_configuration_for_posting
  • Operation: read
  • Entities: configuration, policy, question
  • Summary: This API endpoint retrieves the application configuration for a specific job posting identified by the UUID. The configuration includes screening questions, privacy policies, and settings. Optionally, conditional questions can be included in the response. The request requires the UUID as a path parameter and accepts an optional 'Accept-Language' header to specify the language for screening questions, defaulting to 'en'. Additionally, a query parameter 'conditionalsIncluded' can be used to specify whether conditional questions should be included in the response. The response includes details about questions, settings, and privacy policies. Error responses include codes and messages for invalid requests, unauthenticated access, too many requests, and internal server errors.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Approval Request Comments

  • ID: get_approval_request_comments
  • Operation: read
  • Entities: comment, error, approval request
  • Summary: This API endpoint retrieves comments for a specific approval request identified by the 'approvalRequestId' path parameter. The request requires an 'accept' header with the value 'application/json'. The response includes a 200 status code with a list of comments, each containing 'content', 'authorId', and 'createdOn' fields. If the approval request is not found, a 404 status code is returned with an error code 'APPROVAL_REQUEST_NOT_FOUND'.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Approval Request Details

  • ID: get_approval_request_details
  • Operation: read
  • Entities: approver, job, approval request
  • Summary: This API retrieves the details of an approval request using the specified approvalRequestId. The request requires the 'accept' header to be set to 'application/json'. The path parameter 'approvalRequestId' is mandatory and identifies the specific approval request. The response includes details such as the approval request id, subject, type, decision mode, status, and steps involved in the approval process. If the approval request is found, a 200 status code is returned with the approval details. If not found, a 404 status code is returned with an error code and message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Approval Requests

  • ID: get_approval_requests
  • Operation: read
  • Entities: approver, approval request
  • Summary: This API endpoint retrieves a list of approval requests from the SmartRecruiters platform. The maximum number of approval requests returned is 100. The request is made using the GET method to the specified URL. The API accepts an optional query parameter 'pageId' to paginate through the list of approval requests. The response includes a list of approval requests with details such as id, subject, type, decision mode, status, and steps required for approval. The response headers may include a 'Link' header for pagination. In case of an error, such as an invalid pageId, a 400 response is returned with error details.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Retrieve Assessment Orders

  • ID: get_assessment_orders
  • Operation: read
  • Entities: assessment, application, assessment order
  • Summary: The Retrieve Assessment Orders API endpoint allows clients to fetch assessment orders associated with a specific application ID. The request requires a query parameter 'applicationId' which is a GUID representing the application. The response includes an array of assessment orders, each containing details such as applicationId, orderId, assessmentPackageDate, submissionDate, assessmentPackageName, description, status, score, scoreLabel, summary, attachments, and assessments. The API returns a 200 status code with the assessment orders if successful, a 401 status code if the caller is not authorized, a 404 status code if the application is not found, and a 500 status code for unexpected errors.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Assessment Package Details

  • ID: get_assessment_package_details
  • Operation: read
  • Entities: assessment, assessment package
  • Summary: This API endpoint retrieves the details of a specific assessment package identified by the 'assessmentPackageId' path parameter. The request requires the 'assessmentPackageId' to be provided in the URL path. The response includes details such as the package ID, type, name, description, and a list of assessments within the package. The response can return a 200 status with the package details, a 401 status if the request is unauthorized, a 403 status if required scopes are missing, or a 404 status if no package is found with the given ID.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Assignment Details for Onboarding Process

  • ID: get_assignment_details_for_onboarding_process
  • Operation: read
  • Entities: onboarding process, assignment
  • Summary: This API endpoint retrieves the details of a specific assignment within an onboarding process. It requires the 'onboardingProcessId' and 'assignmentId' as path parameters, both of which must be valid UUIDs. The request must include an 'accept' header with the value 'application/json'. The response will include details such as the assignment's ID, type, title, description, and flags indicating if it contains sensitive data or is high priority. Possible response codes include 200 for a successful retrieval, 401 if the caller is not authorized, 404 if the assignment is not found, and 500 for unexpected errors.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Attachment for Activity Assignment

  • ID: get_attachment_for_activity_assignment
  • Operation: read
  • Entities: activity assignment, attachment
  • Summary: This API retrieves a single attachment for a given activity assignment. It requires the 'activityAssignmentId' and 'attachmentId' as path parameters, both of which must be valid UUIDs. The request must include an 'accept' header with the value 'application/octet-stream'. The response will return the attachment in binary format if successful (HTTP 200). If the caller is not authorized, a 401 error with a NOT_AUTHORIZED_TO_ACCESS_RESOURCE code will be returned. If the activity assignment or attachment is not found, a 404 error with appropriate codes will be returned. A 500 error indicates an unexpected error.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Attachments for Activity Assignment

  • ID: get_attachments_for_activity_assignment
  • Operation: read
  • Entities: activity assignment, attachment
  • Summary: This API retrieves the attachments associated with a specific activity assignment. The request requires the 'activityAssignmentId' as a path parameter, which is a UUID representing the ID of the activity assignment. The request header must include 'accept: application/json'. The response will return a list of attachment IDs if successful (HTTP 200). If the caller is not authorized, a 401 error with a NOT_AUTHORIZED_TO_ACCESS_RESOURCE code is returned. If the activity assignment is not found, a 404 error with an ACTIVITY_ASSIGNMENT_NOT_FOUND code is returned. A 500 error indicates an unexpected error.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Retrieve Audit Events

  • ID: get_audit_events
  • Operation: read
  • Entities: user, job, candidate
  • Summary: The Retrieve Audit Events API allows users to fetch a list of audit events from the SmartRecruiters system. The API supports filtering by event date, event name, author type, author ID, entity type, and entity ID. It returns a paginated list of events, each with details such as event name, date, author type, and context information. The API retains data for at least 26 months and defaults to the last 7 days if no date range is specified. The response includes a nextPageId for pagination and a limit on the number of events returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Available Entity Names for Entity Mapping

  • ID: get_available_entity_names_for_entity_mapping
  • Operation: read
  • Entities: entity name, entity mapping
  • Summary: [BETA] This API endpoint retrieves the available entity names for entity mapping. It is a GET request to the URL 'https://api.smartrecruiters.com/configuration/entity-mapping/entity-names'. The request requires an 'accept' header with the value 'application/json'. The response can be a 200 status with a list of entity names, a 403 status indicating forbidden access due to authorization issues, or a 404 status indicating that the mapping was not found. The 200 response includes an array of entity names, each with a 'name' property. The 403 and 404 responses include a 'message' and an array of 'errors', each with a 'code' and 'message'.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Available Job Properties

  • ID: get_available_job_properties
  • Operation: read
  • Entities: job property, action, organization
  • Summary: This API endpoint retrieves a list of available job properties from the SmartRecruiters platform. The request is made using the GET method to the URL https://api.smartrecruiters.com/configuration/job-properties. The API accepts an optional header 'Accept-Language' to specify the language of the returned content. The response includes a 200 status code with a JSON object containing 'totalFound' and 'content' fields, where 'content' is an array of job property objects. Each job property object includes fields such as 'id', 'label', 'category', 'active', 'visible', 'required', and 'actions'. A 403 status code indicates forbidden access, with a response containing a 'message' and 'errors' array detailing the issue.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Available Job Property Values

  • ID: get_available_job_property_values
  • Operation: read
  • Entities: job property, configuration, value
  • Summary: This API endpoint retrieves available job property values for a specified job property ID. It supports optional language specification through the 'Accept-Language' header, and pagination through 'pageId' and 'pageSize' query parameters. The response includes the total number of items found, the next page ID for pagination, and a list of job property values with their IDs, labels, and archived status. Possible error responses include 403 Forbidden if access is denied, and 404 Not Found if the job property does not exist.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Available Offer Properties

  • ID: get_available_offer_properties
  • Operation: read
  • Entities: property, offer, category
  • Summary: This API endpoint retrieves a list of available offer properties from the SmartRecruiters platform. It requires an 'accept' header with the value 'application/json'. The response includes a list of categories, each containing an ID and a list of properties. Each property has a key, label, required status, and type, which can be one of several enumerated types such as BOOLEAN, COUNTRY, CURRENCY, etc. If the user does not have permission to access offers, a 403 error is returned with a message and a list of errors.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Available Values for Candidate Property

  • ID: get_available_values_for_candidate_property
  • Operation: read
  • Entities: candidate property value, candidate property
  • Summary: This API endpoint lists all available values for a given candidate property ID. It is specifically available for candidate properties of type SINGLE_SELECT. The request requires the 'id' path parameter, which is the candidate property identifier. The response includes a list of values with their IDs and labels if successful (HTTP 200). If the candidate property type is not SINGLE_SELECT, a 400 error is returned with code CANDIDATE_PROPERTY_NOT_SINGLE_SELECT. If the candidate property is not found, a 404 error is returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Callback Logs for Subscription

  • ID: get_callback_logs_for_subscription
  • Operation: read
  • Entities: callback request, subscription
  • Summary: This API endpoint retrieves the callback logs for a specific subscription identified by the 'id' path parameter. It supports filtering the logs based on query parameters such as 'page_id', 'limit', 'callbackStatus', 'after', and 'before'. The response includes a list of callback request details, each containing the status, timestamp, and request details including the URL, body, and headers. The 'Link' header in the response provides a link to the next set of resources if available.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate Consent Decisions

  • ID: get_candidate_consent_decisions
  • Operation: read
  • Entities: consent, candidate, customer
  • Summary: This API endpoint retrieves the consent decisions of a candidate based on the consent approach chosen by the customer. The response can either be a single consent decision or multiple decisions broken out by data scopes such as SmartRecruit and SmartCRM. If there is at least one pending consent request for a candidate, the response includes the date and time of the most recent request. The API requires the candidate's ID as a path parameter and returns a JSON object with the consent decisions. A 403 response indicates access denial with an error message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate Consent Status

  • ID: get_candidate_consent_status
  • Operation: read
  • Entities: consent status, candidate
  • Summary: This API endpoint retrieves the consent status of a candidate using their unique identifier. The request is made using the GET method to the URL 'https://api.smartrecruiters.com/candidates/{id}/consent'. The path parameter 'id' is required and represents the candidate's identifier. The request header must include 'accept: application/json'. The response will return a 200 status code with the candidate's latest consent status, which can be 'REQUIRED', 'PENDING', or 'ACQUIRED'. If the status is 'ACQUIRED', a date will also be provided. A 403 status code indicates that access to the candidate is denied, and an error message will be included in the response.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate Details

  • ID: get_candidate_details
  • Operation: read
  • Entities: job, assignment, candidate
  • Summary: This API endpoint retrieves the details of a candidate using their unique identifier. The request requires the 'id' path parameter, which is the candidate's identifier, and an 'accept' header specifying 'application/json'. The response includes detailed information about the candidate, such as personal details, location, web presence, education, experience, and assignments. The response also includes actions related to the candidate's assignments and consents. In case of unauthorized access, a 401 error is returned with a message and error details.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate Job Offers

  • ID: get_candidate_job_offers
  • Operation: read
  • Entities: job, candidate, offer
  • Summary: This API endpoint retrieves the job offers for a specific candidate identified by the 'id' path parameter and a specific job identified by the 'jobId' path parameter. The request requires an 'accept' header with the value 'application/json'. The response includes a list of offers with details such as offer ID, status, creation and update timestamps, and associated actions. Possible response statuses include 200 (success), 401 (access denied), 403 (no access to offers), and 404 (offers not found).
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate Job Properties

  • ID: get_candidate_job_properties
  • Operation: read
  • Entities: property, job, candidate
  • Summary: This API endpoint retrieves the properties of a candidate for a specific job. It requires the candidate ID and job ID as path parameters. An optional query parameter 'context' can be provided to specify the context for candidate properties to display, which can be one of PROFILE, OFFER_FORM, HIRE_FORM, or OFFER_APPROVAL_FORM. The response includes a list of candidate properties with details such as id, label, type, value, and actions. If the candidate properties cannot be accessed, a 403 error is returned. If the candidate is not assigned to the given job, a 404 error with code JOB_NOT_FOUND is returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate Job Reviews

  • ID: get_candidate_job_reviews
  • Operation: read
  • Entities: job, review, candidate
  • Summary: This API endpoint retrieves reviews for a specific candidate related to a specific job. It requires two query parameters: 'candidateId' and 'jobId', both of which are GUIDs and are mandatory. The response can be a list of reviews with details such as review ID, candidate ID, job ID, reviewer ID, overall rating, comment, and timestamps for creation and update. Possible error responses include 401 for unauthorized access and 404 if no application is found for the candidate in the specified job.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate Offer Details

  • ID: get_candidate_offer_details
  • Operation: read
  • Entities: job, candidate, offer
  • Summary: This API endpoint retrieves the details of a candidate's offer using the specified offer ID. The request requires the 'accept' header to be set to 'application/json'. The path parameter 'offerId' is mandatory and identifies the specific offer to be retrieved. The response includes the offer's ID, status, creation and update timestamps, additional properties, and actions related to the candidate, job, and details. Possible response statuses include 200 for a successful retrieval, 401 for access denial, 403 for no access to offers, and 404 if the offer is not found.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate Properties Configuration

  • ID: get_candidate_properties_configuration
  • Operation: read
  • Entities: company, candidate property, configuration
  • Summary: This API endpoint retrieves all candidate properties and their configuration for a company. It requires an 'accept' header with the value 'application/json'. The response includes a list of candidate properties with details such as id, label, type, availability, and actions. The availability specifies to whom and in what context the property is available, while actions provide URLs and methods for further operations. A 403 response indicates permission denial, with an error message and code.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate Property Details

  • ID: get_candidate_property_details
  • Operation: read
  • Entities: property, configuration, candidate
  • Summary: This API endpoint retrieves the details and configuration of a candidate property by its identifier. The request requires a path parameter 'id' which is the candidate property identifier. The response includes details such as the property id, label, type, availability, and actions. The type can be one of several enumerated values such as BOOLEAN, COUNTRY, CURRENCY, etc. The availability object specifies the users and contexts where the property is available. If the candidate property is not found, a 404 response is returned with an error message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate Property Value by ID

  • ID: get_candidate_property_value_by_id
  • Operation: read
  • Entities: candidate property value, candidate property
  • Summary: This API endpoint retrieves a candidate property value by its ID. It requires two path parameters: 'id', which is the candidate property identifier, and 'valueId', which is the candidate property's value identifier. The request must include an 'accept' header with the value 'application/json'. The response can be a 200 status with the candidate property value details, a 400 status if the candidate property type is not SINGLE_SELECT, or a 404 status if the candidate property or value with the given ID does not exist.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate Screening Question Answers

  • ID: get_candidate_screening_question_answers
  • Operation: read
  • Entities: job, screening question, candidate
  • Summary: This API endpoint retrieves the screening question answers for a specific candidate's job. It requires the candidate identifier and job identifier as path parameters. The response includes the total number of answers found and an array of answer details, each containing the question ID, type, category, name, label, and records. The records include fields with IDs, labels, and values. The API returns an empty array if no screening answers are found. The response also includes predefined and custom questions, with labels used for human-readable formats.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate Source by Identifier

  • ID: get_candidate_source_by_identifier
  • Operation: read
  • Entities: source, identifier, candidate
  • Summary: This API endpoint retrieves a single candidate source based on the provided source identifier, which can include deleted sources. The request requires a path parameter 'sourceIdentifier' which must be a valid UUID. The response can be a successful retrieval of the source details with properties like 'label', 'type', and 'subType', or it can return error messages for invalid identifiers or if the source is not found.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate Source Types with Subtypes

  • ID: get_candidate_source_types_with_subtypes
  • Operation: read
  • Entities: source, subtype, action
  • Summary: This API endpoint retrieves a list of all available candidate source types along with their subtypes. It requires an 'accept' header specifying 'application/json'. The response includes the total number of source types found and a detailed list of each source type, including its id, label, available actions with URLs and HTTP methods, and a list of subtypes with their ids.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate Sources by Type

  • ID: get_candidate_sources_by_type
  • Operation: read
  • Entities: source, action, candidate
  • Summary: This API endpoint retrieves a list of all available candidate sources by type. The request requires a path parameter 'sourceType' to specify the type of source to retrieve. Optional query parameters include 'sourceSubType' to filter by subtype, 'limit' to specify the number of elements to return (default is 100, max is 100), and 'offset' to specify the number of elements to skip (default is 0). The response includes a list of candidate sources with details such as 'id', 'label', 'sourceIdentifier', 'sourceSubType', and 'actions'. Possible response codes include 200 for a successful retrieval, 400 for invalid source type and subtype pair, and 404 if the source is not found.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate Status for a Posting

  • ID: get_candidate_status_for_a_posting
  • Operation: read
  • Entities: status, posting, candidate
  • Summary: This API endpoint retrieves the status of a candidate for a specific job posting. It requires the 'uuid' of the posting and the 'candidateId' as path parameters. The request should include an 'accept' header with the value 'application/json'. The response will return the candidate's status, which can be one of several predefined states such as 'NEW', 'IN_REVIEW', 'INTERVIEW', etc. In case of errors, the API will return appropriate error codes and messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate Tags

  • ID: get_candidate_tags
  • Operation: read
  • Entities: tag, candidate
  • Summary: This API endpoint retrieves the tags associated with a specific candidate identified by the 'id' path parameter. The request requires an 'accept' header with the value 'application/json'. The response will return a list of tags in JSON format if successful (HTTP 200), or an error message if the user does not have permission to access the candidate (HTTP 403). The 'tags' array in the response can contain up to 100 string items, each with a maximum length of 50 characters.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate's Attachment

  • ID: get_candidates_attachment
  • Operation: read
  • Entities: candidate, attachment
  • Summary: This API endpoint retrieves a candidate's attachment using the specified attachment identifier. The request requires the 'attachmentId' as a path parameter and the 'accept' header set to 'application/json'. The response can be a successful retrieval of the attachment or an error message. Possible error responses include 403 for permission issues or malware detection, and 404 if the file is not found.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate's Attachments for a Job

  • ID: get_candidates_attachments_for_a_job
  • Operation: read
  • Entities: candidate, job, attachment
  • Summary: This API endpoint retrieves a list of attachments associated with a candidate for a specific job. The request requires the candidate's ID and the job ID as path parameters. The response includes the total number of attachments found and details of each attachment, such as its ID, name, type, content type, and available actions (download and remove). If the user does not have permission to view the attachments, a 403 error is returned with a PERMISSION_DENIED code. If the candidate is not assigned to the specified job, a 404 error is returned with a JOB_NOT_FOUND code.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate's Job Application Details

  • ID: get_candidates_job_application_details
  • Operation: read
  • Entities: candidate, job, application
  • Summary: This API endpoint retrieves the details of a candidate's application to a specific job. It requires the candidate's ID and the job ID as path parameters. The response includes the application ID, status, sub-status, start date, source, reasons for rejection or withdrawal, actions, and the URL of the application details. The API returns a 200 status code with the application details if successful, a 403 status code if permission is denied, and a 404 status code if the application is not found.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Retrieve Candidates Matching Criteria

  • ID: get_candidates_matching_criteria
  • Operation: read
  • Entities: job, location, candidate
  • Summary: This API endpoint retrieves candidates matching specified criteria from the SmartRecruiters platform. It supports various query parameters for filtering candidates, such as keyword search, job ID, location, status, consent status, and more. The response includes candidate details like ID, name, email, location, and job assignments. Pagination is supported through the 'limit' and 'pageId' query parameters, with links to the next page provided in the response headers. The API returns a JSON object containing the list of candidates and metadata about the search results.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate's Status History for a Job

  • ID: get_candidates_status_history_for_a_job
  • Operation: read
  • Entities: job, status history, candidate
  • Summary: This API endpoint retrieves the status history of a candidate for a specific job. It requires the candidate's ID and the job ID as path parameters. The response includes the total number of status history records found and an array of status changes, each with a timestamp, status, sub-status, and possible actions. If the user does not have access to the candidate or job, a 403 error is returned with appropriate error codes. If the candidate or job is not found, a 404 error is returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Company Information

  • ID: get_company_information
  • Operation: read
  • Entities: company, location, industry
  • Summary: This API endpoint retrieves all information about a company. It requires an 'accept' header with the value 'application/json'. The response includes details such as the company's identifier, name, location (including country, country code, region, city, address, postal code, longitude, and latitude), website URL, industry information (id and label), and logo URL.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Department Configuration

  • ID: get_department_configuration
  • Operation: read
  • Entities: department
  • Summary: The Get Department Configuration API retrieves a list of departments configured in the system. It accepts an optional 'Accept-Language' header to specify the language of the returned content. The response includes the total number of departments found and an array of department objects, each containing an id, label, description, and archived status.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Department Details

  • ID: get_department_details
  • Operation: read
  • Entities: department
  • Summary: This API endpoint retrieves the details of a specific department using its identifier. The request requires the 'id' path parameter, which is the unique identifier of the department. The request header must include 'accept: application/json'. The response will return a 200 status code with department details including 'id', 'label', 'description', and 'archived' status if the department is found. If the department is not found, a 404 status code is returned with an error message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Dependent Job Property Values

  • ID: get_dependent_job_property_values
  • Operation: read
  • Entities: job property, value, dependent
  • Summary: This API endpoint retrieves the values of a dependent job property in correlation with its parent field. It requires the job property ID and the dependent job property ID as path parameters. The 'Accept-Language' header can be optionally provided to specify the language of the returned content. The response includes the total number of found items and an array of content objects, each containing a parent object with an ID and label, and an array of values with their respective IDs and labels. Possible error responses include 403 Forbidden, indicating authorization issues, and 404 Not Found, indicating missing job properties or dependencies.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Job Content by ID

  • ID: get_details_of_a_specific_job
  • Operation: read
  • Entities:
  • Summary: This API endpoint retrieves the content of a job using a specified job ID. The request is made using the GET method to the URL 'https://api.smartrecruiters.com/jobs/{jobId}'. The request can include an optional 'Accept-Language' header to specify the language of the returned content. The response includes detailed information about the job, such as its ID, title, department, location, status, and more. The response is structured in JSON format and includes various nested objects representing different aspects of the job, such as department details, location information, and job advertisement sections. If access to the job is denied, a 401 response is returned with an error message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Candidate Details

  • ID: get_details_of_a_specific_job_application
  • Operation: read
  • Entities:
  • Summary: This API endpoint retrieves the details of a candidate using their unique identifier. The request requires the 'id' path parameter, which is the candidate's identifier, and an 'accept' header specifying 'application/json'. The response includes detailed information about the candidate, such as personal details, location, web presence, education, experience, and assignments. The response also includes actions related to the candidate's assignments and consents. In case of unauthorized access, a 401 error is returned with a message and error details.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Download Most Recent Report File

  • ID: get_download_most_recent_report_file
  • Operation: read
  • Entities: report file, report, etag
  • Summary: This API endpoint allows users to download the most recent report file for a specific report in CSV format. The request requires a 'reportId' path parameter to identify the report. Optionally, an 'If-None-Match' header can be included to compare the ETag of the most recent report file, which helps in saving bandwidth by avoiding unnecessary downloads. The response includes the report data in CSV format and an ETag header. If the report file is not newer than the one referred in the 'If-None-Match' header, a 304 Not Modified status is returned. The API also handles various error responses such as 400 for invalid report ID, 401 for unauthenticated requests, 403 for unauthorized access, and 404 when no report file is found.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Download Report File

  • ID: get_download_report_file
  • Operation: read
  • Entities: file, report, data
  • Summary: This API endpoint allows users to download a specific report file in CSV format using the GET method. The request requires a path parameter 'reportFileId' which is the identifier of the report file to be downloaded. The 'accept' header must be set to 'text/csv' to specify the format of the response data. The response will contain the report data in CSV format if successful (HTTP 200). If the request is not authenticated, a 401 error will be returned with a message and error details. If the caller is not authorized, a 403 error will be returned. If no report file is found with the given ID, a 404 error will be returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Fillable PDF Form Assignment Answers

  • ID: get_fillable_pdf_form_assignment_answers
  • Operation: read
  • Entities: pdf, fillable pdf form assignment, form answer
  • Summary: This API retrieves the answers submitted for a specific Fillable PDF Form Assignment. The request requires the 'fillablePdfFormAssignmentId' as a path parameter, which is the unique identifier of the form assignment. The response is a PDF file filled with the submitted answers if successful (HTTP 200). If the caller is not authorized, a 401 error is returned with a NOT_AUTHORIZED_TO_ACCESS_RESOURCE code. If the form assignment or its answers are not found, a 404 error is returned with appropriate error codes. A 500 error indicates an unexpected server error.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Hiring Process Details

  • ID: get_hiring_process_details
  • Operation: read
  • Entities: hiring process, sub status, error
  • Summary: This API endpoint retrieves the details of a specific hiring process identified by the 'id' path parameter. The request requires an 'accept' header with the value 'application/json'. The response includes the hiring process details such as 'id', 'name', 'active' status, and 'subStatuses' which include arrays of strings for different statuses like 'IN_REVIEW', 'INTERVIEW', and 'OFFERED'. If the hiring process is not found, a 404 response is returned with an error message and error details.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Hiring Processes

  • ID: get_hiring_processes
  • Operation: read
  • Entities: hiring process, sub status
  • Summary: This API endpoint retrieves a list of hiring processes from the SmartRecruiters platform. It requires an 'accept' header specifying 'application/json' to indicate the expected response format. The response includes the total number of hiring processes found and a detailed list of each process, including its ID, name, active status, and sub-statuses categorized under 'IN_REVIEW', 'INTERVIEW', and 'OFFERED'.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Hiring Team of a Job

  • ID: get_hiring_team_of_a_job
  • Operation: read
  • Entities: user, hiring team, job
  • Summary: This API endpoint retrieves the hiring team for a specific job identified by the jobId. The request is made using the GET method to the URL https://api.smartrecruiters.com/jobs/{jobId}/hiring-team. The request can include an optional 'Accept-Language' header to specify the language of the returned content. The response includes a list of team members with their roles and actions. If the job access is denied, a 401 error is returned with a message and error details.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Interview Details

  • ID: get_interview_details
  • Operation: read
  • Entities: user, candidate, interview
  • Summary: This API endpoint retrieves the details of a specific interview using the interview ID. The request requires the 'interviewId' as a path parameter and the 'accept' header set to 'application/json'. The response includes details such as the candidate, job ID, organizer ID, timezone, and timeslots. The timeslots contain information about the interview type, title, place, start and end times, interviewers, candidate status, and no-show status. The API returns a 200 status code with the interview details, a 403 status code if access is forbidden, a 404 status code if the interview is not found, and a 500 status code for unexpected errors.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Interview Timeslot Details

  • ID: get_interview_timeslot_details
  • Operation: read
  • Entities: timeslot, user, interview
  • Summary: This API endpoint retrieves the details of a specific interview timeslot. It requires the interview ID and timeslot ID as path parameters. The response includes details such as the interview type, title, place, start and end times, interviewers, candidate status, and no-show status. If access is forbidden, a 403 error with error details is returned. If the interview or timeslot is not found, a 404 error is returned. A 500 error indicates an unexpected error.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Interview Types

  • ID: get_interview_types
  • Operation: read
  • Entities: interview type, interview
  • Summary: The 'Get Interview Types' API retrieves a list of interview types from the SmartRecruiters platform. It is a GET request to the endpoint 'https://api.smartrecruiters.com/interviews-api/v201904/interview-types'. The request requires an 'accept' header with the value 'application/json' to specify the expected media type in the response. The response returns a JSON array of strings, each representing an interview type, with a minimum of 1 and a maximum of 2000 items. In case of an unexpected error, a 500 status code is returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Job Ads for a Specific Job

  • ID: get_job_ads_for_a_specific_job
  • Operation: read
  • Entities: job, job ad, location
  • Summary: This API endpoint retrieves job advertisements for a specific job identified by the jobId path parameter. The request can include an optional 'Accept-Language' header to specify the language of the returned content. The response includes an array of job ads, each containing details such as id, title, language, location, job description, creation and update timestamps, posting status, and visibility. The response also includes actions that can be performed on the job ad, such as posting methods and URLs.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Job Advertisement Details

  • ID: get_job_advertisement_details
  • Operation: read
  • Entities: job, job ad, location
  • Summary: This API endpoint retrieves the details of a specific job advertisement using the job ID and job advertisement ID. The request requires the 'Accept-Language' header to specify the language of the returned content, which is optional and defaults to 'en'. The response includes detailed information about the job advertisement, such as its ID, title, language, location, job description, creation and update timestamps, posting status, and visibility. If the job or job advertisement is not found, a 404 error is returned with an appropriate message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Job Application Details

  • ID: get_job_application_details
  • Operation: read
  • Entities: profile, job, job application
  • Summary: This API endpoint retrieves the details of a job application using the specified job application ID. The request requires the 'jobApplicationId' as a path parameter, which must be a valid UUID. The response includes the status of the job application, sub-status, source identifier, creation date, profile ID, and job ID. The API returns a 200 status code with the job application details if successful. If the 'jobApplicationId' is invalid, a 400 status code is returned with an error message. If the job application is not found, a 404 status code is returned with an error message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Job Content by ID

  • ID: get_job_content_by_id
  • Operation: read
  • Entities: job, department, location
  • Summary: This API endpoint retrieves the content of a job using a specified job ID. The request is made using the GET method to the URL 'https://api.smartrecruiters.com/jobs/{jobId}'. The request can include an optional 'Accept-Language' header to specify the language of the returned content. The response includes detailed information about the job, such as its ID, title, department, location, status, and more. The response is structured in JSON format and includes various nested objects representing different aspects of the job, such as department details, location information, and job advertisement sections. If access to the job is denied, a 401 response is returned with an error message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Job Note

  • ID: get_job_note
  • Operation: read
  • Entities: job, error, note
  • Summary: The Get Job Note API retrieves a note associated with a specific job identified by the jobId path parameter. The request can include an optional Accept-Language header to specify the language of the returned content. The response will include the note content if successful (HTTP 200), or an error message if the job access is forbidden (HTTP 401) or the job note is not found (HTTP 404).
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Job Position Details

  • ID: get_job_position_details
  • Operation: read
  • Entities: position, job
  • Summary: This API endpoint retrieves the details of a specific job position using the job ID and position ID. It requires the 'Accept-Language' header to specify the language of the returned content, which defaults to 'en'. The response includes details such as the position ID, type, incumbent name, position open date, target start date, creation date, and status. If the job access is forbidden, a 403 error is returned with a message and error details. If the position is not found, a 404 error is returned with a message and error details.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Job Positions

  • ID: get_job_positions
  • Operation: read
  • Entities: position, job
  • Summary: The Get Job Positions API retrieves the list of positions for a specific job identified by the jobId path parameter. It accepts optional headers such as 'Accept-Language' to specify the language of the returned content and 'accept' to specify the media type, which defaults to 'application/json'. The response includes a list of positions with details such as position ID, type, incumbent name, open date, target start date, creation date, and status. If access to the job is forbidden, a 403 error is returned with an error message and code.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Job Posting Details

  • ID: get_job_posting_details
  • Operation: read
  • Entities: company, location, job posting
  • Summary: This API endpoint retrieves the details of a specific job posting for a given company. The request requires the company identifier and the posting identifier as path parameters. Optional query parameters include sourceTypeId, sourceSubTypeId, and sourceId, which are used for source tracking. The 'accept-language' header can be used to specify the language of translation. The response includes detailed information about the job posting, such as its ID, name, URLs, company details, location, industry, department, function, type of employment, experience level, custom fields, creator, job advertisement sections, and visibility status.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Job Property by ID

  • ID: get_job_property_by_id
  • Operation: read
  • Entities: job property, organization
  • Summary: This API endpoint retrieves a job property by its ID. The request is made using the GET method to the URL 'https://api.smartrecruiters.com/configuration/job-properties/{id}', where '{id}' is the path parameter representing the job property ID. The request can include an optional 'Accept-Language' header to specify the language of the returned content. The response includes a 200 status code with details of the job property, including its ID, label, category, active status, visibility, requirement status, and available actions. If the request is unauthorized, a 403 status code is returned with an error message. If the job property is not found, a 404 status code is returned with an error message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Job Publications

  • ID: get_job_publications
  • Operation: read
  • Entities: source, publication, job
  • Summary: This API endpoint retrieves the list of publications for a specific job identified by the jobId. It supports filtering publications based on their active status using the 'activeOnly' query parameter. The response includes details such as the source name, type, published date, unpublished date, and posting ID of each publication. The API supports multiple languages for the response content, specified via the 'Accept-Language' header. If the user is unauthorized to access the job, a 401 error with a specific error code is returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Job Status History

  • ID: get_job_status_history
  • Operation: read
  • Entities: status, job, history
  • Summary: The Get Job Status History API retrieves the history of status changes for a specific job identified by the jobId path parameter. The API supports an optional Accept-Language header to specify the language of the returned content. The response includes a totalFound field indicating the number of status changes and a content array with details of each status change, including the changedOn date, status, and any user actions. If access is forbidden, a 401 response is returned with an error message and code.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Retrieve Last Secret Key for Webhook Subscription

  • ID: get_last_secret_key_for_webhook_subscription
  • Operation: read
  • Entities: webhook subscription, error, secret key
  • Summary: This API retrieves the last secret key for a specified webhook subscription. The request requires the subscription identifier as a path parameter. The response will include the secret key if the request is successful (HTTP 200). If the user does not have permission to retrieve the secret key, a 403 error will be returned with an error message. If the subscription is not found, a 404 error will be returned with an error message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Latest Approval Request for Offer

  • ID: get_latest_approval_request_for_offer
  • Operation: read
  • Entities: job, candidate, offer
  • Summary: This API endpoint retrieves the latest approval request for a given offer. It requires the 'offerId' as a path parameter to identify the specific offer. The request must include an 'accept' header with the value 'application/json'. The response can be a successful retrieval of the approval request ID (HTTP 200) or various error responses such as unauthorized access (HTTP 401), forbidden access (HTTP 403), or not found errors (HTTP 404) with appropriate error messages and codes.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Latest Job Approval Details

  • ID: get_latest_job_approval_details
  • Operation: read
  • Entities: position, job, approval request
  • Summary: This API endpoint retrieves the latest approval details for a specific job identified by the jobId path parameter. The request can include an optional 'Accept-Language' header to specify the language of the returned content. The response includes details such as the approval request ID, positions associated with the job, and salary range. Possible response codes include 200 for successful retrieval, 401 for forbidden access, 403 for no access to approvals, and 404 if no approvals are found for the job.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Active Postings by Company

  • ID: get_list_active_postings_by_company
  • Operation: read
  • Entities: company, posting, location
  • Summary: This API endpoint lists active job postings published by a specified company. It requires the 'companyIdentifier' as a path parameter to identify the company. Optional query parameters include 'q' for full-text search, 'limit' and 'offset' for pagination, 'destination' and 'locationType' for filtering postings by type and location, and various other filters such as 'country', 'region', 'city', 'department', 'language', 'releasedAfter', and 'customField'. The response includes a list of postings with details such as job ID, name, company information, location, industry, department, employment type, experience level, and visibility.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List All Job Applications

  • ID: get_list_all_job_applications
  • Operation:
  • Entities:
  • Summary: This API endpoint lists all job applications by retrieving candidates matching specified criteria from the SmartRecruiters platform. It supports various query parameters for filtering candidates, such as keyword search, job ID, location, status, consent status, and more. The response includes candidate details like ID, name, email, location, and job assignments. Pagination is supported through the 'limit' and 'pageId' query parameters, with links to the next page provided in the response headers. The API returns a JSON object containing the list of candidates and metadata about the search results.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Departments for a Given Company

  • ID: get_list_departments_for_given_company
  • Operation: read
  • Entities: company, department
  • Summary: This API endpoint retrieves a list of departments for a specified company. The request requires the 'companyIdentifier' as a path parameter, which is mandatory. An optional 'accept-language' header can be provided to specify the language of translation. The response includes the total number of departments found and an array of department objects, each containing an 'id', 'label', and 'description'.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Interviews

  • ID: get_list_interviews
  • Operation: read
  • Entities: job, candidate, interview
  • Summary: This API endpoint retrieves a list of interviews associated with a specific application ID. The request requires the 'applicationId' as a query parameter, which is a GUID representing the application. The response includes details about each interview, such as the candidate's ID, job ID, location, organizer ID, timezone, and timeslots. Each timeslot contains information about the interview type, title, place, start and end times, interviewers, candidate status, and no-show status. The response also includes metadata like creation time, reference URL, and source. The API returns a 403 error if access is forbidden, a 404 error if the application is not found, and a 500 error for unexpected issues.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get List of Assessment Packages

  • ID: get_list_of_assessment_packages
  • Operation: read
  • Entities: package, assessment, requester
  • Summary: This API endpoint retrieves a list of assessment packages available for recruiters. The request can include optional headers and query parameters to filter the packages based on location and other criteria. The response includes a list of packages, each with details such as id, type, name, description, and assessments. The API supports various response codes, including 200 for successful retrieval, 204 when no packages are available, 400 for invalid requester data, 401 for unauthorized requests, and 403 for requests missing required scopes.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get List of Job Property's Dependents

  • ID: get_list_of_job_property_dependents
  • Operation: read
  • Entities: job property, dependent
  • Summary: This API endpoint retrieves a list of dependents for a specified job property. The request is made using the GET method to the URL 'https://api.smartrecruiters.com/configuration/job-properties/{id}/dependents', where '{id}' is the path parameter representing the job property ID. An optional header 'Accept-Language' can be included to specify the language of the returned content. The response includes a 200 status code with a JSON object containing 'totalFound' and 'content' fields if successful. If access is forbidden, a 403 status code is returned with an error message. If the job property is not found, a 404 status code is returned with an error message.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get List of Job Property's Dependent Values

  • ID: get_list_of_job_propertys_dependent_values
  • Operation: read
  • Entities: job property, job property value, job property dependent
  • Summary: This API endpoint retrieves a list of dependent values for a specific job property's value. It requires the job property ID, the value ID, and the dependent ID as path parameters. Optional query parameters include pageId for pagination and pageSize to specify the number of items per page. The Accept-Language header can be used to specify the language of the returned content. The response includes the total number of found items and an array of content items, each with an ID and label. Possible error responses include 403 Forbidden and 404 Not Found with specific error codes and messages.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Fetch List of Reports

  • ID: get_list_of_reports
  • Operation: read
  • Entities: page, report, filter
  • Summary: This API endpoint is used to fetch a list of reports from the SmartRecruiters reporting API. The reports are sorted by modification date, with newer reports appearing first. The endpoint supports pagination, and the nextPage property in the response can be used to fetch subsequent pages. The response also includes a Link header with a URL to the next page if available. The API accepts query parameters such as 'page' for the page identifier and 'limit' for the number of entities per page, with a default value of 10. The response includes detailed information about each report, including report ID, name, columns, filters, creation and modification dates, and more. The API returns various HTTP status codes, including 200 for success, 400 for invalid parameters, 401 for unauthenticated requests, and 403 for unauthorized requests.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get List of Users

  • ID: get_list_of_users
  • Operation: read
  • Entities: user, language, system role
  • Summary: The Get List of Users API endpoint retrieves a list of users in your company. It supports full-text search queries based on first name, last name, email, and external data. The API allows pagination with a limit on the number of elements returned, and it can filter users updated after a specific date. The response includes user details such as email, first name, last name, system role, language, and more. The API returns a 200 status code with the list of users, a 400 status code for invalid page IDs, and a 403 status code if the user does not have permission to manage users.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

List Publications for a Job Ad

  • ID: get_list_publications_for_a_job_ad
  • Operation: read
  • Entities: publication, job, job ad
  • Summary: This API endpoint is used to list publications for a specific job ad. It requires the job ID and job ad ID as path parameters. The request can include optional headers such as 'Accept-Language' to specify the language of the returned content and 'accept' to specify the media type, which defaults to 'application/json'. The query parameter 'activeOnly' can be used to filter publications by their active status, defaulting to 'true'. The response includes a list of publications with details such as source name, type, published and unpublished dates, and posting ID. Possible error responses include 403 for access forbidden and 404 for job ad not found.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Most Recent Report File Details

  • ID: get_most_recent_report_file_details
  • Operation: read
  • Entities: report file, column, report
  • Summary: This API endpoint retrieves the most recent report file details for a specified report using the report ID. It requires at least one successfully generated report file to return a successful response. The request can include an 'If-None-Match' header with a previously retrieved ETag to check if a newer report file is available. If no newer file is available, the API returns a 304 Not Modified status. The response includes details such as report file ID, status, schedule type, generation date, and more. Possible error responses include 400 for invalid report ID, 401 for unauthenticated requests, 403 for unauthorized access, and 404 if no report file is available.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get My User Details

  • ID: get_my_user_details
  • Operation: read
  • Entities: user, location, access group
  • Summary: The 'Get My User Details' API endpoint retrieves the details of the currently authenticated user. It requires an 'accept' header with the value 'application/json'. The response includes user information such as email, first name, last name, system role, external data, SSO identifier, SSO login mode, language, user ID, active status, last updated timestamp, location details, access groups, and seats. The language is specified by a code, and the location includes country, region, city, and coordinates.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get New Hire Details

  • ID: get_new_hire_details
  • Operation: read
  • Entities: new hire
  • Summary: This API endpoint retrieves the details of a new hire using their unique ID. The request requires the 'newHireId' as a path parameter, which is a UUID representing the new hire. The request header must include 'accept: application/json'. The response includes the new hire's ID, first name, last name, email, phone number, and social media details. If the request is unauthorized, a 401 error is returned with an error code and message. If the new hire is not found, a 404 error is returned with an error code and message. A 500 error indicates an unexpected error.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Offer Document

  • ID: get_offer_document
  • Operation: read
  • Entities: document, offer
  • Summary: The Get Offer Document API allows users to retrieve a specific document associated with an offer using the offerId and documentId as path parameters. The request requires an 'accept' header with the value 'application/octet-stream'. The response can be a binary file if successful (HTTP 200) or various error messages in JSON format for different error conditions such as malformed request (HTTP 400), forbidden access due to malware (HTTP 403), not found (HTTP 404), conflict (HTTP 409), or unsupported provider (HTTP 422).
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Offer Documents

  • ID: get_offer_documents
  • Operation: read
  • Entities: provider, document, offer
  • Summary: The Get Offer Documents API retrieves a list of documents related to a specific offer identified by the offerId path parameter. The request requires the 'accept' header to be set to 'application/json'. The response includes a list of documents with their IDs, names, and creation dates, as well as information about whether the documents are currently syncing and the provider (currently only DOCUSIGN is supported). Possible error responses include 400 for malformed requests, 404 if the offer is not found or access is denied, 409 if the offer has not been sent, and 422 if the offer was sent with an unsupported provider.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Offers from SmartRecruiters

  • ID: get_offers_from_smartrecruiters
  • Operation: read
  • Entities: job, candidate, offer
  • Summary: The Get Offers from SmartRecruiters API retrieves a list of job offers based on specified query parameters. The API supports filtering by the number of results to return (limit), the number of results to skip (offset), creation time boundaries (createdAfter and createdBefore), offer age (age), and offer status (status). The response includes the total number of offers found and a list of offer details, including ID, status, creation and update timestamps, and associated actions. If access is denied, a 403 error with a message and error code is returned.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Onboarding Process Assignments

  • ID: get_onboarding_process_assignments
  • Operation: read
  • Entities: onboarding process, assignment, activity assignment
  • Summary: This API endpoint retrieves the assignments associated with a specific onboarding process identified by the onboardingProcessId. The request requires the onboardingProcessId as a path parameter and optionally accepts a query parameter 'integrationRelevant' to filter assignments with an integration key. The response includes arrays of activity assignments, web form assignments, and fillable PDF form assignments, each containing details such as id, title, type, description, and priority indicators. The API returns a 200 status code with the assignments if successful, a 401 status code if unauthorized, a 404 status code if the onboarding process is not found, and a 500 status code for unexpected errors.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Onboarding Process Details

  • ID: get_onboarding_process_details
  • Operation: read
  • Entities: job, onboarding process, new hire
  • Summary: This API retrieves the details of a specific onboarding process using the onboardingProcessId. The request requires the onboardingProcessId as a path parameter and the 'accept' header set to 'application/json'. The response includes the onboarding process details such as id, newHireId, employmentStartDate, jobId, and applicationId if successful (HTTP 200). If the caller is not authorized, a 401 error is returned with an error code and message. If the onboarding process is not found, a 404 error is returned with an error code and message. A 500 error indicates an unexpected error.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Onboarding Status for Candidate

  • ID: get_onboarding_status_for_candidate
  • Operation: read
  • Entities: onboarding status, job, candidate
  • Summary: This API endpoint retrieves the onboarding status for a candidate associated with a given job. It requires the candidate identifier and job identifier as path parameters. The response includes the onboarding status, which can be 'READY_TO_ONBOARD', 'ONBOARDING_SUCCESSFUL', or 'ONBOARDING_FAILED'. In case of errors, it returns appropriate error messages and codes, such as 'NO_ACCESS_TO_CANDIDATE', 'CANDIDATE_NOT_FOUND', 'JOB_NOT_FOUND', 'ONBOARDING_STATUS_NOT_ACTIVE', or 'CANDIDATE_FIELDS_FEATURE_MISSING'.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Partner Configuration

  • ID: get_partner_configuration
  • Operation: read
  • Entities: partner, configuration, assessment
  • Summary: This API endpoint retrieves the configuration details for a partner in the SmartRecruiters system. It requires an 'accept' header with the value 'application/json'. The response includes various URLs related to the partner's API, such as consentUrl, assessmentPackageListUrl, and oauthTokenUrl, among others. It also specifies the consentDisplayMode and supportedAssessmentTypes. The API returns different responses based on the status code: 200 for successful retrieval, 401 for unauthorized requests, 403 for requests missing required scopes, and 404 if the configuration does not exist.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Hiring Team of a Job

  • ID: get_recruiters_assigned_to_a_job
  • Operation: read
  • Entities:
  • Summary: This API endpoint retrieves the hiring team for a specific job identified by the jobId. The request is made using the GET method to the URL https://api.smartrecruiters.com/jobs/{jobId}/hiring-team. The request can include an optional 'Accept-Language' header to specify the language of the returned content. The response includes a list of team members with their roles and actions. If the job access is denied, a 401 error is returned with a message and error details.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Rejection Reasons

  • ID: get_rejection_reasons
  • Operation: read
  • Entities: rejection reason
  • Summary: This API endpoint retrieves the list of rejection reasons from the SmartRecruiters configuration. It uses the GET method and requires the 'accept' header to be set to 'application/json'. The response includes the total number of rejection reasons found and an array of rejection reasons, each with a unique identifier and a label.
  • Input Fields: Input Fields
  • Output Fields: Output Fields

Get Report File Details

  • ID: get_report_file_details