> For the complete documentation index, see [llms.txt](https://docs.one-record.fr/one-record/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.one-record.fr/one-record/rest-api/shipment/update-a-shipment.md).

# Update a shipment

Depending on the state of a shipment, some or all of its attributes can be modified. List of attributes are described in [create shipment](/one-record/rest-api/shipment/create-a-shipment.md) page.

As long as it is not handled by the warehouse, all the attributes can be modified:

* after creation of export shipment with `ORDER` [event](/one-record/rest-api/shipment-event.md), before `GOODS_RECEIPT` event.
* after creation of import shipment with `ORDER` [event](/one-record/rest-api/shipment-event.md), before `PICKUP` or `GOODS_RECEIPT` event, whichever comes first.
* after creation of export delivery shipment with `DELIVERY_ORDER` [event](/one-record/rest-api/shipment-event.md), before `DELIVERY_PREPARATION` event.

For export shipment, as long as it has not reach the `DELIVERY_PREPARATION` [event](/one-record/rest-api/shipment-event.md), the master `mawbNumber` and house `hawbNumber` numbers can be added/modified. This is also the last moment at which e.g. [services](/one-record/rest-api/shipment-service.md) can be added.

For every type of shipments, the `customerReference` can be modified until the final `DELIVERY_COMPANY`/`DELIVERY` [event](/one-record/rest-api/shipment-event.md). Once delivered, the shipment will be archived in read-only mode, so not editable any more.

{% openapi src="/files/qngD8jpzUREPAzseRyUF" path="/shipment/{shipmentId}" method="put" %}
[docs-json.json](https://47809391-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F80oi29w502nJ8ZgtIaP7%2Fuploads%2Fmy4IFM0j1GgiErV3QDRr%2Fdocs-json.json?alt=media\&token=5cca907c-0469-4e68-9d3c-4148c667a737)
{% endopenapi %}
