Ashby
Arcade.dev tools for interacting with Ashby
1.0.4Arcade tools for interacting with the Ashby ATS. The toolkit enables agents and automations to read and write candidate, application, job, and feedback data directly against the Ashby API.
Capabilities
- Candidate lookup & notes — search candidates by name/email, retrieve full profiles, list or add plain-text notes (e.g. agent handoff summaries).
- Application management — list applications across the org (filtered by job and/or status), move applications between interview stages in either direction, or archive (reject) them with a named reason that the toolkit resolves to Ashby's internal ID automatically.
- Feedback & scorecards — read interview feedback and scorecards on a given application; use the debrief tool to pull a candidate's profile, notes, and all feedback in a single call.
- Job listing — enumerate the organization's job/role records, optionally filtered by status.
Secrets
ASHBY_API_KEY — An Ashby API key scoped to the permissions your agent requires. Create one in the Ashby admin dashboard under Settings → API Keys. Each key carries explicit permission grants; the minimum required permissions vary by tool:
- Candidates read — required by all read tools (GetCandidate, GetCandidateDebrief, ListApplicationFeedback, ListApplications, ListCandidateNotes, SearchCandidates).
- Candidates write — required by AddCandidateNote, ArchiveApplication, and ChangeApplicationStage.
- Interviews read — required by ArchiveApplication and ChangeApplicationStage.
- Jobs read — required by ListJobs.
- Hiring-process-metadata read — required by ArchiveApplication.
Grant only the permissions your use case needs. Refer to Ashby's API key documentation for details on creating and scoping keys.
Store the secret in Arcade at https://api.arcade.dev/dashboard/auth/secrets and see https://docs.arcade.dev/en/guides/create-tools/tool-basics/create-tool-secrets for general Arcade secret configuration guidance.
Available tools(10)
| Tool name | Description | Secrets | |
|---|---|---|---|
Add a plain-text note to a candidate (e.g. an agent handoff or summary).
Creates a new note each time it runs. Requires the Candidates write permission
on the API key. | 1 | ||
Archive (reject) an application, recording why.
This is how Ashby rejects a candidate for a job: the application moves to its
interview plan's archived stage with an archive reason. Resolves the reason name
to the organization's configured reason id for you — an unknown name errors with
the available reasons, and an ambiguous one errors rather than guessing. Does NOT
email the candidate. The application's data is preserved, and it can later be
moved back to an active stage to un-archive it — though anything the rejection
already triggered (notifications, a status visible to humans) is not undone.
Requires the Candidates write, Interviews read, and hiring-process-metadata read
permissions on the API key. | 1 | ||
Move an application to a named interview stage, in either direction.
Resolves the stage name to its id inside the application's own interview plan,
then moves the application — you do not look up stage ids yourself. Works to
advance or to move a candidate back; if the name does not match, the error lists
the plan's available stage names, and an ambiguous name (two stages share it)
errors rather than guessing. Records a transition each time it runs. It cannot
move an application into an archived/rejected stage (Ashby requires an archive
reason this tool does not collect). Requires the Candidates write and Interviews
read permissions on the API key. | 1 | ||
Get a candidate's profile and the ids of their applications.
Use the returned application ids with feedback or application tools; the Ashby
API does not list a candidate's applications directly. Requires the Candidates
read permission on the API key. | 1 | ||
Gather everything about a candidate for a debrief in one call.
Pulls the candidate's profile, the notes on file, and the interview feedback and
scorecards across each of their applications, then returns them together — you do
not chain the candidate, note, and feedback reads yourself. Feedback covers up to
the candidate's first applications when there are many; an application whose
feedback can't be read is counted in `feedback_failed` rather than failing the
whole call. Requires the Candidates read permission on the API key. | 1 | ||
Read the feedback and interview scorecards submitted on an application.
Useful for synthesizing what reviewers said about a candidate before a debrief.
Requires the Candidates read permission on the API key. | 1 | ||
List the organization's applications, optionally filtered by job and/or status.
The Ashby API does not filter applications by candidate; to find a specific
candidate's applications, read the candidate first and use its application ids.
Requires the Candidates read permission on the API key. | 1 | ||
Read the notes recorded on a candidate, paginated via the cursor.
Requires the Candidates read permission on the API key. | 1 | ||
List the organization's jobs (roles), optionally filtered by status.
A job is the role record; headcount slots ("openings") are a separate concept
not exposed here. Requires the Jobs read permission on the API key. | 1 | ||
Search the organization's candidates by name and/or email.
Intended for narrowing to a small set of known candidates (e.g. re-engaging a
past applicant). Returns at most 100 matches; provide at least one of name or
email, each at least 3 characters. Requires the Candidates read permission on
the API key. | 1 |