Skip to main content
PUT
Update shipping method

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

storeId
string
required

Store ID

Example:

"64e5a8a1af49a89df37e4ee7"

checkoutExperienceId
string
required

Checkout experience ID.

Example:

"66b2f1c9e4b0a1d2c3f4a5b6"

shippingMethodId
string
required

Shipping method ID, from the checkout experience's methods.

Example:

"66b2f1c9e4b0a1d2c3f4a5c7"

Body

application/json
type
enum<string>
required

How the price is produced. 'fixed' is a merchant-set price served by Redo with no carrier involved and requires rates. 'dynamic' quotes live carrier rates through Redo and requires either carrierServices or serviceLevel. Custom (script-priced) methods cannot be created or edited here.

Available options:
fixed,
dynamic
name
string
required

Shopper-facing name of the shipping method as it appears at checkout, e.g. 'Standard'. May contain customer-name template variables — '{customer_name}', '{customer_name:first}', '{customer_name:last}' — which are substituted per shopper. Send them back verbatim when you are not deliberately changing them, or you will silently strip the merchant's personalization.

Example:

"Standard"

description
string
required

Shopper-facing description shown next to the method at checkout. Like name, it may contain customer-name template variables.

Example:

"5-8 business days"

fallbackName
string

Shopper-facing name used in place of name when name contains customer-name template variables and the shopper's name is not available at quote time. Ignored when name has no variables.

fallbackDescription
string

Shopper-facing description used in place of description under the same condition as fallbackName.

serviceCode
string

Identifier the storefront platform uses for this shipping option at checkout.

coverageTypes
object

Redo coverage bundled into this shipping method.

orderTags
string[]

Tags applied to the order when this method is bought.

addLandedCostsOverride
boolean

Add landed costs (duties and import fees) to this method's price, overriding the experience-level setting.

rates
object[]

Fixed methods only, and required for them. One entry per price. A single entry with no conditions is a flat price; multiple entries express weight or cart-value ranges and free-shipping thresholds.

carrierServices
object[]

Dynamic methods only. The carrier services to quote live rates from. Required unless serviceLevel is set.

rateSelection
enum<string>

Dynamic methods only. Which of the eligible live rates to show the shopper. Values are lowercase: 'cheapest', 'fastest'.

Available options:
cheapest,
fastest,
custom
serviceLevel
enum<string>

Dynamic methods only. Quote the cheapest carrier service delivering within this service level's window instead of pinning carrier services.

Available options:
Standard,
Plus,
Express
excludedCarriers
enum<string>[]

Dynamic methods only. Carriers excluded from this method's candidate set.

Available options:
FedEx,
UPS,
UPSSurePost,
USPS,
USPSReturns,
UspsShip,
FedExSmartPost,
AmazonShipping,
DHLExpress,
DhlEcs,
Veho,
APC,
FirstMile,
AustraliaPost,
CanadaPost,
GSO,
AsendiaUsa,
RoyalMailV3,
SpeeDee,
PassportGlobal,
ePostGlobal,
LandmarkGlobal,
ETA Express,
OnTracV3,
GlobalE,
UPSMailInnovations,
Purolator,
UniUni,
StallionExpress,
EcomExpress,
ChitChats,
PostNL,
Intelcom,
FleetOptics,
ICS,
WhizDelivery,
Tik Tok,
CanparExpress,
GOFO,
P2P
markup
object

Dynamic methods only. Markup applied to every live carrier rate on this method.

rounding
enum<string>

Dynamic methods only. How to round the marked-up price before showing it.

Available options:
NEAREST_WHOLE,
NEAREST_WHOLE_MINUS_ONE,
NEAREST_WHOLE_MINUS_FIVE,
NEAREST_HALF,
NEAREST_QUARTER,
NEAREST_TENTH,
NEAREST_TWENTIETH
priceBounds
object

Dynamic methods only. Hard clamp applied after markup and rounding.

fulfillmentDelayDaysOverride
integer

Dynamic methods only. Days Redo assumes an order takes to ship when it estimates delivery dates for this method, overriding the experience's fulfillmentDelayDaysOverride. Omit it to use the experience's value. A whole number of days, zero or more.

Required range: x >= 0
Example:

3

priceConstraints
object

Bounds the final price this method may be sold at, after every other pricing rule has run. Omit to leave the method's existing constraint untouched; send one to replace it outright. There is no way to clear a constraint through this API.

Response

Updated

checkoutExperienceId
string
required

The checkout experience the method belongs to.

Example:

"66b2f1c9e4b0a1d2c3f4a5b6"

shippingMethodId
string
required

The shipping method that was written. Read it back with GET /stores/{storeId}/checkout-experiences/{checkoutExperienceId}.

Example:

"66b2f1c9e4b0a1d2c3f4a5c7"