Most freight APIs are a booking form with JSON on top. The tell is that they cannot express uncertainty: every field is required, every response is definitive, and nothing tells you how confident the ETA is.
Idempotency is not optional
Bookings are expensive to duplicate and networks are unreliable. Every mutating endpoint takes an idempotency key, and replaying a request returns the original result rather than creating a second consignment.
