curl --request GET \
--url https://api.nuvia.ai/v1/hubspot/sync-settings \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.nuvia.ai/v1/hubspot/sync-settings"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.nuvia.ai/v1/hubspot/sync-settings', 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.nuvia.ai/v1/hubspot/sync-settings",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.nuvia.ai/v1/hubspot/sync-settings"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.nuvia.ai/v1/hubspot/sync-settings")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.nuvia.ai/v1/hubspot/sync-settings")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"deal_name_template": "Novo deal - {{var_contact_name}}",
"lead_name_template": "Novo lead - {{var_contact_name}}",
"auto_create_contact": false,
"owner_sync_source": "DISABLED",
"sync_owner_on_webhook": false,
"realtime_property_lookup": false,
"send_transcript_on_resolve": false,
"contact_transcript_mode": "ON_RESOLVE",
"send_transcript_to_deal": false,
"deal_transcript_mode": "ON_RESOLVE",
"search_contact_on_dispatch": true,
"degraded_search_count_today": 0,
"observed_webhook_sources": [
"CRM_UI",
"IMPORT"
],
"disabled_webhook_sources": [
"IMPORT"
]
}Get sync settings
Returns the settings for automatically creating contacts and deals in HubSpot
curl --request GET \
--url https://api.nuvia.ai/v1/hubspot/sync-settings \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.nuvia.ai/v1/hubspot/sync-settings"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.nuvia.ai/v1/hubspot/sync-settings', 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.nuvia.ai/v1/hubspot/sync-settings",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.nuvia.ai/v1/hubspot/sync-settings"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.nuvia.ai/v1/hubspot/sync-settings")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.nuvia.ai/v1/hubspot/sync-settings")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"deal_name_template": "Novo deal - {{var_contact_name}}",
"lead_name_template": "Novo lead - {{var_contact_name}}",
"auto_create_contact": false,
"owner_sync_source": "DISABLED",
"sync_owner_on_webhook": false,
"realtime_property_lookup": false,
"send_transcript_on_resolve": false,
"contact_transcript_mode": "ON_RESOLVE",
"send_transcript_to_deal": false,
"deal_transcript_mode": "ON_RESOLVE",
"search_contact_on_dispatch": true,
"degraded_search_count_today": 0,
"observed_webhook_sources": [
"CRM_UI",
"IMPORT"
],
"disabled_webhook_sources": [
"IMPORT"
]
}Authorizations
JWT authentication token
Response
Settings returned successfully
Template for the deal name (supports variables {{var_contact_name}}, {{var_contact_email}}, etc.)
"Novo deal - {{var_contact_name}}"
Template for the name of the automatically created lead (supports variables {{var_contact_name}}, etc.)
"Novo lead - {{var_contact_name}}"
Automatically create the contact in HubSpot when a conversation starts
false
Owner sync source (DISABLED, CONTACT_OWNER, DEAL_OWNER, LEAD_OWNER)
DISABLED, CONTACT_OWNER, DEAL_OWNER, LEAD_OWNER "DISABLED"
Automatically sync the owner when a Contact/Deal/Lead is updated in HubSpot
false
Fetch the contact's properties from HubSpot in real time before building the Agent's prompt
false
Send the conversation transcript to the CONTACT in HubSpot (the mode comes from contact_transcript_mode; the name is historical)
false
When the transcript goes to the contact: ON_RESOLVE (when the conversation is closed) or AUTO (in segments, about 1h after the last message, at most 24h)
ON_RESOLVE, AUTO "ON_RESOLVE"
Also send the conversation transcript to the linked deal in HubSpot
false
When the transcript goes to the deal: ON_RESOLVE (when the conversation is closed) or AUTO (in segments, about 1h after the last message, at most 24h)
ON_RESOLVE, AUTO "ON_RESOLVE"
Look up the contact in HubSpot by phone as soon as the campaign is dispatched. Default true; no control in the UI, it exists as an operational escape hatch
true
Lookups skipped today due to the volume cap (read-only, volatile indicator from Redis)
0
Webhook sources (changeSource) already observed on this portal (server-grown, read-only)
["CRM_UI", "IMPORT"]
Disabled webhook sources: events from these sources are dropped at ingestion (shedding)
["IMPORT"]