Bulk Action Job

Changed on

Performs a bulk action on a set of jobs. The job set is determined by an explicit job_uid array and/or filter_rules (v3) / legacy filter.* fields, combined additively.

assign_to_route and auto_assign_territory are asynchronous: they queue a worker and respond with an acknowledgement before the work completes. delete responds before an async cascade-cleanup worker runs. send_email and send_sms respond before their per-job send loop finishes. update_schedule and clear_schedule are fully synchronous (one save per job) and are blocked with 403 if the company has the Appointments feature enabled. update_status applies to all matched jobs except those skipped for exceeding the job-status-history limit or failing a status-dependency check (when mandate_dependency_check is set) — those are reported back in data, the rest still succeed (partial success, not an all-or-nothing failure).

post/jobs/bulk_action

Request

  • Base URL
    https://dc-region.zuperpro.com/api
  • URL
    https://dc-region.zuperpro.com/api/jobs/bulk_action
  • Auth
    API key in header x-api-key

Request body

action'delete' | 'assign' | 'unassign' | 'update_field' | 'assign_to_route' | 'update_status' | 'update_schedule' | 'send_email' | 'send_sms' | 'link_parent_job' | 'clear_schedule' | 'auto_assign_territory'
job_uidstring[]

Optional explicit list of job uids. Combined additively with filter_rules/filter.

filter_rulesobject[]

v3 filter engine rules used to select the job set.

filterobject

Legacy filter object, used only when filter_rules is omitted or empty.

unassign_usersboolean

assign_to_route only. Whether to unassign existing users from jobs added to the route. Defaults to true.

mandate_dependency_checkboolean

update_status only. When true, jobs failing a status-dependency check are skipped (reported in the response) instead of transitioned.

Response

200

typestring
titlestring
messagestring

Example response

{
  "type": "success"
}

Changes