Can I Restrict What Users are Allowed to do with a Job via the API ?

What is a Restriction?

Restrictions prevent both mobile users (workers) and web users (dispatchers) from being able to change certain parts of a job.  This is an API only feature at this point.

The one exception to this rule is planned_start_at.  Setting a restriction on planned_start_at will only prevent a dispatcher from changing the start time by dragging the job on the schedule.  They will still be able to open the job and reschedule it.  (In effect, it prevents them from rescheduling the job by mistake when assigning it to a worker.)


What Restrictions Can Be Set?

You can set a restriction on any of the following job nodes:

  • planned_duration
  • customer_id
  • planned_start_at
  • custom field name
  • custom field value
  • invoice tax rate
  • invoice description
  • invoice line item code
  • invoice line item description
  • invoice line item requested quantity
  • invoice line item actual quantity
  • invoice line item unit cost
  • invoice line item notes


How Do I Set a Restriction?

You set a restriction by including a restrictions node in the job XML.  The following job example sets all restrictions available in red:

<?xml version="1.0"?>
<steps type="array">
<name>En Route</name>
<custom_fields type="array">
<value>Unchangeable Notes</value>
<description>Bill of work</description>
<line_items type="array">


Need more information? ask us hereHave more questions? Submit a request