GuidesAPI Reference
Log In
API Reference

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.


Body Params
string
required

The order's ID in your external systems. Required if id is not included.

int32
required

The unique Bringg ID of the order (task) to update. You must include either order ID, or external id.

boolean

Indicates whether to automatically group this order with other orders that have the same customer or grouping key.

boolean

When both the pickup and dropoff location for an order are destinations on a route (neither are located at the route origin), true creates two linked orders for individual optimization.

customer
object

An object containing detailed information about a new customer to create and associate with this order. NOTE: Use either the customer object attribute (create a new customer) or the customer_id attribute (an existing customer). For more information about customer object attributes, see Customer object.

double

The cost per delivery charged by a third-party carrier.

double

The delivery cost that the customer pays at checkout.

double

The discount applied to this order at checkout.

string

Your external system's ID for the carrier assigned to this order. Omit or leave this parameter null to manually or automatically assign the order in Bringg.

string

Your external system's ID for the driver associated with this order.

json

This field can be used to send custom attributes to Bringg.

double

The unpaid balance of this total order.

int32

The unpaid balance for delivery of this order.

notes
array of objects

An array of notes to be added the order. Read more about the Order Notes Object.

notes
int32

The payment method for this order. Possible values: 0: unknown, 1: cash, 2: credit, 3: check, 4: credit card terminal.

string

The name of the payment type, used to specify which payment equipment is required for this order.

double

The tip (gratuity) paid to the driver in cash after delivery.

double

The tip (gratuity) paid to the driver by credit after delivery.

double

The tip (gratuity) paid to the driver before delivery.

string

Indicates an additional external ID associated with an order, for example from the inventory preparation phase.

int32

The order's stage in the preparation workflow. Possible values: 0 - acknowledged, 1 - preparation started, 2 - preparation ended, 3 - ready for pickup, 4 - picked up, 5 - send to preparation failed

double

The net price of this order (not including taxes).

int32

Priority of the order within assigned route. For example, Priority 1 is the first stop in the route. Should be used when orders are sent to Bringg already assigned to a Route.

int32

The ID of a quote received as a response from the Get Quotes request and selected for use in your external systems, such as customer checkout.

int32

Defines the priority of a customer or order when using Route Optimization or AutoDispatch. null is the lowest rank, 1 is the highest, 2 is the second highest, and so on. 0 is not accepted.

boolean

Indicates whether this order is in planning phase or has been dispatched to drivers. The values are: false or 0 - Task appears in Planning tab and is not visible to drivers, true or 1 - Task appears in Dispatch tab and is visible to drivers.

required_skills
array of strings

Driver skills or vehicle capabilities required to carry out this order, such as "fridge installation".

required_skills
date

Date and time when the reservation of a delivery slot for an order expires. If the order is not confirmed by this time, the delivery slot reservation expires and the order is canceled. Omit if included in the Create Order request. Change to null to finalize.

run
object

The details of the route associated with this order. Include when creating route's outside of Bringg.

double

The service fee charged by an external carrier. Usually calculated as a percentage of order's subtotal.

string

Your external system's ID for the service plan applied to this order.

double

A fee applied when the customer's order subtotal does not meet the "small cart" threshold.

int32

Bringg's ID for the relevant tag, which determines the branding and workflows to use for this order.

int32

Bringg's ID for the Driver Action to be associated with the order. ID can be found in the Dashboard > Settings > Driver App > Actions Configuration.

task_inventories
object

The Order Inventories object provides detailed information about inventory items associated with an order.

int32

Indicates the order type. Possible values: 2: Pickup 3: Return 4: Dropoff 5: Pickup and dropoff. When updating a leg of a linked order using the order's external_id, use this field to indicate which leg.

double

The total tax amount charged for the order.

team_ids
array of int32s

An array of integers containing the Ids of all teams assigned to this order.

team_ids
string

Your external system's ID for the assigned team.

double

The tip (gratuity) paid to the driver by the customer for this order.

boolean

Indicates whether the driver can be tipped for this order.

string

This order's title. The maximum length is 255 characters.

string

Use to ensure that the vehicle does not exceed capacity even if a customer adds last-minute items to their order. When omitted, Bringg calculates the aggregated handling_units from the inventory object.

double

The total price of this order.

int32

Use to ensure order does not exceed vehicle capacity even if customers add last-minute items to their order. Bringg calculates according to the higher value, total_weight, or the aggregated weight of all inventory items in the order.

int32

Bringg's ID for the driver associated with this order.

vehicle
object

The vehicle associated with the order.

way_points
array of objects

An array of one or two objects containing destination information. To update a specific waypoint, include the position parameter in the object to indicate which waypoint should be updated. Read more about the Way Point Object.

way_points
Response

Language
Response
Choose an example:
application/json