Help Center
Update a portal
Update a portal to account
PATCH
/
api
/
v1
/
accounts
/
{account_id}
/
portals
/
{id}
Update a portal
curl --request PATCH \
--url https://connect.voxys.ai/api/v1/accounts/{account_id}/portals/{id} \
--header 'Content-Type: application/json' \
--header 'api_access_token: <api-key>' \
--data '
{
"color": "#FFFFFF",
"custom_domain": "voxys.ai",
"header_text": "Handbook",
"homepage_link": "https://voxys.ai",
"name": "Handbook",
"page_title": "Handbook",
"slug": "handbook",
"archived": false,
"config": {
"allowed_locales": [
"en",
"es"
],
"default_locale": "en"
}
}
'import requests
url = "https://connect.voxys.ai/api/v1/accounts/{account_id}/portals/{id}"
payload = {
"color": "#FFFFFF",
"custom_domain": "voxys.ai",
"header_text": "Handbook",
"homepage_link": "https://voxys.ai",
"name": "Handbook",
"page_title": "Handbook",
"slug": "handbook",
"archived": False,
"config": {
"allowed_locales": ["en", "es"],
"default_locale": "en"
}
}
headers = {
"api_access_token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {api_access_token: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
color: '#FFFFFF',
custom_domain: 'voxys.ai',
header_text: 'Handbook',
homepage_link: 'https://voxys.ai',
name: 'Handbook',
page_title: 'Handbook',
slug: 'handbook',
archived: false,
config: {allowed_locales: ['en', 'es'], default_locale: 'en'}
})
};
fetch('https://connect.voxys.ai/api/v1/accounts/{account_id}/portals/{id}', 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://connect.voxys.ai/api/v1/accounts/{account_id}/portals/{id}",
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([
'color' => '#FFFFFF',
'custom_domain' => 'voxys.ai',
'header_text' => 'Handbook',
'homepage_link' => 'https://voxys.ai',
'name' => 'Handbook',
'page_title' => 'Handbook',
'slug' => 'handbook',
'archived' => false,
'config' => [
'allowed_locales' => [
'en',
'es'
],
'default_locale' => 'en'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"api_access_token: <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://connect.voxys.ai/api/v1/accounts/{account_id}/portals/{id}"
payload := strings.NewReader("{\n \"color\": \"#FFFFFF\",\n \"custom_domain\": \"voxys.ai\",\n \"header_text\": \"Handbook\",\n \"homepage_link\": \"https://voxys.ai\",\n \"name\": \"Handbook\",\n \"page_title\": \"Handbook\",\n \"slug\": \"handbook\",\n \"archived\": false,\n \"config\": {\n \"allowed_locales\": [\n \"en\",\n \"es\"\n ],\n \"default_locale\": \"en\"\n }\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("api_access_token", "<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://connect.voxys.ai/api/v1/accounts/{account_id}/portals/{id}")
.header("api_access_token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"color\": \"#FFFFFF\",\n \"custom_domain\": \"voxys.ai\",\n \"header_text\": \"Handbook\",\n \"homepage_link\": \"https://voxys.ai\",\n \"name\": \"Handbook\",\n \"page_title\": \"Handbook\",\n \"slug\": \"handbook\",\n \"archived\": false,\n \"config\": {\n \"allowed_locales\": [\n \"en\",\n \"es\"\n ],\n \"default_locale\": \"en\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://connect.voxys.ai/api/v1/accounts/{account_id}/portals/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["api_access_token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"color\": \"#FFFFFF\",\n \"custom_domain\": \"voxys.ai\",\n \"header_text\": \"Handbook\",\n \"homepage_link\": \"https://voxys.ai\",\n \"name\": \"Handbook\",\n \"page_title\": \"Handbook\",\n \"slug\": \"handbook\",\n \"archived\": false,\n \"config\": {\n \"allowed_locales\": [\n \"en\",\n \"es\"\n ],\n \"default_locale\": \"en\"\n }\n}"
response = http.request(request)
puts response.read_body{
"payload": {
"id": 123,
"archived": false,
"color": "#1F93FF",
"config": {
"allowed_locales": [
{
"code": "en",
"articles_count": 32,
"categories_count": 9
}
]
},
"custom_domain": "voxys.ai",
"header_text": "Handbook",
"homepage_link": "https://voxys.ai",
"name": "Handbook",
"slug": "handbook",
"page_title": "Handbook",
"account_id": 123,
"inbox": {
"id": 123,
"name": "Voxys Connect",
"website_url": "voxys.ai",
"channel_type": "Channel::WebWidget",
"avatar_url": "https://example.com/avatar.png",
"widget_color": "#1F93FF",
"website_token": "4cWzuf9i9jxN9tbnv8K9STKU",
"enable_auto_assignment": true,
"web_widget_script": "<script>...</script>",
"welcome_title": "Hi there ! ๐๐ผ",
"welcome_tagline": "We make it simple to connect with us.",
"greeting_enabled": true,
"greeting_message": "Hey there ๐, Thank you for reaching out to us.",
"channel_id": 123,
"working_hours_enabled": true,
"enable_email_collect": true,
"csat_survey_enabled": true,
"timezone": "America/Los_Angeles",
"business_name": "Voxys Connect",
"hmac_mandatory": true
},
"logo": {
"id": 123,
"portal_id": 123,
"file_type": "image/png",
"account_id": 123,
"file_url": "https://example.com/logo.png",
"blob_id": 123,
"filename": "square.png"
},
"meta": {
"all_articles_count": 32,
"categories_count": 9,
"default_locale": "en"
}
}
}{
"description": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>",
"code": "<string>"
}
]
}{
"description": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>",
"code": "<string>"
}
]
}Authorizations
This token can be obtained by visiting the profile page or via rails console. Provides access to endpoints based on the user permissions levels. This token can be saved by an external system when user is created via API, to perform activities on behalf of the user.
Path Parameters
The numeric ID of the account
The slug identifier of the portal
Body
application/json
Header color for help-center in hex format
Example:
"#FFFFFF"
Custom domain to display help center.
Example:
"voxys.ai"
Help center header
Example:
"Handbook"
link to main dashboard
Example:
"https://voxys.ai"
Name for the portal
Example:
"Handbook"
Page title for the portal
Example:
"Handbook"
Slug for the portal to display in link
Example:
"handbook"
Status to check if portal is live
Example:
false
Configuration about supporting locales
Example:
{
"allowed_locales": ["en", "es"],
"default_locale": "en"
}
Response
Success
Show child attributes
Show child attributes
โI
Update a portal
curl --request PATCH \
--url https://connect.voxys.ai/api/v1/accounts/{account_id}/portals/{id} \
--header 'Content-Type: application/json' \
--header 'api_access_token: <api-key>' \
--data '
{
"color": "#FFFFFF",
"custom_domain": "voxys.ai",
"header_text": "Handbook",
"homepage_link": "https://voxys.ai",
"name": "Handbook",
"page_title": "Handbook",
"slug": "handbook",
"archived": false,
"config": {
"allowed_locales": [
"en",
"es"
],
"default_locale": "en"
}
}
'import requests
url = "https://connect.voxys.ai/api/v1/accounts/{account_id}/portals/{id}"
payload = {
"color": "#FFFFFF",
"custom_domain": "voxys.ai",
"header_text": "Handbook",
"homepage_link": "https://voxys.ai",
"name": "Handbook",
"page_title": "Handbook",
"slug": "handbook",
"archived": False,
"config": {
"allowed_locales": ["en", "es"],
"default_locale": "en"
}
}
headers = {
"api_access_token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {api_access_token: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
color: '#FFFFFF',
custom_domain: 'voxys.ai',
header_text: 'Handbook',
homepage_link: 'https://voxys.ai',
name: 'Handbook',
page_title: 'Handbook',
slug: 'handbook',
archived: false,
config: {allowed_locales: ['en', 'es'], default_locale: 'en'}
})
};
fetch('https://connect.voxys.ai/api/v1/accounts/{account_id}/portals/{id}', 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://connect.voxys.ai/api/v1/accounts/{account_id}/portals/{id}",
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([
'color' => '#FFFFFF',
'custom_domain' => 'voxys.ai',
'header_text' => 'Handbook',
'homepage_link' => 'https://voxys.ai',
'name' => 'Handbook',
'page_title' => 'Handbook',
'slug' => 'handbook',
'archived' => false,
'config' => [
'allowed_locales' => [
'en',
'es'
],
'default_locale' => 'en'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"api_access_token: <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://connect.voxys.ai/api/v1/accounts/{account_id}/portals/{id}"
payload := strings.NewReader("{\n \"color\": \"#FFFFFF\",\n \"custom_domain\": \"voxys.ai\",\n \"header_text\": \"Handbook\",\n \"homepage_link\": \"https://voxys.ai\",\n \"name\": \"Handbook\",\n \"page_title\": \"Handbook\",\n \"slug\": \"handbook\",\n \"archived\": false,\n \"config\": {\n \"allowed_locales\": [\n \"en\",\n \"es\"\n ],\n \"default_locale\": \"en\"\n }\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("api_access_token", "<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://connect.voxys.ai/api/v1/accounts/{account_id}/portals/{id}")
.header("api_access_token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"color\": \"#FFFFFF\",\n \"custom_domain\": \"voxys.ai\",\n \"header_text\": \"Handbook\",\n \"homepage_link\": \"https://voxys.ai\",\n \"name\": \"Handbook\",\n \"page_title\": \"Handbook\",\n \"slug\": \"handbook\",\n \"archived\": false,\n \"config\": {\n \"allowed_locales\": [\n \"en\",\n \"es\"\n ],\n \"default_locale\": \"en\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://connect.voxys.ai/api/v1/accounts/{account_id}/portals/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["api_access_token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"color\": \"#FFFFFF\",\n \"custom_domain\": \"voxys.ai\",\n \"header_text\": \"Handbook\",\n \"homepage_link\": \"https://voxys.ai\",\n \"name\": \"Handbook\",\n \"page_title\": \"Handbook\",\n \"slug\": \"handbook\",\n \"archived\": false,\n \"config\": {\n \"allowed_locales\": [\n \"en\",\n \"es\"\n ],\n \"default_locale\": \"en\"\n }\n}"
response = http.request(request)
puts response.read_body{
"payload": {
"id": 123,
"archived": false,
"color": "#1F93FF",
"config": {
"allowed_locales": [
{
"code": "en",
"articles_count": 32,
"categories_count": 9
}
]
},
"custom_domain": "voxys.ai",
"header_text": "Handbook",
"homepage_link": "https://voxys.ai",
"name": "Handbook",
"slug": "handbook",
"page_title": "Handbook",
"account_id": 123,
"inbox": {
"id": 123,
"name": "Voxys Connect",
"website_url": "voxys.ai",
"channel_type": "Channel::WebWidget",
"avatar_url": "https://example.com/avatar.png",
"widget_color": "#1F93FF",
"website_token": "4cWzuf9i9jxN9tbnv8K9STKU",
"enable_auto_assignment": true,
"web_widget_script": "<script>...</script>",
"welcome_title": "Hi there ! ๐๐ผ",
"welcome_tagline": "We make it simple to connect with us.",
"greeting_enabled": true,
"greeting_message": "Hey there ๐, Thank you for reaching out to us.",
"channel_id": 123,
"working_hours_enabled": true,
"enable_email_collect": true,
"csat_survey_enabled": true,
"timezone": "America/Los_Angeles",
"business_name": "Voxys Connect",
"hmac_mandatory": true
},
"logo": {
"id": 123,
"portal_id": 123,
"file_type": "image/png",
"account_id": 123,
"file_url": "https://example.com/logo.png",
"blob_id": 123,
"filename": "square.png"
},
"meta": {
"all_articles_count": 32,
"categories_count": 9,
"default_locale": "en"
}
}
}{
"description": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>",
"code": "<string>"
}
]
}{
"description": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>",
"code": "<string>"
}
]
}
