Update Order

Update the details of an order (also known in Bringg as a task).

The Update Order endpoint allows you to update most details of an order (also known as a task) in Bringg.

Notes:

  • You can update an order by using the order's external_id or the id defined by Bringg.
  • When updating a linked order using an external_id, you can identify which leg of the order to update.
  • When using an external_id for linked orders, you can also indicate the exact leg to update by including the task_type_id.
  • To add a note to an existing order, use the notes object. Sample payloads have been provided in the Examples section.
  • If you wish to update the external_id of an order, you cannot do it with this API. You need to use the following API: Update Order's External ID.
  • If you include the task_configuration_id field with a value of "" or null, then Bringg will remove whatever ID had been previously assigned to the order. If you don't include this field, then the order will retain its Task Configuration ID value.
  • If you include the service_plan_external_id field with a value of "" or null, Bringg will do nothing to the previously assigned value. In other words, no change will be made to the order's Service Plan. If you don't include this field, then the order will also retain its Service Plan ID value.
Potential Errors
    <th>
      Error Message
    </th>

    <th>
      Resolution
    </th>
  </tr>
</thead>

<tbody>
  <tr>
    <td>
      `200`
    </td>

    <td>
      `Wrong ID`
    </td>

    <td>

    </td>
  </tr>

  <tr>
    <td>
      `401`
    </td>

    <td>
      `Task not found`
    </td>

    <td>
      Check the order `id` or `external_id` and try again.
    </td>
  </tr>

  <tr>
    <td>
      `200`
    </td>

    <td>
      `Can't update a done order`
    </td>

    <td>
      * Confirm that the order `id` or `external_id` is correct. - Confirm that the order status is correct.
    </td>
  </tr>

  <tr>
    <td>
      `200`
    </td>

    <td>
      `Can't update a locked order`
    </td>

    <td>
      Contact the user who locked the order to understand why changes were blocked. If necessary, ask them to unlock the order, then try again.
    </td>
  </tr>

  <tr>
    <td>
      `200`
    </td>

    <td>
      `Driver was not found` based on `user_external_id` or `user_id`
    </td>

    <td>
      Check the driver's ID:  

      * Go to **Resources > Drivers**, *or*
      * Send the [Get Users](ref:get_users) API request.
    </td>
  </tr>

  <tr>
    <td>
      `200`
    </td>

    <td>
      `Driver and order teams mismatch`
    </td>

    <td>

    </td>
  </tr>

  <tr>
    <td>
      `200`
    </td>

    <td>
      `Task is of type click & collect, it can't be assigned.`
    </td>

    <td>

    </td>
  </tr>

  <tr>
    <td>
      `200`
    </td>

    <td>
      `Not allowed to edit prices`
    </td>

    <td>

    </td>
  </tr>

  <tr>
    <td>
      `200`
    </td>

    <td>
      `Reserved_until`[`timestamp`]`can not be in the past`
    </td>

    <td>
      Update the `reserved_until` timestamp and try again. Check your external systems to understand why this timestamp was sent.
    </td>
  </tr>

  <tr>
    <td>
      `200`
    </td>

    <td>
      `no service_plan with id`[`service_pan_id`]`found`
    </td>

    <td>
      Check the service plan ID in **Settings > Service Plans** and try again.
    </td>
  </tr>
</tbody>
Error Code

Response (Output) Params

This list of output parameters includes all of the fields that are included in Bringg's response and webhooks. For more details, including a table of body params, see the Order (Task) Object.


Language