Delete variant
curl --request DELETE \
--url https://api.komerza.com/stores/{storeId}/products/{productId}/variants/{variantId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.komerza.com/stores/{storeId}/products/{productId}/variants/{variantId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.delete(url, headers=headers)
print(response.text)const options = {method: 'DELETE', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.komerza.com/stores/{storeId}/products/{productId}/variants/{variantId}', 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.komerza.com/stores/{storeId}/products/{productId}/variants/{variantId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.komerza.com/stores/{storeId}/products/{productId}/variants/{variantId}"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://api.komerza.com/stores/{storeId}/products/{productId}/variants/{variantId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.komerza.com/stores/{storeId}/products/{productId}/variants/{variantId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": true,
"message": "<string>",
"code": "<string>",
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"dateCreated": "2023-11-07T05:31:56Z",
"name": "<string>",
"productId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"storeId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"cost": 50000,
"deliveryTypes": [
"<string>"
],
"files": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"dateCreated": "2023-11-07T05:31:56Z",
"friendlyName": "<string>",
"ipAddress": "<string>",
"userId": "<string>"
}
],
"minimumQuantity": 123,
"maximumQuantity": 123,
"order": 123,
"imageNames": [
"<string>"
],
"stock": 123,
"customFields": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"dateCreated": "2023-11-07T05:31:56Z",
"variantId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"label": "<string>",
"identifier": "<string>",
"type": "<string>",
"isRequired": true,
"options": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"dateCreated": "2023-11-07T05:31:56Z",
"customFieldId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"label": "<string>",
"value": "<string>",
"order": 1073741823
}
],
"placeholder": "<string>",
"hint": "<string>"
}
],
"volumeDiscounts": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"dateCreated": "2023-11-07T05:31:56Z",
"variantId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"quantity": 1073741824,
"discountValue": 50000
}
],
"disableVolumeDiscountOnCoupon": true,
"randomizeKeyDelivery": true,
"description": "<string>",
"dynamicUrl": "<string>",
"deliveryMessage": "<string>",
"metadata": "<string>",
"customIntervalDays": 123
}
}{
"success": true,
"message": "<string>",
"code": "<string>",
"data": "<unknown>"
}{
"success": true,
"message": "<string>",
"code": "<string>",
"data": "<unknown>"
}{
"success": true,
"message": "<string>",
"code": "<string>",
"data": "<unknown>"
}{
"success": true,
"message": "<string>",
"code": "<string>",
"data": "<unknown>"
}Variants
Delete Variant
Removes the specified variant.
Requires the stores.products.update permission.
DELETE
/
stores
/
{storeId}
/
products
/
{productId}
/
variants
/
{variantId}
Delete variant
curl --request DELETE \
--url https://api.komerza.com/stores/{storeId}/products/{productId}/variants/{variantId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.komerza.com/stores/{storeId}/products/{productId}/variants/{variantId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.delete(url, headers=headers)
print(response.text)const options = {method: 'DELETE', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.komerza.com/stores/{storeId}/products/{productId}/variants/{variantId}', 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.komerza.com/stores/{storeId}/products/{productId}/variants/{variantId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.komerza.com/stores/{storeId}/products/{productId}/variants/{variantId}"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://api.komerza.com/stores/{storeId}/products/{productId}/variants/{variantId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.komerza.com/stores/{storeId}/products/{productId}/variants/{variantId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": true,
"message": "<string>",
"code": "<string>",
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"dateCreated": "2023-11-07T05:31:56Z",
"name": "<string>",
"productId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"storeId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"cost": 50000,
"deliveryTypes": [
"<string>"
],
"files": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"dateCreated": "2023-11-07T05:31:56Z",
"friendlyName": "<string>",
"ipAddress": "<string>",
"userId": "<string>"
}
],
"minimumQuantity": 123,
"maximumQuantity": 123,
"order": 123,
"imageNames": [
"<string>"
],
"stock": 123,
"customFields": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"dateCreated": "2023-11-07T05:31:56Z",
"variantId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"label": "<string>",
"identifier": "<string>",
"type": "<string>",
"isRequired": true,
"options": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"dateCreated": "2023-11-07T05:31:56Z",
"customFieldId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"label": "<string>",
"value": "<string>",
"order": 1073741823
}
],
"placeholder": "<string>",
"hint": "<string>"
}
],
"volumeDiscounts": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"dateCreated": "2023-11-07T05:31:56Z",
"variantId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"quantity": 1073741824,
"discountValue": 50000
}
],
"disableVolumeDiscountOnCoupon": true,
"randomizeKeyDelivery": true,
"description": "<string>",
"dynamicUrl": "<string>",
"deliveryMessage": "<string>",
"metadata": "<string>",
"customIntervalDays": 123
}
}{
"success": true,
"message": "<string>",
"code": "<string>",
"data": "<unknown>"
}{
"success": true,
"message": "<string>",
"code": "<string>",
"data": "<unknown>"
}{
"success": true,
"message": "<string>",
"code": "<string>",
"data": "<unknown>"
}{
"success": true,
"message": "<string>",
"code": "<string>",
"data": "<unknown>"
}Deletes the variant’s license keys, custom fields and volume discounts with
it, and cannot be undone. Any unsold keys loaded on it are gone.
Authorizations
Your API key goes here
Path Parameters
The store’s unique identifier.
The product’s unique identifier.
The variant’s unique identifier.
Response
The object was successfully deleted.
Represents a default generic response for API endpoints.
Indicates whether the operation or response was successful.
A descriptive message providing additional context or information about the response.
The error code (if there was an error) to use when referencing the error
Represents a configurable variant associated with a product, containing various properties such as pricing, stock, delivery options, and custom fields.
Show child attributes
Show child attributes
Last modified on August 2, 2026
⌘I