{"openapi":"3.1.0","info":{"title":"ShipMate Shipping Quote API","version":"1.0.0","description":"Public shipping estimates from Japan with no authentication. Use the Send It Home exact-weight endpoint when the customer is in Japan with the goods, and Shop for Me when the customer is outside Japan and wants ShipMate to buy from Japanese stores. Prices are estimates in JPY; always read the included and excluded charges.","contact":{"name":"ShipMate support","url":"https://www.shipmate.jp/en/contact-us","email":"support@shipmate.jp"}},"servers":[{"url":"https://www-api.shipmate.jp"}],"externalDocs":{"description":"Shipping quote API and remote MCP documentation","url":"https://www.shipmate.jp/en/developers/shipping-quotes"},"components":{"schemas":{},"parameters":{}},"paths":{"/shipping-quote":{"get":{"tags":["Shipping"],"summary":"Shipping quote for a destination country. Weight-priced (Japan Post EMS) by default; volumetric lanes are priced live against the carrier from the parcel's dimensions and destination city.","operationId":"get_ShippingQuote","parameters":[{"schema":{"type":"string","enum":["send_it_home","shop_for_me"],"default":"send_it_home"},"required":false,"name":"service","in":"query"},{"schema":{"type":"string"},"required":true,"name":"country_code","in":"query"},{"schema":{"type":"string","minLength":1,"maxLength":64},"required":false,"name":"city","in":"query"},{"schema":{"type":"integer","minimum":1,"maximum":200},"required":false,"name":"length_cm","in":"query"},{"schema":{"type":"integer","minimum":1,"maximum":200},"required":false,"name":"width_cm","in":"query"},{"schema":{"type":"integer","minimum":1,"maximum":200},"required":false,"name":"height_cm","in":"query"},{"schema":{"type":"string"},"required":false,"name":"weights_kg","in":"query"}],"responses":{"200":{"description":"Quote with handling + margin applied. `pricing_model` says how to read it; `prices` carries a weight → price ladder either way.","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"service":{"type":"string","enum":["send_it_home","shop_for_me"]},"country_code":{"type":"string"},"currency":{"type":"string","enum":["JPY"]},"pricing_model":{"type":"string","enum":["weight"]},"carrier":{"type":"string","enum":["JAPAN_POST_INTERNATIONAL_EMS"]},"duty_included":{"type":"boolean"},"duties":{"type":"object","properties":{"model":{"type":"string","enum":["prepaid_at_cost","recipient_pays"]},"provider":{"type":"string","enum":["zonos"]},"estimate_jpy":{"type":["integer","null"]},"band_pct":{"type":"object","properties":{"low":{"type":"number"},"high":{"type":"number"}},"required":["low","high"]}},"required":["model","estimate_jpy"]},"prices":{"type":"array","items":{"type":"object","properties":{"weight":{"type":"number"},"price":{"type":"integer"},"chargeable_weight":{"type":"number"}},"required":["weight","price"]}}},"required":["country_code","currency","pricing_model","carrier","duty_included","prices"]},{"type":"object","properties":{"service":{"type":"string","enum":["send_it_home","shop_for_me"]},"country_code":{"type":"string"},"currency":{"type":"string","enum":["JPY"]},"pricing_model":{"type":"string","enum":["volumetric_live"]},"carrier":{"type":"string","enum":["DHL_EXPRESS"]},"duty_included":{"type":"boolean"},"duties":{"type":"object","properties":{"model":{"type":"string","enum":["prepaid_at_cost","recipient_pays"]},"provider":{"type":"string","enum":["zonos"]},"estimate_jpy":{"type":["integer","null"]},"band_pct":{"type":"object","properties":{"low":{"type":"number"},"high":{"type":"number"}},"required":["low","high"]}},"required":["model","estimate_jpy"]},"city":{"type":"string"},"city_is_default":{"type":"boolean"},"city_is_fallback":{"type":"boolean"},"postal_code":{"type":["string","null"]},"available_cities":{"type":"array","items":{"type":"object","properties":{"value":{"type":"string"},"label":{"type":"string"}},"required":["value","label"]}},"dimensions_cm":{"type":"object","properties":{"length":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"}},"required":["length","width","height"]},"dimensions_are_default":{"type":"boolean"},"volumetric_kg":{"type":"number"},"max_weight_kg":{"type":"number"},"box_presets":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","enum":["S","M","L"]},"max_dimension_sum_cm":{"type":"number"},"dimensions_cm":{"type":"object","properties":{"length":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"}},"required":["length","width","height"]},"volumetric_kg":{"type":"number"}},"required":["id","max_dimension_sum_cm","dimensions_cm","volumetric_kg"]}},"transit_days":{"type":["object","null"],"properties":{"min":{"type":"number"},"max":{"type":"number"}},"required":["min","max"]},"prices":{"type":"array","items":{"type":"object","properties":{"weight":{"type":"number"},"price":{"type":"integer"},"chargeable_weight":{"type":"number"}},"required":["weight","price"]}}},"required":["country_code","currency","pricing_model","carrier","duty_included","city","city_is_default","city_is_fallback","postal_code","available_cities","dimensions_cm","dimensions_are_default","volumetric_kg","max_weight_kg","box_presets","transit_days","prices"]}]}}}},"400":{"description":"Invalid country_code, unknown city for this lane, partial dimensions, or a parcel over the size limit."},"429":{"description":"Rate limit exceeded."},"503":{"description":"The carrier could not be reached for a live quote. Transient."}}}},"/post-offices":{"get":{"tags":["Post Offices"],"summary":"Japan Post offices within a lat/lng bounding box. Used by the map on the Shipmate.jp marketing site.","operationId":"get_PostOffices","parameters":[{"schema":{"type":["number","null"],"minimum":-90,"maximum":90},"required":false,"name":"north","in":"query"},{"schema":{"type":["number","null"],"minimum":-90,"maximum":90},"required":false,"name":"south","in":"query"},{"schema":{"type":["number","null"],"minimum":-180,"maximum":180},"required":false,"name":"east","in":"query"},{"schema":{"type":["number","null"],"minimum":-180,"maximum":180},"required":false,"name":"west","in":"query"},{"schema":{"type":"integer","minimum":1,"maximum":500,"default":200},"required":false,"name":"limit","in":"query"}],"responses":{"200":{"description":"Matching post offices (up to `limit`).","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"external_id":{"type":"string"},"name":{"type":"string"},"name_kana":{"type":["string","null"]},"zip_code":{"type":"string"},"address":{"type":"string"},"prefecture_code":{"type":"string"},"city_code":{"type":"string"},"latitude":{"type":"number"},"longitude":{"type":"number"},"parking_lots":{"type":["integer","null"]},"supports_digital_counter":{"type":"boolean"},"detail_url":{"type":["string","null"]},"business_hours":{}},"required":["id","external_id","name","name_kana","zip_code","address","prefecture_code","city_code","latitude","longitude","parking_lots","supports_digital_counter","detail_url"]}}}}},"400":{"description":"Invalid bounding box or limit."},"429":{"description":"Rate limit exceeded."}}}},"/suspended-destinations":{"get":{"tags":["Suspended Destinations"],"summary":"Destination countries where carrier service is suspended. Backed by the `go-suspended-destinations` Flagship flag so ops can open or close a lane without a deploy. Consumed by the shipmate.jp marketing site.","operationId":"get_SuspendedDestinations","responses":{"200":{"description":"The suspended destinations. An empty array means nothing is suspended — which is also what a failed flag read returns, so treat the `suspended_destinations.flag_error` log line as the alarm.","content":{"application/json":{"schema":{"type":"object","properties":{"destinations":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"resumptionDate":{"type":"string"},"reason":{"type":"object","additionalProperties":{"type":"string"}}},"required":["code"]}}},"required":["destinations"]}}}}}}},"/shipping-price/send-it-home":{"get":{"tags":["Shipping"],"summary":"Send It Home — shipping price for one parcel weight","description":"For customers already in Japan with the goods in hand. Create a shipment, drop the parcel at almost any Japan Post office using a QR code, and ShipMate weighs it and ships it internationally with tracking.\n\nIncludes an estimate for domestic delivery to the ShipMate warehouse. The exact price is calculated after the parcel is weighed and measured, and is paid once, before it ships. Booking is free.\n\nPrices are per-parcel totals in whole Japanese yen with ShipMate's service fee already applied — do not add a fee on top. Read `includes` and `excludes` before presenting this figure as a total. No authentication is required.","operationId":"get_SendItHomeShippingPrice","parameters":[{"schema":{"type":"string","description":"Destination ISO 3166-1 alpha-3 country code, for example NOR for Norway."},"required":true,"description":"Destination ISO 3166-1 alpha-3 country code, for example NOR for Norway.","name":"country_code","in":"query"},{"schema":{"type":"number","exclusiveMinimum":0,"maximum":30,"description":"Actual parcel weight in kilograms. Decimals such as 4.6 are supported."},"required":true,"description":"Actual parcel weight in kilograms. Decimals such as 4.6 are supported.","name":"weight_kg","in":"query"}],"responses":{"200":{"description":"The price for this weight and destination.","content":{"application/json":{"schema":{"type":"object","properties":{"service":{"type":"string","enum":["send_it_home","shop_for_me"]},"service_name":{"type":"string"},"service_description":{"type":"string"},"country_code":{"type":"string"},"weight_kg":{"type":"number"},"currency":{"type":"string","enum":["JPY"]},"price":{"type":"integer"},"carrier":{"type":"string","enum":["JAPAN_POST_INTERNATIONAL_EMS"]},"is_estimate":{"type":"boolean","enum":[true]},"includes":{"type":"array","items":{"type":"string","enum":["international_shipping","service_fee","domestic_shipping_estimate","domestic_delivery_to_warehouse","item_purchase_price","buying_fee","import_duty_and_tax"]}},"excludes":{"type":"array","items":{"type":"string","enum":["international_shipping","service_fee","domestic_shipping_estimate","domestic_delivery_to_warehouse","item_purchase_price","buying_fee","import_duty_and_tax"]}},"price_note":{"type":"string"},"duties":{"type":"object","properties":{"model":{"type":"string","enum":["prepaid_at_cost","recipient_pays"]},"provider":{"type":"string","enum":["zonos"]},"estimate_jpy":{"type":["integer","null"]},"band_pct":{"type":"object","properties":{"low":{"type":"number"},"high":{"type":"number"}},"required":["low","high"]}},"required":["model","estimate_jpy"]},"book_at":{"type":"string"},"see_also":{"type":"array","items":{"type":"object","properties":{"service":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"url":{"type":"string"}},"required":["service","name","description","url"]}}},"required":["service","service_name","service_description","country_code","weight_kg","currency","price","carrier","is_estimate","includes","excludes","price_note","duties","book_at","see_also"]}}}},"400":{"description":"Invalid country_code or weight_kg, an unsupported destination, or a destination priced by parcel size rather than weight."},"422":{"description":"The destination cannot carry this parcel — over its EMS weight limit, or no EMS service to it at this weight."},"429":{"description":"Rate limit exceeded."}}}},"/shipping-price/shop-for-me":{"get":{"tags":["Shipping"],"summary":"Shop for Me — shipping price for one parcel weight","description":"For customers outside Japan who have bought nothing yet. Paste links to items in Japanese online stores; ShipMate buys each item on the customer's behalf, consolidates them into one parcel at its warehouse, and ships it abroad.\n\nShipping is charged later, once the order is weighed. Delivery from each store to the ShipMate warehouse is not included — each store ships separately, so ordering from several stores costs more. The item price and the 10% buying fee are charged separately at checkout.\n\nPrices are per-parcel totals in whole Japanese yen with ShipMate's service fee already applied — do not add a fee on top. Read `includes` and `excludes` before presenting this figure as a total. No authentication is required.","operationId":"get_ShopForMeShippingPrice","parameters":[{"schema":{"type":"string","description":"Destination ISO 3166-1 alpha-3 country code, for example NOR for Norway."},"required":true,"description":"Destination ISO 3166-1 alpha-3 country code, for example NOR for Norway.","name":"country_code","in":"query"},{"schema":{"type":"number","exclusiveMinimum":0,"maximum":30,"description":"Actual parcel weight in kilograms. Decimals such as 4.6 are supported."},"required":true,"description":"Actual parcel weight in kilograms. Decimals such as 4.6 are supported.","name":"weight_kg","in":"query"}],"responses":{"200":{"description":"The price for this weight and destination.","content":{"application/json":{"schema":{"type":"object","properties":{"service":{"type":"string","enum":["send_it_home","shop_for_me"]},"service_name":{"type":"string"},"service_description":{"type":"string"},"country_code":{"type":"string"},"weight_kg":{"type":"number"},"currency":{"type":"string","enum":["JPY"]},"price":{"type":"integer"},"carrier":{"type":"string","enum":["JAPAN_POST_INTERNATIONAL_EMS"]},"is_estimate":{"type":"boolean","enum":[true]},"includes":{"type":"array","items":{"type":"string","enum":["international_shipping","service_fee","domestic_shipping_estimate","domestic_delivery_to_warehouse","item_purchase_price","buying_fee","import_duty_and_tax"]}},"excludes":{"type":"array","items":{"type":"string","enum":["international_shipping","service_fee","domestic_shipping_estimate","domestic_delivery_to_warehouse","item_purchase_price","buying_fee","import_duty_and_tax"]}},"price_note":{"type":"string"},"duties":{"type":"object","properties":{"model":{"type":"string","enum":["prepaid_at_cost","recipient_pays"]},"provider":{"type":"string","enum":["zonos"]},"estimate_jpy":{"type":["integer","null"]},"band_pct":{"type":"object","properties":{"low":{"type":"number"},"high":{"type":"number"}},"required":["low","high"]}},"required":["model","estimate_jpy"]},"book_at":{"type":"string"},"see_also":{"type":"array","items":{"type":"object","properties":{"service":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"url":{"type":"string"}},"required":["service","name","description","url"]}}},"required":["service","service_name","service_description","country_code","weight_kg","currency","price","carrier","is_estimate","includes","excludes","price_note","duties","book_at","see_also"]}}}},"400":{"description":"Invalid country_code or weight_kg, an unsupported destination, or a destination priced by parcel size rather than weight."},"422":{"description":"The destination cannot carry this parcel — over its EMS weight limit, or no EMS service to it at this weight."},"429":{"description":"Rate limit exceeded."}}}}},"webhooks":{}}