curl --request POST \
--url https://api.getnexor.ai/api/public/crm-account/hubspot/sync \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"scope": "account",
"provider": "hubspot",
"connection_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"expected_revision": "<string>",
"affected_workflow_ids": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"confirm": true,
"expected_sync_revision": "<string>",
"lead_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
'import requests
url = "https://api.getnexor.ai/api/public/crm-account/hubspot/sync"
payload = {
"scope": "account",
"provider": "hubspot",
"connection_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"expected_revision": "<string>",
"affected_workflow_ids": ["3c90c3cc-0d44-4b50-8888-8dd25736052a"],
"confirm": True,
"expected_sync_revision": "<string>",
"lead_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
scope: 'account',
provider: 'hubspot',
connection_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
expected_revision: '<string>',
affected_workflow_ids: ['3c90c3cc-0d44-4b50-8888-8dd25736052a'],
confirm: true,
expected_sync_revision: '<string>',
lead_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a'
})
};
fetch('https://api.getnexor.ai/api/public/crm-account/hubspot/sync', 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.getnexor.ai/api/public/crm-account/hubspot/sync",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'scope' => 'account',
'provider' => 'hubspot',
'connection_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'expected_revision' => '<string>',
'affected_workflow_ids' => [
'3c90c3cc-0d44-4b50-8888-8dd25736052a'
],
'confirm' => true,
'expected_sync_revision' => '<string>',
'lead_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <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.getnexor.ai/api/public/crm-account/hubspot/sync"
payload := strings.NewReader("{\n \"scope\": \"account\",\n \"provider\": \"hubspot\",\n \"connection_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"expected_revision\": \"<string>\",\n \"affected_workflow_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"confirm\": true,\n \"expected_sync_revision\": \"<string>\",\n \"lead_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<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.post("https://api.getnexor.ai/api/public/crm-account/hubspot/sync")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"scope\": \"account\",\n \"provider\": \"hubspot\",\n \"connection_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"expected_revision\": \"<string>\",\n \"affected_workflow_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"confirm\": true,\n \"expected_sync_revision\": \"<string>\",\n \"lead_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getnexor.ai/api/public/crm-account/hubspot/sync")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"scope\": \"account\",\n \"provider\": \"hubspot\",\n \"connection_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"expected_revision\": \"<string>\",\n \"affected_workflow_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"confirm\": true,\n \"expected_sync_revision\": \"<string>\",\n \"lead_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}"
response = http.request(request)
puts response.read_body{}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}Run hubspot sync
Account-wide operation, including tasks that inherit defaults and future tasks. Use only in explicit account context. First inspect get_crm_account_configuration and explain all affected_workflows. Writes require their exact IDs, the revision, and explicit confirm=true. Locked tasks or changed configuration reject the whole action. Never drop an affected task to bypass authorization. Execute the previously reviewed HubSpot sync. deals applies saved deal transitions to Nexor and can trigger their effects. contact syncs saved status, unsynced call/note/meeting history and enabled fields for the selected lead, possibly across its history; it is not task-local. Requires fresh get_hubspot_sync_preview, consent and both revisions. Reports skips/partial errors honestly; never retry an ambiguous failure automatically.
curl --request POST \
--url https://api.getnexor.ai/api/public/crm-account/hubspot/sync \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"scope": "account",
"provider": "hubspot",
"connection_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"expected_revision": "<string>",
"affected_workflow_ids": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"confirm": true,
"expected_sync_revision": "<string>",
"lead_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
'import requests
url = "https://api.getnexor.ai/api/public/crm-account/hubspot/sync"
payload = {
"scope": "account",
"provider": "hubspot",
"connection_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"expected_revision": "<string>",
"affected_workflow_ids": ["3c90c3cc-0d44-4b50-8888-8dd25736052a"],
"confirm": True,
"expected_sync_revision": "<string>",
"lead_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
scope: 'account',
provider: 'hubspot',
connection_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
expected_revision: '<string>',
affected_workflow_ids: ['3c90c3cc-0d44-4b50-8888-8dd25736052a'],
confirm: true,
expected_sync_revision: '<string>',
lead_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a'
})
};
fetch('https://api.getnexor.ai/api/public/crm-account/hubspot/sync', 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.getnexor.ai/api/public/crm-account/hubspot/sync",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'scope' => 'account',
'provider' => 'hubspot',
'connection_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'expected_revision' => '<string>',
'affected_workflow_ids' => [
'3c90c3cc-0d44-4b50-8888-8dd25736052a'
],
'confirm' => true,
'expected_sync_revision' => '<string>',
'lead_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <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.getnexor.ai/api/public/crm-account/hubspot/sync"
payload := strings.NewReader("{\n \"scope\": \"account\",\n \"provider\": \"hubspot\",\n \"connection_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"expected_revision\": \"<string>\",\n \"affected_workflow_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"confirm\": true,\n \"expected_sync_revision\": \"<string>\",\n \"lead_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<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.post("https://api.getnexor.ai/api/public/crm-account/hubspot/sync")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"scope\": \"account\",\n \"provider\": \"hubspot\",\n \"connection_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"expected_revision\": \"<string>\",\n \"affected_workflow_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"confirm\": true,\n \"expected_sync_revision\": \"<string>\",\n \"lead_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getnexor.ai/api/public/crm-account/hubspot/sync")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"scope\": \"account\",\n \"provider\": \"hubspot\",\n \"connection_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"expected_revision\": \"<string>\",\n \"affected_workflow_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"confirm\": true,\n \"expected_sync_revision\": \"<string>\",\n \"lead_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}"
response = http.request(request)
puts response.read_body{}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}Authorizations
API key for authentication. Keys are prefixed with nxr_live_.
Body
account hubspot ^[a-f0-9]{64}$^[a-f0-9]{64}$deals, contact Response
Saved configuration, provider catalog or safe execution evidence as described by this operation. Execution can be unavailable or skipped.
The response is of type object.