Update an application
curl --request PATCH \
--url https://api.hotfix.jobs/v1/employer/applications/{application_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{}'const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({})
};
fetch('https://api.hotfix.jobs/v1/employer/applications/{application_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.hotfix.jobs/v1/employer/applications/{application_id}"
payload = {}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text){
"id": "2c8f0a1e-4b3d-4e91-9c7a-1f6b8d2e0a11",
"applicant_name": "Jordan Lee",
"applicant_email": "jordan@example.com",
"job_id": "9a1b2c3d-4e5f-6789-abcd-ef0123456789",
"job_title": "Staff engineer",
"status": "interviewing",
"knockout": false,
"applied_at": "2026-09-20T18:22:01+00:00",
"has_resume": true,
"answers": {
"Why this role?": "I ship."
},
"also_applied": []
}{
"detail": {
"code": "offer_open",
"message": "Their offer is still open. Mark it declined on the record first."
}
}Applications
Update an application
Move one application to another status, archive it, or assign it. Rejecting also archives; moving out of Rejected restores. Rejecting cancels interviews that haven’t started and scheduling links not yet booked, which tells the panel and the candidate. Someone Hired, or with an offer still open, can’t be rejected: the answer is 409 with code hired or offer_open (mark the offer declined first).
Nothing is emailed unless you set rejection_email.
PATCH
/
v1
/
employer
/
applications
/
{application_id}
Update an application
curl --request PATCH \
--url https://api.hotfix.jobs/v1/employer/applications/{application_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{}'const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({})
};
fetch('https://api.hotfix.jobs/v1/employer/applications/{application_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.hotfix.jobs/v1/employer/applications/{application_id}"
payload = {}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text){
"id": "2c8f0a1e-4b3d-4e91-9c7a-1f6b8d2e0a11",
"applicant_name": "Jordan Lee",
"applicant_email": "jordan@example.com",
"job_id": "9a1b2c3d-4e5f-6789-abcd-ef0123456789",
"job_title": "Staff engineer",
"status": "interviewing",
"knockout": false,
"applied_at": "2026-09-20T18:22:01+00:00",
"has_resume": true,
"answers": {
"Why this role?": "I ship."
},
"also_applied": []
}{
"detail": {
"code": "offer_open",
"message": "Their offer is still open. Mark it declined on the record first."
}
}Authorizations
ApiKeyBearerAuth
Body
application/json
Response
Success