curl --request PATCH \
--url https://{tenant_domain}/third-party/v1/settings/general \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"timezone": "Europe/Berlin",
"default_language": "<string>",
"opening_hours": [
[
[
"06:00",
"12:00"
],
[
"13:00",
"20:00"
]
]
],
"force_close": false,
"send_welcome_message": true,
"welcome_message_open": "<string>",
"welcome_message_closed": "<string>",
"custom_tenant_name": "<string>",
"custom_notifications_email": "<string>",
"logo_url": "<string>",
"primary_color": "ff00ff",
"send_privacy_message": true,
"privacy_link": "<string>",
"privacy_message": "<string>",
"privacy_message_unsafe": "<string>",
"notify_on_message": true,
"notify_after_minutes": 123,
"rating_invite_message": "<string>",
"rating_external_link": "<string>",
"mark_external_messages_as_read": true,
"delete_messages_after_days": 90
}
'import requests
url = "https://{tenant_domain}/third-party/v1/settings/general"
payload = {
"timezone": "Europe/Berlin",
"default_language": "<string>",
"opening_hours": [[["06:00", "12:00"], ["13:00", "20:00"]]],
"force_close": False,
"send_welcome_message": True,
"welcome_message_open": "<string>",
"welcome_message_closed": "<string>",
"custom_tenant_name": "<string>",
"custom_notifications_email": "<string>",
"logo_url": "<string>",
"primary_color": "ff00ff",
"send_privacy_message": True,
"privacy_link": "<string>",
"privacy_message": "<string>",
"privacy_message_unsafe": "<string>",
"notify_on_message": True,
"notify_after_minutes": 123,
"rating_invite_message": "<string>",
"rating_external_link": "<string>",
"mark_external_messages_as_read": True,
"delete_messages_after_days": 90
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
timezone: 'Europe/Berlin',
default_language: '<string>',
opening_hours: [[['06:00', '12:00'], ['13:00', '20:00']]],
force_close: false,
send_welcome_message: true,
welcome_message_open: '<string>',
welcome_message_closed: '<string>',
custom_tenant_name: '<string>',
custom_notifications_email: '<string>',
logo_url: '<string>',
primary_color: 'ff00ff',
send_privacy_message: true,
privacy_link: '<string>',
privacy_message: '<string>',
privacy_message_unsafe: '<string>',
notify_on_message: true,
notify_after_minutes: 123,
rating_invite_message: '<string>',
rating_external_link: '<string>',
mark_external_messages_as_read: true,
delete_messages_after_days: 90
})
};
fetch('https://{tenant_domain}/third-party/v1/settings/general', 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://{tenant_domain}/third-party/v1/settings/general",
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([
'timezone' => 'Europe/Berlin',
'default_language' => '<string>',
'opening_hours' => [
[
[
'06:00',
'12:00'
],
[
'13:00',
'20:00'
]
]
],
'force_close' => false,
'send_welcome_message' => true,
'welcome_message_open' => '<string>',
'welcome_message_closed' => '<string>',
'custom_tenant_name' => '<string>',
'custom_notifications_email' => '<string>',
'logo_url' => '<string>',
'primary_color' => 'ff00ff',
'send_privacy_message' => true,
'privacy_link' => '<string>',
'privacy_message' => '<string>',
'privacy_message_unsafe' => '<string>',
'notify_on_message' => true,
'notify_after_minutes' => 123,
'rating_invite_message' => '<string>',
'rating_external_link' => '<string>',
'mark_external_messages_as_read' => true,
'delete_messages_after_days' => 90
]),
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://{tenant_domain}/third-party/v1/settings/general"
payload := strings.NewReader("{\n \"timezone\": \"Europe/Berlin\",\n \"default_language\": \"<string>\",\n \"opening_hours\": [\n [\n [\n \"06:00\",\n \"12:00\"\n ],\n [\n \"13:00\",\n \"20:00\"\n ]\n ]\n ],\n \"force_close\": false,\n \"send_welcome_message\": true,\n \"welcome_message_open\": \"<string>\",\n \"welcome_message_closed\": \"<string>\",\n \"custom_tenant_name\": \"<string>\",\n \"custom_notifications_email\": \"<string>\",\n \"logo_url\": \"<string>\",\n \"primary_color\": \"ff00ff\",\n \"send_privacy_message\": true,\n \"privacy_link\": \"<string>\",\n \"privacy_message\": \"<string>\",\n \"privacy_message_unsafe\": \"<string>\",\n \"notify_on_message\": true,\n \"notify_after_minutes\": 123,\n \"rating_invite_message\": \"<string>\",\n \"rating_external_link\": \"<string>\",\n \"mark_external_messages_as_read\": true,\n \"delete_messages_after_days\": 90\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))
}HttpResponse<String> response = Unirest.patch("https://{tenant_domain}/third-party/v1/settings/general")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"timezone\": \"Europe/Berlin\",\n \"default_language\": \"<string>\",\n \"opening_hours\": [\n [\n [\n \"06:00\",\n \"12:00\"\n ],\n [\n \"13:00\",\n \"20:00\"\n ]\n ]\n ],\n \"force_close\": false,\n \"send_welcome_message\": true,\n \"welcome_message_open\": \"<string>\",\n \"welcome_message_closed\": \"<string>\",\n \"custom_tenant_name\": \"<string>\",\n \"custom_notifications_email\": \"<string>\",\n \"logo_url\": \"<string>\",\n \"primary_color\": \"ff00ff\",\n \"send_privacy_message\": true,\n \"privacy_link\": \"<string>\",\n \"privacy_message\": \"<string>\",\n \"privacy_message_unsafe\": \"<string>\",\n \"notify_on_message\": true,\n \"notify_after_minutes\": 123,\n \"rating_invite_message\": \"<string>\",\n \"rating_external_link\": \"<string>\",\n \"mark_external_messages_as_read\": true,\n \"delete_messages_after_days\": 90\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{tenant_domain}/third-party/v1/settings/general")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"timezone\": \"Europe/Berlin\",\n \"default_language\": \"<string>\",\n \"opening_hours\": [\n [\n [\n \"06:00\",\n \"12:00\"\n ],\n [\n \"13:00\",\n \"20:00\"\n ]\n ]\n ],\n \"force_close\": false,\n \"send_welcome_message\": true,\n \"welcome_message_open\": \"<string>\",\n \"welcome_message_closed\": \"<string>\",\n \"custom_tenant_name\": \"<string>\",\n \"custom_notifications_email\": \"<string>\",\n \"logo_url\": \"<string>\",\n \"primary_color\": \"ff00ff\",\n \"send_privacy_message\": true,\n \"privacy_link\": \"<string>\",\n \"privacy_message\": \"<string>\",\n \"privacy_message_unsafe\": \"<string>\",\n \"notify_on_message\": true,\n \"notify_after_minutes\": 123,\n \"rating_invite_message\": \"<string>\",\n \"rating_external_link\": \"<string>\",\n \"mark_external_messages_as_read\": true,\n \"delete_messages_after_days\": 90\n}"
response = http.request(request)
puts response.read_body{
"data": {
"timezone": "Europe/Berlin",
"default_language": "<string>",
"opening_hours": [
[
[
"06:00",
"12:00"
],
[
"13:00",
"20:00"
]
]
],
"force_close": false,
"send_welcome_message": true,
"welcome_message_open": "<string>",
"welcome_message_closed": "<string>",
"custom_tenant_name": "<string>",
"custom_notifications_email": "<string>",
"logo_url": "<string>",
"primary_color": "ff00ff",
"send_privacy_message": true,
"privacy_link": "<string>",
"privacy_message": "<string>",
"privacy_message_unsafe": "<string>",
"notify_on_message": true,
"notify_after_minutes": 123,
"rating_invite_message": "<string>",
"rating_external_link": "<string>",
"mark_external_messages_as_read": true,
"delete_messages_after_days": 90
}
}Update general settings.
curl --request PATCH \
--url https://{tenant_domain}/third-party/v1/settings/general \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"timezone": "Europe/Berlin",
"default_language": "<string>",
"opening_hours": [
[
[
"06:00",
"12:00"
],
[
"13:00",
"20:00"
]
]
],
"force_close": false,
"send_welcome_message": true,
"welcome_message_open": "<string>",
"welcome_message_closed": "<string>",
"custom_tenant_name": "<string>",
"custom_notifications_email": "<string>",
"logo_url": "<string>",
"primary_color": "ff00ff",
"send_privacy_message": true,
"privacy_link": "<string>",
"privacy_message": "<string>",
"privacy_message_unsafe": "<string>",
"notify_on_message": true,
"notify_after_minutes": 123,
"rating_invite_message": "<string>",
"rating_external_link": "<string>",
"mark_external_messages_as_read": true,
"delete_messages_after_days": 90
}
'import requests
url = "https://{tenant_domain}/third-party/v1/settings/general"
payload = {
"timezone": "Europe/Berlin",
"default_language": "<string>",
"opening_hours": [[["06:00", "12:00"], ["13:00", "20:00"]]],
"force_close": False,
"send_welcome_message": True,
"welcome_message_open": "<string>",
"welcome_message_closed": "<string>",
"custom_tenant_name": "<string>",
"custom_notifications_email": "<string>",
"logo_url": "<string>",
"primary_color": "ff00ff",
"send_privacy_message": True,
"privacy_link": "<string>",
"privacy_message": "<string>",
"privacy_message_unsafe": "<string>",
"notify_on_message": True,
"notify_after_minutes": 123,
"rating_invite_message": "<string>",
"rating_external_link": "<string>",
"mark_external_messages_as_read": True,
"delete_messages_after_days": 90
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
timezone: 'Europe/Berlin',
default_language: '<string>',
opening_hours: [[['06:00', '12:00'], ['13:00', '20:00']]],
force_close: false,
send_welcome_message: true,
welcome_message_open: '<string>',
welcome_message_closed: '<string>',
custom_tenant_name: '<string>',
custom_notifications_email: '<string>',
logo_url: '<string>',
primary_color: 'ff00ff',
send_privacy_message: true,
privacy_link: '<string>',
privacy_message: '<string>',
privacy_message_unsafe: '<string>',
notify_on_message: true,
notify_after_minutes: 123,
rating_invite_message: '<string>',
rating_external_link: '<string>',
mark_external_messages_as_read: true,
delete_messages_after_days: 90
})
};
fetch('https://{tenant_domain}/third-party/v1/settings/general', 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://{tenant_domain}/third-party/v1/settings/general",
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([
'timezone' => 'Europe/Berlin',
'default_language' => '<string>',
'opening_hours' => [
[
[
'06:00',
'12:00'
],
[
'13:00',
'20:00'
]
]
],
'force_close' => false,
'send_welcome_message' => true,
'welcome_message_open' => '<string>',
'welcome_message_closed' => '<string>',
'custom_tenant_name' => '<string>',
'custom_notifications_email' => '<string>',
'logo_url' => '<string>',
'primary_color' => 'ff00ff',
'send_privacy_message' => true,
'privacy_link' => '<string>',
'privacy_message' => '<string>',
'privacy_message_unsafe' => '<string>',
'notify_on_message' => true,
'notify_after_minutes' => 123,
'rating_invite_message' => '<string>',
'rating_external_link' => '<string>',
'mark_external_messages_as_read' => true,
'delete_messages_after_days' => 90
]),
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://{tenant_domain}/third-party/v1/settings/general"
payload := strings.NewReader("{\n \"timezone\": \"Europe/Berlin\",\n \"default_language\": \"<string>\",\n \"opening_hours\": [\n [\n [\n \"06:00\",\n \"12:00\"\n ],\n [\n \"13:00\",\n \"20:00\"\n ]\n ]\n ],\n \"force_close\": false,\n \"send_welcome_message\": true,\n \"welcome_message_open\": \"<string>\",\n \"welcome_message_closed\": \"<string>\",\n \"custom_tenant_name\": \"<string>\",\n \"custom_notifications_email\": \"<string>\",\n \"logo_url\": \"<string>\",\n \"primary_color\": \"ff00ff\",\n \"send_privacy_message\": true,\n \"privacy_link\": \"<string>\",\n \"privacy_message\": \"<string>\",\n \"privacy_message_unsafe\": \"<string>\",\n \"notify_on_message\": true,\n \"notify_after_minutes\": 123,\n \"rating_invite_message\": \"<string>\",\n \"rating_external_link\": \"<string>\",\n \"mark_external_messages_as_read\": true,\n \"delete_messages_after_days\": 90\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))
}HttpResponse<String> response = Unirest.patch("https://{tenant_domain}/third-party/v1/settings/general")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"timezone\": \"Europe/Berlin\",\n \"default_language\": \"<string>\",\n \"opening_hours\": [\n [\n [\n \"06:00\",\n \"12:00\"\n ],\n [\n \"13:00\",\n \"20:00\"\n ]\n ]\n ],\n \"force_close\": false,\n \"send_welcome_message\": true,\n \"welcome_message_open\": \"<string>\",\n \"welcome_message_closed\": \"<string>\",\n \"custom_tenant_name\": \"<string>\",\n \"custom_notifications_email\": \"<string>\",\n \"logo_url\": \"<string>\",\n \"primary_color\": \"ff00ff\",\n \"send_privacy_message\": true,\n \"privacy_link\": \"<string>\",\n \"privacy_message\": \"<string>\",\n \"privacy_message_unsafe\": \"<string>\",\n \"notify_on_message\": true,\n \"notify_after_minutes\": 123,\n \"rating_invite_message\": \"<string>\",\n \"rating_external_link\": \"<string>\",\n \"mark_external_messages_as_read\": true,\n \"delete_messages_after_days\": 90\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{tenant_domain}/third-party/v1/settings/general")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"timezone\": \"Europe/Berlin\",\n \"default_language\": \"<string>\",\n \"opening_hours\": [\n [\n [\n \"06:00\",\n \"12:00\"\n ],\n [\n \"13:00\",\n \"20:00\"\n ]\n ]\n ],\n \"force_close\": false,\n \"send_welcome_message\": true,\n \"welcome_message_open\": \"<string>\",\n \"welcome_message_closed\": \"<string>\",\n \"custom_tenant_name\": \"<string>\",\n \"custom_notifications_email\": \"<string>\",\n \"logo_url\": \"<string>\",\n \"primary_color\": \"ff00ff\",\n \"send_privacy_message\": true,\n \"privacy_link\": \"<string>\",\n \"privacy_message\": \"<string>\",\n \"privacy_message_unsafe\": \"<string>\",\n \"notify_on_message\": true,\n \"notify_after_minutes\": 123,\n \"rating_invite_message\": \"<string>\",\n \"rating_external_link\": \"<string>\",\n \"mark_external_messages_as_read\": true,\n \"delete_messages_after_days\": 90\n}"
response = http.request(request)
puts response.read_body{
"data": {
"timezone": "Europe/Berlin",
"default_language": "<string>",
"opening_hours": [
[
[
"06:00",
"12:00"
],
[
"13:00",
"20:00"
]
]
],
"force_close": false,
"send_welcome_message": true,
"welcome_message_open": "<string>",
"welcome_message_closed": "<string>",
"custom_tenant_name": "<string>",
"custom_notifications_email": "<string>",
"logo_url": "<string>",
"primary_color": "ff00ff",
"send_privacy_message": true,
"privacy_link": "<string>",
"privacy_message": "<string>",
"privacy_message_unsafe": "<string>",
"notify_on_message": true,
"notify_after_minutes": 123,
"rating_invite_message": "<string>",
"rating_external_link": "<string>",
"mark_external_messages_as_read": true,
"delete_messages_after_days": 90
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
General configuration settings.
Must be a valid timezone like Europe/Berlin.
Array of opening hours for the configured timezone. 7 entries for each weekday. Starting at monday. Each day is an array of periods with start and end time.
7 elements2 elements[["06:00", "12:00"], ["13:00", "20:00"]]
Set true to ignore evaluating opening hours and always appear closed.
Do not use anymore. Create or update a bot instead.
Do not use anymore. Create or update a bot instead.
Do not use anymore. Create or update a bot instead.
If set, overrides the name used while creating the tenant. Will be displayed for rating.
If set, overrides the address used for sending notification emails. Default is address used when creating the tenant.
Link to external logo image. File will be downloaded and field will be replaced with new public reachable URL. Image must have mime type of jpeg or png. Dimensions must match (quadratic) and be at least 1024x1024. White background preferred.
Optional hex color for theme. Will be used for rating.
"ff00ff"
Do not use anymore. Create or update a bot instead.
Optional link to custom privacy policy. If value is set to null, a default privacy page URL will be generated from the tenants info. Can be used as $privacy_link$ placeholder in automations.
Do not use anymore. Create or update a bot instead.
Do not use anymore. Create or update a bot instead.
Send email notification when a new message arrives and is not read within given amount of minutes.
Number of minutes before the notification will be sent.
Message template used to generate rating invite. Should contain $link$ placeholder!
Link to Google reviews if user gave 4 or 5 stars.
If enabled and the mark read endpoint is called, the external service will also be instructed to mark their message as read. (E.g. for WhatsApp, the customer will get the blue check marks.)
Number of days after a message will be deleted.
Response
Success
General configuration settings.
Show child attributes
Show child attributes