---
title: "Partial Order Update"
method: POST
path: "/v1/webhook/partial-order-update"
tags: ["Use case / Order", "Webhooks / Inbound"]
---

# Partial Order Update

`POST /v1/webhook/partial-order-update`

Webhook for partial order updates. Push to the endpoint to update specific fields of an existing order.

## Request body

- OrderUpdatePayload
  - `updates` PartialOrderUpdate[] — List of orders to update
    - `match` PartialOrderMatchTarget
      - `matches_all` PartialOrderMatchInput[]
        - `order` OrderMatch
          - `customer_reference_number` FieldMatchInput
            - `matches_any` string[]
          - `name` FieldMatchInput
            - `matches_any` string[]
          - `id` FieldMatchInput
            - `matches_any` string[]
        - `company` CompanyMatch
          - `name` FieldMatchInput
            - `matches_any` string[]
          - `code` FieldMatchInput
            - `matches_any` string[]
    - `consignment` PartialOrderConsignment
      - `updates` PartialOrderConsignmentUpdate[], nullable
        - `match` PartialOrderConsignmentMatchTarget
          - `matches_all` PartialOrderConsignmentMatchInput[]
            - `consignment` ConsignmentMatch
              - …
        - `good` PartialOrderGood
          - `updates` PartialOrderGoodUpdate[], nullable
            - `match` PartialOrderGoodMatchTarget
              - …
            - `handling_unit` PartialOrderGoodTrace
              - …
            - `question_answers` object — Question answers to update on the good. Mapping is configured in Qargo
            - `update` GoodEntityUpdate
              - …
        - `stop` PartialOrderStop
          - `updates` PartialOrderStopUpdate[], nullable
            - `match` PartialOrderStopMatchTarget
              - …
            - `question_answers` object — Question answers to update on the stop. Mapping is configured in Qargo
            - `update` StopEntityUpdate
              - …
        - `question_answers` object — Question answers to update on the consignment. Mapping is configured in Qargo
        - `update` ConsignmentEntityUpdate
          - `operation` 'CREATE' | 'UPDATE' | 'DELETE' | 'CANCEL' | 'UNCANCEL', required — Operation type for partial consignment structural updates. Consignments additionally support CANCEL / UNCANCEL, which move the consignment between CANCELLED and a plannable state while keeping the record. They are not valid on any other entity, so they live here instead of on UpdateOperation.
          - `data` union
            - ConsignmentUpdateData
              - …
            - ConsignmentData
              - …
    - `question_answers` object — Question answers to update on the order. Mapping is configured in Qargo
    - `update` OrderEntityUpdate
      - `operation` 'UPDATE' | 'DELETE', required
      - `data` OrderUpdateData
        - `transport_service` Entity
          - `name` string, nullable — Human readable identifier
          - `code` string, nullable — Machine readable identifier
        - `transport_network` Entity
          - `name` string, nullable — Human readable identifier
          - `code` string, nullable — Machine readable identifier
        - `service_level` ServiceLevel
          - `name` string, nullable — Human readable identifier
          - `code` string, nullable — Machine readable identifier
          - `custom_fields` object — Store values for user defined fields
        - `customer` CustomerField
          - `name` string, nullable
          - `code` string, nullable
          - `row_id` string, nullable
        - `customer_reference_number` string, nullable
        - `order_group` Entity
          - `name` string, nullable — Human readable identifier
          - `code` string, nullable — Machine readable identifier
        - `planning_instructions` string, nullable
        - `planning_group` PlanningGroup
          - `name` string, nullable — Name of the planning group
          - `code` string, nullable — Code of the planning group
        - `department` Department
          - `name` string, nullable — Name of the department
          - `code` string, nullable — Code of the department
        - `vehicle_category` VehicleCategory
          - `name` string, nullable — Human readable identifier
          - `code` string, nullable — Machine readable identifier
          - `custom_fields` object — Store values for user defined fields
        - `custom_fields` object, nullable
        - `neutral_order_type` 'NO_NEUTRAL_ORDER' | 'MASK_DELIVERY' | 'MASK_PICKUP', nullable
        - `pricing` UpdateOrderPricingInput
          - `requested_price` string, nullable
        - `container` ContainerOrderInput
          - `seal_number` string, nullable
          - `port_of_loading` string, nullable
          - `port_of_unloading` string, nullable
          - `origin_of_goods` string, nullable
          - `unique_consignment_number` string, nullable
          - `ocean_liner_name` string, nullable
          - `ocean_liner_scac` string, nullable
          - `pin_code` string, nullable
          - `ship_name` string, nullable
          - `closing_date` string, nullable
          - `tare_weight` integer, nullable
          - `container_number` string, nullable
          - `container_type` ContainerTypeInput
            - `code` string, nullable
            - `name` string, nullable
            - `custom_fields` object, nullable
          - `container_scenario` 'IMPORT' | 'EXPORT'
          - `secure_release` boolean, nullable
        - `palletforce` PalletforceExtraFields
          - `ni_company_name` string, nullable — Northern Ireland company name
          - `ni_description` string, nullable — Northern Ireland shipping info
          - `ni_gbeori` string, nullable — Northern Ireland GBEORI
          - `ni_tss_job_reference` string, nullable — Northern Ireland TSS JON reference
          - `ni_tss_registration` string, nullable — Northern Ireland TSS registration
        - `palletline` PalletlineExtraFields
          - `terms_of_carriage` '1300' | '5000' | '10000' | 'cmr' | 'other', nullable
        - `dachser` DachserExtraFields
          - `consolidator_reference_number` string, nullable — Consolidator reference number
        - `kuehne_nagel` KuehneNagelExtraFields
          - `sender_depot_code` string, nullable — Sender depot code
          - `receiver_depot_code` string, nullable — Receiver depot code
        - `chep` ChepOrderInput
          - `load_id` string, nullable
        - `project44` Project44OrderInput
          - `bill_of_lading` string, nullable
          - `order_id` string, nullable
        - `shippeo` ShippeoOrderInput
          - `external_reference` string, nullable
        - `manuport` ManuportOrderInput
          - `delivery_number` string, nullable
          - `seal_number` string, nullable
          - `order_number` string, nullable
          - `customer_id` string, nullable
          - `sender_id` string, nullable
        - `transporeon` TransporeonOrderExtraFields
          - `transport_id` string, nullable — Transporeon Transport ID
          - `transport_number` string, nullable — Transporeon Transport Number
        - `import_export` OrderImportExportInput
          - `incoterm` 'EXW' | 'FCA' | 'FAS' | 'FOB' | 'CFR' | 'CIF' | 'CPT' | 'CIP' | 'DAP' | 'DPU' | 'DDP'
          - `mrns` string[], nullable
          - `ens_mrns` string[], nullable
          - `exs_mrns` string[], nullable
          - `ducrs` string[], nullable
        - `origin_country_of_goods` string, nullable
        - `destination_country_of_goods` string, nullable
        - `contact_emails` string[], nullable
        - `external_id` string, nullable
    - `id` string, uuid, nullable — Replaced by `match > order > id`. Please use `match > order > id` instead

## Response `200`

Successful Response

- PartialOrderUpdateResponse — Response schema for the partial order update webhook. This schema is used to return errors or success messages.
  - `errors` ErrorStatus[], nullable — List of errors that occurred during the webhook processing. If empty/omitted, the webhook was processed successfully.
    - `error_type` 'USER_INPUT_ERROR' | 'INTERNAL_ERROR' | 'NOT_SUPPORTED', required
    - `error_message` string, nullable — (User visible) error message

## Other responses

- `400` — Bad Request — invalid input or malformed request
- `401` — Unauthorized — missing or invalid authentication credentials
- `403` — Forbidden — insufficient permissions for this operation
- `422` — Validation Error
- `429` — Too Many Requests — rate limit exceeded. See the `Retry-After` header
- `500` — Internal Server Error
- `503` — Service Unavailable — temporarily unable to handle the request

---

[API](https://skmtc.dev/qargo/apis/qargo-tms-api.md) · [All operations](https://skmtc.dev/qargo/apis/qargo-tms-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/qargo/qargo-tms-api/revisions/17297902e7ce/schema)
