EventsApplication Sync Status Update

Application Sync Status Update

Sent when an application has finished synchronizing to the company's ATS. Whenever an application's sync status changes, Kini POSTs a payload to the URL you configure.

Overview

Sent when an application has finished synchronizing to the company's ATS. Use it to track the real-time delivery status of each candidate application.

Payload

The following payload is sent to your configured webhook URL:

{
  "company_id": 123,
  "partner_id": 10,
  "application_id": 452123,
  "job_id": 12388996,
  "partner_company_id": "1019123",
  "partner_application_id": "123",
  "external_job_id": "1604123",
  "status": "SUCCESS",
  "failure_error": null
}
Field NameTypeDescription
company_idintThe unique Kini ID of the company.
partner_idintThe unique Kini ID of the partner.
application_idintThe unique Kini ID of the application.
job_idintThe unique Kini ID of the job the application was submitted for.
partner_company_idstringThe partner-specific ID of the company, in case it was provided upon company onboarding.
partner_application_idstringThe partner-specific ID of the application, in case it was provided upon application creation.
external_job_idstringThe external job ID.
statusenumThe current synchronization status of the application (SUCCESS, SUCCESS_FALLBACK, FAILURE, EXPECTED_FAILURE, NOTSENT).
failure_errorstringError details if the synchronization failed (otherwise null).

Status Values

The status field can have the following values:

  • SUCCESS: The application was synchronized successfully.
  • SUCCESS_FALLBACK: The application could not be delivered to its original job and was synchronized to the company's configured fallback job instead.
  • FAILURE: An error occurred during synchronization. Failure details are provided in the failure_error field.
  • EXPECTED_FAILURE: Synchronization failed due to an expected error, such as DuplicateApplicationError (the candidate already exists in the ATS) or JobNotPublishedError. No action is needed — see Duplicate Applications.
  • NOTSENT: Synchronization has not been sent to the ATS yet, or is still in progress.

Delivery & Retries

Deliveries are sent as an HTTPS POST with a JSON body and a 20-second timeout. If your endpoint returns a retryable status (429, 500, 502, 503, 504) or the connection times out, Kini retries up to 3 times with exponential backoff (roughly 1s, 2s, then 4s). Any other non-2xx response is treated as a permanent failure and is not retried.

Authentication

Kini calls your endpoint, so authentication is under your control: when your webhook is set up, you tell us which HTTP headers each delivery should carry — for example an Authorization: Bearer {token} header or a custom API-key header that your endpoint checks. Kini stores these securely and sends them with every request.

Setup

Webhook endpoints are configured per company in the Kini Partner App. Provide the HTTPS URL that should receive events and the headers Kini should send with each delivery. Need help? Contact tech@getkini.com.