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
string
required
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.
string
Zone name.
array
ISO 3166-1 alpha-2 country codes for this zone.
string
Zone description.
number
Flat shipping price for this zone.
string
Rate model:
Simple, Weight, or Price.boolean
Whether the zone applies to digital products.
number
Minimum order weight (used when
type is Weight).number
Maximum order weight (used when
type is Weight).number
Minimum order subtotal (used when
type is Price).number
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
}