Approve or decline
POST
For the person holding the approver position, and the workspace's owners and admins (403 for anyone else; 409 once it's no longer pending, so two decisions never both land). An approved hire or retire is carried out: its result says what happened. An approved held tool call (action set) is made exactly as recorded, once, in the hire's next step in its thread; execution goes waiting → running → done or failed, and result holds what the tool said.
sessioncookie
better-auth.session_token<token>Set by POST /api/auth/sign-in/email.
ws*stringThe workspace id (from GET /api/me).
id*stringThe id of what the path names: a hire, a connection, a skill, a shared file, a department, a position, a goal or an approval.
application/json- body
decision*stringValue in
"approve""decline"note?stringLength
length <= 2000The approval.
curl -X POST 'https://app.useroster.work/api/workspaces/string/approvals/string/decision' \ -H 'Content-Type: application/json' \ -d '{ "decision": "approve"}'Example Response
Empty