Update Portal Shipping Settings
PUT/api/admin/portal/shipping
Save the portal shipping settings in one transaction. Methods not listed keep their pricing. Settings that do not apply to a method's mode are cleared (a flat method loses its services and markup; a live-rate method loses its flat amount). Returns the same payload as Get Portal Shipping Settings.
This endpoint currently requires session authentication; Personal Access Token scope support is in progress.
Request body:
methods(array, required, may be empty, max 200). Each:shipping_method_id(integer, required, distinct, an existing shipping method).mode(required):live_rate,flat,freeoron_review. A pickup method can't belive_rate.flat_amount(number 0–1000000; required whenmodeisflat),flat_basis(order,unitorcase; defaultorder).services(array, max 20; at least one required forlive_rate):carrier(string, required, max 60),service(string, required, max 60),carrier_account_id(string, optional, max 80).handling_fee(number 0–100000),markup_percent(number 0–500),rounding(none,0.5,1),max_charge(number 0–1000000) — live rate only.min_subtotal,max_subtotal(number ≥ 0; max must be ≥ min),max_weight_oz(number ≥ 0),origin_warehouse_ids(array of warehouse ids, max 50).
free_threshold(number ≥ 0, nullable): 0 or null turns the threshold off.fallback_mode(required):flatoron_review.fallback_amount(number 0–1000000, nullable): required whenfallback_modeisflatand any method is live rate.
Authentication: Requires Bearer token (staff) with portal management access.
Request
Responses
- 200
- 401
- 403
- 422
- 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.
Unprocessable Content
Response Headers
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.