What Kendor writes back to Ashby
Эта статья ещё не переведена, поэтому показана на английском.
Kendor keeps five fields on each Ashby application up to date (status, result, score, review link and decision), adds one note once a screen's result is in, and a note at each step of a live coding interview.
For every invite sent from Ashby, Kendor writes to five custom fields on the Ashby application: Kendor status, Kendor result, Kendor score, Kendor review and Kendor decision. They change as the candidate starts and finishes the screen and as your team marks a result and decides. When the result is marked, Kendor also adds one note on the candidate. Code, activity and reviewer comments stay in Kendor.
The fields
| Field | Type | Values |
|---|---|---|
Kendor status |
String | Invited, Started, Completed, Cancelled, Expired; for a live coding interview also Scheduled, Declined, No-show |
Kendor result |
String | Passed, Failed |
Kendor score |
Number | 0 to 100 |
Kendor review |
URL | Link to the submission's review page in Kendor |
Kendor decision |
String | Advanced, Rejected |
Values are always written in English, whatever language your team uses Kendor in. Kendor creates the fields when you connect, if the key allows it; otherwise you create them by hand. See Connect Ashby.
When each field is written
Every time Kendor writes, it sends the whole current state of the attempt, not just what changed. A field without a value yet is left as it is.
While the candidate takes the screen
| When | Kendor status |
|---|---|
| The invite is sent | Invited |
| The candidate starts the screen | Started |
| The candidate submits, or the time limit runs out | Completed |
If the invite ends unused
An invite that is never started can end in two ways:
- Cancelled. Someone chose Cancel invite in Kendor, or the screen was deleted. Kendor writes
Cancelledstraight away. - Expired. The invite passed its expiry date without being started. Nothing happens in Kendor at that moment, so a background check writes
Expired, usually within 10 minutes of the expiry.
Send reminder revives either one with a new expiry date, and the status goes back to Invited. Once a candidate has started, the status follows the attempt and is never Cancelled or Expired.
When the result is marked
After the candidate submits, a reviewer marks the screen in Kendor with Mark passed or Mark did not pass. Kendor then writes:
Kendor result:PassedorFailed.Kendor score: the average Rating · 1–10 given to the candidate's submissions, out of 100. A 7 out of 10 reads as 70. It's worked out when the result is marked, and is 0 if no ratings have been given yet, so rate the submissions first.Kendor review: a link to the submission's review page in Kendor. Opening it needs a Kendor login with access to your organization.
If a reviewer changes the result later, the fields are updated to match.
When you decide
When someone records Advance or Reject on the submission in Kendor, Kendor writes Kendor decision = Advanced or Rejected. A decision can only be recorded once the attempt has ended.
Kendor doesn't move the application in Ashby. The decision is information for your recruiters; moving the candidate to the next stage is still done in Ashby.
The note
The first time a result is marked, Kendor adds one note on the candidate in Ashby, for example:
Kendor: Backend fundamentals: Passed, score 70/100, took 84 min.
Review: https://…
It names the screen, gives the result and score, how long the candidate took from starting to submitting, and the review link. Kendor writes this note once per invite. A later change to the result updates the fields but doesn't add a second note.
Kendor may also leave a short note when it doesn't send an invite, for example because the candidate has no email address in Ashby. Those notes start Kendor: no invite sent. See Troubleshooting.
Live coding interviews
A live coding interview booked by a stage rule (see Book a live coding interview) writes two fields, Kendor status and Kendor decision, and leaves a note at each step. Kendor result, Kendor score and Kendor review aren't written for a session; the review link is in the notes.
| When | Kendor status |
|---|---|
| The session is made and the booking email sent | Invited |
| The candidate books a time | Scheduled |
| The session is live | Started |
| The session ends | Completed |
| Someone cancels the session in Kendor | Cancelled |
| The candidate withdraws | Declined |
| The session is marked as a no-show | No-show |
| The last offered time passes with nothing booked | Expired |
Expired is written by the same background check as for screens, usually within 10 minutes. If staff offer new times on the session, the deadline moves with them. When the panel records Advance or Reject, Kendor writes Kendor decision = Advanced or Rejected.
The notes, each written once, read for example:
Kendor: invited to the live coding interview API pairing. The candidate got an email to book a time.
Kendor: live coding interview API pairing booked for 2026-10-14 07:00 UTC.
Kendor: live coding interview API pairing held (52 min), ready to review.
Review: https://…
Kendor: live coding interview API pairing: Advanced by the panel.
Review: https://…
Each new time the candidate books adds another booked note. A session that ends without being held gets one closing note instead, such as the candidate declined the session or no time was booked before the offered hours ran out. Times in notes are in UTC, since people read them in any time zone.
A live coding session for a candidate Ashby sent to a screen earlier, but not booked by a rule, writes only the held and decided notes, onto the screen's application. Its fields keep showing the screen. See A candidate screened from Ashby earlier.
See what was written
Recent invites from Ashby, at the bottom of the Ashby page under Integrations, lists the last 20 invites and live coding sessions with the candidate, the Screen · job, and the Last status sent. A write that failed shows Not written yet; retrying; hover it to see Ashby's reason. Kendor retries a failed write for a day.
The same is shown where your team works: the candidates roster, the candidate's profile and the live coding session's page show From Ashby with the job and stage, and what Ashby last heard, for example Ashby last heard: Scheduled · 5 min ago. When a write fails, it reads Couldn't update Ashby. Kendor keeps trying for a day.
Note. If one of the five fields doesn't exist in Ashby, Kendor skips it and writes the rest. The Kendor fields on applications row in Setup shows which are missing.