Update tenant configuration for tenant. - Fabric
Update tenant configuration for tenant.
cURL
curl --request PATCH \
--url https://prod01.oms.fabric.inc/api/v2/configurations/tenant-config/{configType}/name/{configName} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-site-context: <x-site-context>' \
--data '
{
"configName": "ENUM",
"objectValue": "SYSTEM",
"objectType": "SYSTEM",
"configType": "HOLD"
}
'
Python
import requests
url = "https://prod01.oms.fabric.inc/api/v2/configurations/tenant-config/{configType}/name/{configName}"
payload = {
"configName": "ENUM",
"objectValue": "SYSTEM",
"objectType": "SYSTEM",
"configType": "HOLD"
}
headers = {
"x-site-context": "<x-site-context>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)
JavaScript (Fetch API)
const options = {
method: 'PATCH',
headers: {
'x-site-context': '<x-site-context>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
configName: 'ENUM',
objectValue: 'SYSTEM',
objectType: 'SYSTEM',
configType: 'HOLD'
})
};
fetch('https://prod01.oms.fabric.inc/api/v2/configurations/tenant-config/{configType}/name/{configName}', 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://prod01.oms.fabric.inc/api/v2/configurations/tenant-config/{configType}/name/{configName}",
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([
'configName' => 'ENUM',
'objectValue' => 'SYSTEM',
'objectType' => 'SYSTEM',
'configType' => 'HOLD'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"x-site-context: <x-site-context>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
Go
package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://prod01.oms.fabric.inc/api/v2/configurations/tenant-config/{configType}/name/{configName}"
payload := strings.NewReader("{\n \"configName\": \"ENUM\",\n \"objectValue\": \"SYSTEM\",\n \"objectType\": \"SYSTEM\",\n \"configType\": \"HOLD\"\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("x-site-context", "<x-site-context>")
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))
}
Java (Unirest)
HttpResponse<String> response = Unirest.patch("https://prod01.oms.fabric.inc/api/v2/configurations/tenant-config/{configType}/name/{configName}")
.header("x-site-context", "<x-site-context>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"configName\": \"ENUM\",\n \"objectValue\": \"SYSTEM\",\n \"objectType\": \"SYSTEM\",\n \"configType\": \"HOLD\"}\n")
.asString();
Ruby
require 'uri'
require 'net/http'
url = URI("https://prod01.oms.fabric.inc/api/v2/configurations/tenant-config/{configType}/name/{configName}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["x-site-context"] = '<x-site-context>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"configName\": \"ENUM\",\n \"objectValue\": \"SYSTEM\",\n \"objectType\": \"SYSTEM\",\n \"configType\": \"HOLD\"}\n"
response = http.request(request)
puts response.read_body
Response Codes
- 200: Configuration updated.
- 400: Bad Request.
- 404: Configuration Not Found.
- 500: Internal Server Error.
JSON Response Example
{
"configName": "ENUM",
"objectValue": "SYSTEM",
"objectType": "SYSTEM",
"configType": "HOLD",
"tenantId": "erfvda5435234tgfdvsf"
}
{
"message": "Bad Request"
}
{
"message": "Configuration Not Found"
}
{
"message": "Internal Server Error"
}
Authorization
Authorization: string (header, required)
- Bearer authentication header of the form
Bearer <token>, where<token>is your auth token.
Headers
- x-site-context: required - The
x-site-contextheader is a JSON object that contains information about the source you wish to pull from. The mandatoryaccountis the 24 character identifier found in Copilot. Thechannel(Sales channel ID),stage(environment name), anddateattributes can be used to narrow the scope of your data source.
Body
- configName: string, Name of the configuration (e.g., "ENUM").
- objectValue: object, Value that needs to be configured for given configName & configType (e.g., "SYSTEM").
- objectType: string, Data type of the ObjectValue given (e.g., "SYSTEM").
- configType: string, Type of the configuration (e.g., "HOLD").
Response
- configName: string, Name of the configuration (e.g., "ENUM").
- objectValue: object, Value that needs to be configured for given configName & configType (e.g., "SYSTEM").
- objectType: string, Data type of the ObjectValue given (e.g., "SYSTEM").
- configType: string, Type of the configuration (e.g., "HOLD").
- tenantId: string, Tenant ID (e.g., "erfvda5435234tgfdvsf").