Update Domain Settings
curl --request PATCH \
--url https://api.getscale.ng/api/v1/hub/shop/{shopId}/domains/{domainId} \
--header 'Content-Type: application/json' \
--header 'X-Shop-API-Key: <x-shop-api-key>' \
--data '
{
"isActive": true,
"isPrimary": true
}
'import requests
url = "https://api.getscale.ng/api/v1/hub/shop/{shopId}/domains/{domainId}"
payload = {
"isActive": True,
"isPrimary": True
}
headers = {
"X-Shop-API-Key": "<x-shop-api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'X-Shop-API-Key': '<x-shop-api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({isActive: true, isPrimary: true})
};
fetch('https://api.getscale.ng/api/v1/hub/shop/{shopId}/domains/{domainId}', 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.getscale.ng/api/v1/hub/shop/{shopId}/domains/{domainId}",
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([
'isActive' => true,
'isPrimary' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-Shop-API-Key: <x-shop-api-key>"
],
]);
$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.getscale.ng/api/v1/hub/shop/{shopId}/domains/{domainId}"
payload := strings.NewReader("{\n \"isActive\": true,\n \"isPrimary\": true\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("X-Shop-API-Key", "<x-shop-api-key>")
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.patch("https://api.getscale.ng/api/v1/hub/shop/{shopId}/domains/{domainId}")
.header("X-Shop-API-Key", "<x-shop-api-key>")
.header("Content-Type", "application/json")
.body("{\n \"isActive\": true,\n \"isPrimary\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getscale.ng/api/v1/hub/shop/{shopId}/domains/{domainId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["X-Shop-API-Key"] = '<x-shop-api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"isActive\": true,\n \"isPrimary\": true\n}"
response = http.request(request)
puts response.read_body{
"status": "success",
"message": "Domain settings updated successfully"
}
{
"message": "FORM_VALIDATION_ERROR",
"code": 400,
"validationErrors": [
{
"path": [
"domainId"
],
"message": "Domain not found or does not belong to this shop"
}
]
}
Custom Domains
Update Domain Settings
PATCH
/
api
/
v1
/
hub
/
shop
/
{shopId}
/
domains
/
{domainId}
Update Domain Settings
curl --request PATCH \
--url https://api.getscale.ng/api/v1/hub/shop/{shopId}/domains/{domainId} \
--header 'Content-Type: application/json' \
--header 'X-Shop-API-Key: <x-shop-api-key>' \
--data '
{
"isActive": true,
"isPrimary": true
}
'import requests
url = "https://api.getscale.ng/api/v1/hub/shop/{shopId}/domains/{domainId}"
payload = {
"isActive": True,
"isPrimary": True
}
headers = {
"X-Shop-API-Key": "<x-shop-api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'X-Shop-API-Key': '<x-shop-api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({isActive: true, isPrimary: true})
};
fetch('https://api.getscale.ng/api/v1/hub/shop/{shopId}/domains/{domainId}', 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.getscale.ng/api/v1/hub/shop/{shopId}/domains/{domainId}",
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([
'isActive' => true,
'isPrimary' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-Shop-API-Key: <x-shop-api-key>"
],
]);
$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.getscale.ng/api/v1/hub/shop/{shopId}/domains/{domainId}"
payload := strings.NewReader("{\n \"isActive\": true,\n \"isPrimary\": true\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("X-Shop-API-Key", "<x-shop-api-key>")
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.patch("https://api.getscale.ng/api/v1/hub/shop/{shopId}/domains/{domainId}")
.header("X-Shop-API-Key", "<x-shop-api-key>")
.header("Content-Type", "application/json")
.body("{\n \"isActive\": true,\n \"isPrimary\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getscale.ng/api/v1/hub/shop/{shopId}/domains/{domainId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["X-Shop-API-Key"] = '<x-shop-api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"isActive\": true,\n \"isPrimary\": true\n}"
response = http.request(request)
puts response.read_body{
"status": "success",
"message": "Domain settings updated successfully"
}
{
"message": "FORM_VALIDATION_ERROR",
"code": 400,
"validationErrors": [
{
"path": [
"domainId"
],
"message": "Domain not found or does not belong to this shop"
}
]
}
Modifies settings for custom domains, such as marking a domain as the primary checkout host or toggling active routing states.
Authorizations
string
required
Your Secret API Key (
sk_live_... or sk_test_...) generated from the Developer dashboard. Must be kept secret.Path Parameters
string
required
The unique UUID of the shop.
number
required
The unique ID of the domain record.
Request Body (JSON)
boolean
Toggle whether traffic is routed to this domain.
boolean
Set as the primary root address of the storefront.
{
"status": "success",
"message": "Domain settings updated successfully"
}
{
"message": "FORM_VALIDATION_ERROR",
"code": 400,
"validationErrors": [
{
"path": [
"domainId"
],
"message": "Domain not found or does not belong to this shop"
}
]
}
⌘I