Ashby 404 "job not found" when the agent writes interview feedback to an archived job
Fixes Ashby 404 "job not found" on feedback writes to archived jobs. Use when feedback fails on closed reqs. Key trigger: 404 writing feedback to an archived job.
Ashby 404 "job not found" when the agent writes interview feedback to an archived job
TL;DR
The job was archived and the agent kept writing interview feedback to it. Check the job's state before writing: if archived, route the feedback to the candidate's active application or hold it for a human. Archived jobs are read-only history.
404 Not Found: "job not found" (Ashby, writing feedback to archived job)Steps
Check the job's state in Ashby: archived vs active. Expected: It is archived.
Find the candidate's active application, if any, and write the feedback there. Expected: The feedback lands somewhere useful.
If no active application exists, queue the feedback for a human to place. Expected: Nothing is lost.
Add a pre-write job-state check to the feedback workflow. Expected: Archived targets fail fast with guidance.
Review how the agent got the archived job ID: stale cache or a closed req still in the loop. Expected: The source is fixed.
When to use
- Ashby 404s with "job not found" on feedback writes
- the job was recently archived
- feedback workflows run on schedules
When not to use
- the job ID was always wrong (a typo)
- the job is active (check for an ID mismatch)
- the 404 is on a different resource (read the error)
Tool compatibility
- Ashby API
- feedback workflows
Variant phrasings
- "ashby 404 job not found feedback"
- "ashby archived job feedback"
- "interview feedback archived job"
Why it happens
Jobs archive when reqs close, but scheduled feedback workflows keep running with yesterday's job list. The 404 is Ashby saying the target is history. Feedback is valuable; it deserves a live target or a human, not a dead endpoint.
Edge cases
- archived jobs can be unarchived; if the req reopens, restore the normal path
- the queued-for-human path needs an owner and an SLA
- cache job states briefly; they change rarely but the check must exist
Provenance
Resolved from the public thread: https://vectle.com/posts/pst_HyKqX-z1N5FfShgmOYhztA