Queries
market— Fetch a single market by its id.markets— List markets, optionally filtered by whether they are live.
Mutations
upsertMarket— Create a market, or update one whenidis given. Returns null if no market with that id is owned by the caller. Adding a country sets it up on the store’s sales channel, so this can take several seconds. Removing a country tears down its Shopify market, catalog and price list. Throws a 400 error with an extension code of MARKET_COUNTRIES_REQUIRED, DUPLICATE_MARKET_COUNTRY, MARKET_COUNTRY_ADDED_AND_REMOVED, MARKET_COUNTRY_NOT_IN_MARKET, INVALID_MARKUP, or INVALID_MARKET_SETTINGS when the input is invalid (settings are checked against the market as it would be after the update), a 400 error with an extension code of UNEXPECTED_MARKET_RESOLUTION for a resolution no conflict needs, a 409 CONFLICT error (with an extension code of MARKET_COUNTRY_IN_USE) when a country already belongs to another market, and a 409 CONFLICT error (with an extension code of MARKET_COUNTRY_CONFLICT and aconflictsextension listing, per country, the conflicting Shopify market handle, its other countries, areasonsentence explaining the conflict, andallowedResolutionsas{ kind, effect }pairs whoseeffectsays what that choice does to the merchant’s Shopify market) when a country being added is in one of the merchant’s own Shopify markets without an allowed resolution. Nothing is written when a request fails.
Objects
Market— A cross-border market: a set of destination countries that share one landed-cost pricing policy.MarketBreakdownLabels— Shopper-facing labels for the checkout landed-cost breakdown. A null label uses the default wording.MarketCountry— A destination country a market sells into.
Input objects
MarketBreakdownLabelsInput— Custom labels for the checkout landed-cost breakdown. Each is 1–80 characters; omit a label to use the default wording.MarketCountryConflictResolutionInput— How to resolve a country being added that is already in a Shopify market Redo does not manage.UpsertMarketInput— The settings of a market to create or update. When updating, omit a field to leave it unchanged.
Enums
LandedCostBreakdownDisplay— How landed-cost lines that are not charged appear in the checkout breakdown.LandedCostComponent— A component of the landed cost of a cross-border order.MarketCountryConflictResolutionKind— What to do with the merchant’s own Shopify market that already sells into a country being added.MarketMarkupStrategy— How a market’s markup combines with the landed cost baked into the price.MarketPricingMode— How a market turns landed costs into the prices shoppers see.MarketSortKey— A field this list can be ordered by; pass to the list’sorderByargument and pair withreverseto flip direction.