Update Shipping Zone
curl --request PUT \
--url https://api.launchmystore.io/api/v1/shipping_zones/{zone_id}.json \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"shippingName": "<string>",
"zone": [
{}
],
"description": "<string>",
"price": 123,
"type": "<string>",
"digitalProd": true,
"minWeight": 123,
"maxWeight": 123,
"minPrice": 123,
"maxPrice": 123
}
'import requests
url = "https://api.launchmystore.io/api/v1/shipping_zones/{zone_id}.json"
payload = {
"shippingName": "<string>",
"zone": [{}],
"description": "<string>",
"price": 123,
"type": "<string>",
"digitalProd": True,
"minWeight": 123,
"maxWeight": 123,
"minPrice": 123,
"maxPrice": 123
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
shippingName: '<string>',
zone: [{}],
description: '<string>',
price: 123,
type: '<string>',
digitalProd: true,
minWeight: 123,
maxWeight: 123,
minPrice: 123,
maxPrice: 123
})
};
fetch('https://api.launchmystore.io/api/v1/shipping_zones/{zone_id}.json', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.launchmystore.io/api/v1/shipping_zones/{zone_id}.json",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'shippingName' => '<string>',
'zone' => [
[
]
],
'description' => '<string>',
'price' => 123,
'type' => '<string>',
'digitalProd' => true,
'minWeight' => 123,
'maxWeight' => 123,
'minPrice' => 123,
'maxPrice' => 123
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.launchmystore.io/api/v1/shipping_zones/{zone_id}.json"
payload := strings.NewReader("{\n \"shippingName\": \"<string>\",\n \"zone\": [\n {}\n ],\n \"description\": \"<string>\",\n \"price\": 123,\n \"type\": \"<string>\",\n \"digitalProd\": true,\n \"minWeight\": 123,\n \"maxWeight\": 123,\n \"minPrice\": 123,\n \"maxPrice\": 123\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.launchmystore.io/api/v1/shipping_zones/{zone_id}.json")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"shippingName\": \"<string>\",\n \"zone\": [\n {}\n ],\n \"description\": \"<string>\",\n \"price\": 123,\n \"type\": \"<string>\",\n \"digitalProd\": true,\n \"minWeight\": 123,\n \"maxWeight\": 123,\n \"minPrice\": 123,\n \"maxPrice\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.launchmystore.io/api/v1/shipping_zones/{zone_id}.json")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"shippingName\": \"<string>\",\n \"zone\": [\n {}\n ],\n \"description\": \"<string>\",\n \"price\": 123,\n \"type\": \"<string>\",\n \"digitalProd\": true,\n \"minWeight\": 123,\n \"maxWeight\": 123,\n \"minPrice\": 123,\n \"maxPrice\": 123\n}"
response = http.request(request)
puts response.read_body{
"status": 200,
"state": "success",
"message": null,
"data": {
"shipping_zone": {
"shippingZoneId": "9c2e1f4a-8b33-4d71-a0e6-1f2c3d4e5b6a",
"shippingName": "United States",
"zone": ["US"],
"description": "Ground shipping",
"price": "4.99",
"type": "Simple",
"digitalProd": true,
"minWeight": null,
"maxWeight": null,
"minPrice": null,
"maxPrice": null,
"storeId": "2a7c9e10-1f3b-4d62-8a51-9b0c7e4f2d8a",
"createdAt": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-25T10:00:00Z"
}
},
"count": null,
"pagination": null
}
Shipping Zones
Update Shipping Zone
Update a shipping zone
PUT
/
api
/
v1
/
shipping_zones
/
{zone_id}
.json
Update Shipping Zone
curl --request PUT \
--url https://api.launchmystore.io/api/v1/shipping_zones/{zone_id}.json \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"shippingName": "<string>",
"zone": [
{}
],
"description": "<string>",
"price": 123,
"type": "<string>",
"digitalProd": true,
"minWeight": 123,
"maxWeight": 123,
"minPrice": 123,
"maxPrice": 123
}
'import requests
url = "https://api.launchmystore.io/api/v1/shipping_zones/{zone_id}.json"
payload = {
"shippingName": "<string>",
"zone": [{}],
"description": "<string>",
"price": 123,
"type": "<string>",
"digitalProd": True,
"minWeight": 123,
"maxWeight": 123,
"minPrice": 123,
"maxPrice": 123
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
shippingName: '<string>',
zone: [{}],
description: '<string>',
price: 123,
type: '<string>',
digitalProd: true,
minWeight: 123,
maxWeight: 123,
minPrice: 123,
maxPrice: 123
})
};
fetch('https://api.launchmystore.io/api/v1/shipping_zones/{zone_id}.json', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.launchmystore.io/api/v1/shipping_zones/{zone_id}.json",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'shippingName' => '<string>',
'zone' => [
[
]
],
'description' => '<string>',
'price' => 123,
'type' => '<string>',
'digitalProd' => true,
'minWeight' => 123,
'maxWeight' => 123,
'minPrice' => 123,
'maxPrice' => 123
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.launchmystore.io/api/v1/shipping_zones/{zone_id}.json"
payload := strings.NewReader("{\n \"shippingName\": \"<string>\",\n \"zone\": [\n {}\n ],\n \"description\": \"<string>\",\n \"price\": 123,\n \"type\": \"<string>\",\n \"digitalProd\": true,\n \"minWeight\": 123,\n \"maxWeight\": 123,\n \"minPrice\": 123,\n \"maxPrice\": 123\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.launchmystore.io/api/v1/shipping_zones/{zone_id}.json")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"shippingName\": \"<string>\",\n \"zone\": [\n {}\n ],\n \"description\": \"<string>\",\n \"price\": 123,\n \"type\": \"<string>\",\n \"digitalProd\": true,\n \"minWeight\": 123,\n \"maxWeight\": 123,\n \"minPrice\": 123,\n \"maxPrice\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.launchmystore.io/api/v1/shipping_zones/{zone_id}.json")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"shippingName\": \"<string>\",\n \"zone\": [\n {}\n ],\n \"description\": \"<string>\",\n \"price\": 123,\n \"type\": \"<string>\",\n \"digitalProd\": true,\n \"minWeight\": 123,\n \"maxWeight\": 123,\n \"minPrice\": 123,\n \"maxPrice\": 123\n}"
response = http.request(request)
puts response.read_body{
"status": 200,
"state": "success",
"message": null,
"data": {
"shipping_zone": {
"shippingZoneId": "9c2e1f4a-8b33-4d71-a0e6-1f2c3d4e5b6a",
"shippingName": "United States",
"zone": ["US"],
"description": "Ground shipping",
"price": "4.99",
"type": "Simple",
"digitalProd": true,
"minWeight": null,
"maxWeight": null,
"minPrice": null,
"maxPrice": null,
"storeId": "2a7c9e10-1f3b-4d62-8a51-9b0c7e4f2d8a",
"createdAt": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-25T10:00:00Z"
}
},
"count": null,
"pagination": null
}
Path Parameters
The shipping zone ID (UUID).
Body Parameters
Provided fields are applied directly to the zone. Unlike create, update does not aliasname/countries; send the zone’s own field names.
Zone name.
ISO 3166-1 alpha-2 country codes for this zone.
Zone description.
Flat shipping price for this zone.
Rate model:
Simple, Weight, or Price.Whether the zone applies to digital products.
Minimum order weight (used when
type is Weight).Maximum order weight (used when
type is Weight).Minimum order subtotal (used when
type is Price).Maximum order subtotal (used when
type is Price).Response
Returns the standard response envelope with the updated zone underdata.shipping_zone.
{
"status": 200,
"state": "success",
"message": null,
"data": {
"shipping_zone": {
"shippingZoneId": "9c2e1f4a-8b33-4d71-a0e6-1f2c3d4e5b6a",
"shippingName": "United States",
"zone": ["US"],
"description": "Ground shipping",
"price": "4.99",
"type": "Simple",
"digitalProd": true,
"minWeight": null,
"maxWeight": null,
"minPrice": null,
"maxPrice": null,
"storeId": "2a7c9e10-1f3b-4d62-8a51-9b0c7e4f2d8a",
"createdAt": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-25T10:00:00Z"
}
},
"count": null,
"pagination": null
}
Error Response
{
"status": 404,
"state": "error",
"message": "Shipping zone not found",
"data": null
}
⌘I