Groups
Update group
Developer API operation for PATCH /dev/v1/groups/.
PATCH
/
dev
/
v1
/
groups
/
{uniqid}
Update group
curl --request PATCH \
--url https://api.shoppex.io/dev/v1/groups/{uniqid} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"title": "VIP Members",
"isUnlisted": false,
"productsBound": [
"prod_starter",
"prod_pro"
],
"sortOrder": 2
}
'const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
title: 'VIP Members',
isUnlisted: false,
productsBound: ['prod_starter', 'prod_pro'],
sortOrder: 2
})
};
fetch('https://api.shoppex.io/dev/v1/groups/{uniqid}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.shoppex.io/dev/v1/groups/{uniqid}"
payload = {
"title": "VIP Members",
"isUnlisted": False,
"productsBound": ["prod_starter", "prod_pro"],
"sortOrder": 2
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.shoppex.io/dev/v1/groups/{uniqid}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'title' => 'VIP Members',
'isUnlisted' => false,
'productsBound' => [
'prod_starter',
'prod_pro'
],
'sortOrder' => 2
]),
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.shoppex.io/dev/v1/groups/{uniqid}"
payload := strings.NewReader("{\n \"title\": \"VIP Members\",\n \"isUnlisted\": false,\n \"productsBound\": [\n \"prod_starter\",\n \"prod_pro\"\n ],\n \"sortOrder\": 2\n}")
req, _ := http.NewRequest("PATCH", 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))
}{
"data": {
"id": "grp_db_1",
"uniqid": "grp_1",
"shop_id": "shop_1",
"title": "VIP Members",
"is_unlisted": false,
"sort_order": 2,
"created_at": 1711962000,
"updated_at": 1711969200,
"products_bound": [
{
"uniqid": "prod_starter",
"title": "Starter Pack",
"type": "DIGITAL",
"price": 29.99,
"price_display": 29.99,
"currency": "USD",
"stock": 999,
"custom_fields": {
"badge": "vip"
}
},
{
"uniqid": "prod_pro",
"title": "Pro Pack",
"type": "DIGITAL",
"price": 79.99,
"price_display": 79.99,
"currency": "USD",
"stock": 500,
"custom_fields": {
"badge": "pro"
}
}
]
}
}⌘I
Update group
curl --request PATCH \
--url https://api.shoppex.io/dev/v1/groups/{uniqid} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"title": "VIP Members",
"isUnlisted": false,
"productsBound": [
"prod_starter",
"prod_pro"
],
"sortOrder": 2
}
'const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
title: 'VIP Members',
isUnlisted: false,
productsBound: ['prod_starter', 'prod_pro'],
sortOrder: 2
})
};
fetch('https://api.shoppex.io/dev/v1/groups/{uniqid}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.shoppex.io/dev/v1/groups/{uniqid}"
payload = {
"title": "VIP Members",
"isUnlisted": False,
"productsBound": ["prod_starter", "prod_pro"],
"sortOrder": 2
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.shoppex.io/dev/v1/groups/{uniqid}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'title' => 'VIP Members',
'isUnlisted' => false,
'productsBound' => [
'prod_starter',
'prod_pro'
],
'sortOrder' => 2
]),
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.shoppex.io/dev/v1/groups/{uniqid}"
payload := strings.NewReader("{\n \"title\": \"VIP Members\",\n \"isUnlisted\": false,\n \"productsBound\": [\n \"prod_starter\",\n \"prod_pro\"\n ],\n \"sortOrder\": 2\n}")
req, _ := http.NewRequest("PATCH", 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))
}{
"data": {
"id": "grp_db_1",
"uniqid": "grp_1",
"shop_id": "shop_1",
"title": "VIP Members",
"is_unlisted": false,
"sort_order": 2,
"created_at": 1711962000,
"updated_at": 1711969200,
"products_bound": [
{
"uniqid": "prod_starter",
"title": "Starter Pack",
"type": "DIGITAL",
"price": 29.99,
"price_display": 29.99,
"currency": "USD",
"stock": 999,
"custom_fields": {
"badge": "vip"
}
},
{
"uniqid": "prod_pro",
"title": "Pro Pack",
"type": "DIGITAL",
"price": 79.99,
"price_display": 79.99,
"currency": "USD",
"stock": 500,
"custom_fields": {
"badge": "pro"
}
}
]
}
}