October 2026
Here's what shipped this month. For an overview of these features, see the Release Notes on the Shippit Help Centre.
Improvements
The v3 Order and Quote APIs accept and return four optional EU customs product identifiers on
product_attributes:non_standard_manufacturer_pid,standard_manufacturer_pid,eudr_dds_reference, andeudr_document_code. B2C shipments into the EU need them on each line item. Each value is up to 70 characters, Shippit trims it, and a blank counts as not provided. Shippit doesn't reject an order that leaves them out. For the details, see the orderproduct_attributes.The v3 Order and Quote APIs accept the
weight,length,width, anddepthof each product onproduct_attributes, in kilograms and metres, the same units asparcel_attributes. They describe one unit, not the line. Each one overrides the matching field in your stored product catalog, and zero, a negative number, or a blank counts as not measured. They change how Shippit packs an order only on accounts that use product-based package allocation. For the details, see the orderproduct_attributesand the quoteproduct_attributes.The v3 Label API returns
manifest_idandmanifest_numberon the order once it's booked, the same asGET /orders/{tracking_number}. Passmanifest_idto the book document endpoint to fetch the manifest document. The Label API leaves both fields out until Shippit books the order. For the details, see the label order object.The v3 Order and Label APIs return a
dangerous_goodsobject on each product once it has packing details, andnullotherwise. Thedangerous_goods_code,dangerous_goods_class, anddangerous_goods_textfields are still returned, so the change is backward compatible.The v3 Order API takes dangerous goods details as a
dangerous_goodsobject on each product, onPOST /ordersandPUT /orders/{tracking_number}. It holds thecode,class, andtextyou send today, plus thepacking_group(I,II, orIII), and thepacking_description,amount, andamount_unitof one unit. If you senddangerous_goods, fill in every field. Shippit rejects an order that leaves one out with a422that lists the missing fields. Shippit turns the object on account by account, and until it's on for yours, Shippit ignores it and reads thedangerous_goods_code,dangerous_goods_class, anddangerous_goods_textfields. For the details, see thedangerous_goodsobject and Shipping dangerous goods.
Fixes
PUT /orders/{tracking_number}accepts thepackage_typevaluesGET /orders/{tracking_number}returns, so you can send a parcel back as you got it. Before, aparcelorsatchelvalue failed the update with a400.palletsets the parcel as a pallet, Shippit ignoresparcelandsatchel, and a satchel must still be the only parcel in the order. For the details, see the updateparcel_attributes.On a v3 order with no
product_attributes, each product Shippit builds from aparcel_attributesrow keeps only the measurements you send. Before, those products took the length, width, and depth of your fallback parcel preset.
Deprecations
- The
dangerous_goods_code,dangerous_goods_class, anddangerous_goods_textproduct fields are deprecated. Shippit still accepts and returns them. Move to thedangerous_goodsobject.