curl --request POST \
--url https://rest.hotfix.jobs/v1/employer/automations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Note on apply",
"trigger": {
"type": "application.confirmed"
},
"branches": {
"default": [
{
"action": "add_note",
"body": "New apply in the inbox."
}
]
}
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: 'Note on apply',
trigger: {type: 'application.confirmed'},
branches: {
default: [{action: 'add_note', body: JSON.stringify('New apply in the inbox.')}]
}
})
};
fetch('https://rest.hotfix.jobs/v1/employer/automations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://rest.hotfix.jobs/v1/employer/automations"
payload = {
"name": "Note on apply",
"trigger": { "type": "application.confirmed" },
"branches": { "default": [
{
"action": "add_note",
"body": "New apply in the inbox."
}
] }
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){}create_automation
Create a Fixed hiring automation (WHEN, IF, THEN). Defaults to paused. branches must include default with the action list. Actions never send email, create offers, or book meetings. A person still hits Send for drafts. MCP tool: create_automation.
curl --request POST \
--url https://rest.hotfix.jobs/v1/employer/automations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Note on apply",
"trigger": {
"type": "application.confirmed"
},
"branches": {
"default": [
{
"action": "add_note",
"body": "New apply in the inbox."
}
]
}
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: 'Note on apply',
trigger: {type: 'application.confirmed'},
branches: {
default: [{action: 'add_note', body: JSON.stringify('New apply in the inbox.')}]
}
})
};
fetch('https://rest.hotfix.jobs/v1/employer/automations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://rest.hotfix.jobs/v1/employer/automations"
payload = {
"name": "Note on apply",
"trigger": { "type": "application.confirmed" },
"branches": { "default": [
{
"action": "add_note",
"body": "New apply in the inbox."
}
] }
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){}Authorizations
Employer session JWT from Better Auth.
Body
Display name. At most 120 characters.
WHEN. Object with type. Event types include application.confirmed, status.changed, interview.booked, offer.accepted, and others. type schedule needs cron and optional timezone.
THEN. Object with key default whose value is the action list. Actions include set_status, set_assignee, clear_assignee, add_note, archive, restore, and create_draft.
Show child attributes
Show child attributes
IF. Optional rule group. Default is and with no conditions.
Optional job UUID. Null means company-wide.
active, paused, or archived. Default paused.
Response
Created
The response is of type object.