Landed Cost Preview
GET/api/inbound-shipments/:inbound_shipment/landed-cost-preview
Returns, per purchase order line on this inbound shipment, every landed-cost bill allocation (from bills on this shipment, on other shipments carrying the line, and on the line's purchase order), the per-unit uplift each unit of THIS shipment carries and the resulting unit cost. Bills that produced no allocations are listed in unallocated_bills.
purchase-orders:readGrant this scope to your token under Settings → Developer → Personal Access Tokens.
A bill entered on an inbound shipment lands only on the units received on that shipment: its allocation is spread over the units the shipment carries for the line. A bill entered on the purchase order is spread over the line's ordered quantity. So landed_uplift_per_unit = this shipment's bills ÷ its units + purchase order bills ÷ ordered quantity; a bill on another shipment contributes 0. Each bill_breakdown entry gives spread_over_units (the units its allocation is spread over, or null when it reaches none of this shipment's units) and the resulting per_unit.
warnings lists bills that could not split by their own basis: a bill split by estimated duty that fell back to cost because none of its lines has an estimated duty (code duty_estimates_zero_fallback), and a weight-, volume- or cost-based bill whose basis was zero on every line (code proration_basis_fallback).
Authentication: Requires Bearer token.
Request
Responses
- 200
- 401
- 403
- 404
- 429
OK
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Not found — no record with the given identifier (or the route does not exist). Verify the ID before retrying.
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.