curl --request PATCH \
--url https://api.gospott.com/clients/{id} \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"stageId": "<string>",
"teamId": "<string>",
"locations": [
{
"street1": "<string>",
"street2": "<string>",
"postalCode": "<string>",
"city": "<string>",
"region": "<string>",
"state": "<string>",
"country": "<string>",
"latitude": 0,
"longitude": 0
}
],
"taxIdentifiers": [
{
"value": "<string>"
}
],
"company": {
"name": "<string>",
"domain": "<string>",
"linkedinId": "<string>",
"description": "<string>"
}
}
'import requests
url = "https://api.gospott.com/clients/{id}"
payload = {
"stageId": "<string>",
"teamId": "<string>",
"locations": [
{
"street1": "<string>",
"street2": "<string>",
"postalCode": "<string>",
"city": "<string>",
"region": "<string>",
"state": "<string>",
"country": "<string>",
"latitude": 0,
"longitude": 0
}
],
"taxIdentifiers": [{ "value": "<string>" }],
"company": {
"name": "<string>",
"domain": "<string>",
"linkedinId": "<string>",
"description": "<string>"
}
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
stageId: '<string>',
teamId: '<string>',
locations: [
{
street1: '<string>',
street2: '<string>',
postalCode: '<string>',
city: '<string>',
region: '<string>',
state: '<string>',
country: '<string>',
latitude: 0,
longitude: 0
}
],
taxIdentifiers: [{value: '<string>'}],
company: {
name: '<string>',
domain: '<string>',
linkedinId: '<string>',
description: '<string>'
}
})
};
fetch('https://api.gospott.com/clients/{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://api.gospott.com/clients/{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([
'stageId' => '<string>',
'teamId' => '<string>',
'locations' => [
[
'street1' => '<string>',
'street2' => '<string>',
'postalCode' => '<string>',
'city' => '<string>',
'region' => '<string>',
'state' => '<string>',
'country' => '<string>',
'latitude' => 0,
'longitude' => 0
]
],
'taxIdentifiers' => [
[
'value' => '<string>'
]
],
'company' => [
'name' => '<string>',
'domain' => '<string>',
'linkedinId' => '<string>',
'description' => '<string>'
]
]),
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.gospott.com/clients/{id}"
payload := strings.NewReader("{\n \"stageId\": \"<string>\",\n \"teamId\": \"<string>\",\n \"locations\": [\n {\n \"street1\": \"<string>\",\n \"street2\": \"<string>\",\n \"postalCode\": \"<string>\",\n \"city\": \"<string>\",\n \"region\": \"<string>\",\n \"state\": \"<string>\",\n \"country\": \"<string>\",\n \"latitude\": 0,\n \"longitude\": 0\n }\n ],\n \"taxIdentifiers\": [\n {\n \"value\": \"<string>\"\n }\n ],\n \"company\": {\n \"name\": \"<string>\",\n \"domain\": \"<string>\",\n \"linkedinId\": \"<string>\",\n \"description\": \"<string>\"\n }\n}")
req, _ := http.NewRequest("PATCH", 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.patch("https://api.gospott.com/clients/{id}")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"stageId\": \"<string>\",\n \"teamId\": \"<string>\",\n \"locations\": [\n {\n \"street1\": \"<string>\",\n \"street2\": \"<string>\",\n \"postalCode\": \"<string>\",\n \"city\": \"<string>\",\n \"region\": \"<string>\",\n \"state\": \"<string>\",\n \"country\": \"<string>\",\n \"latitude\": 0,\n \"longitude\": 0\n }\n ],\n \"taxIdentifiers\": [\n {\n \"value\": \"<string>\"\n }\n ],\n \"company\": {\n \"name\": \"<string>\",\n \"domain\": \"<string>\",\n \"linkedinId\": \"<string>\",\n \"description\": \"<string>\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gospott.com/clients/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"stageId\": \"<string>\",\n \"teamId\": \"<string>\",\n \"locations\": [\n {\n \"street1\": \"<string>\",\n \"street2\": \"<string>\",\n \"postalCode\": \"<string>\",\n \"city\": \"<string>\",\n \"region\": \"<string>\",\n \"state\": \"<string>\",\n \"country\": \"<string>\",\n \"latitude\": 0,\n \"longitude\": 0\n }\n ],\n \"taxIdentifiers\": [\n {\n \"value\": \"<string>\"\n }\n ],\n \"company\": {\n \"name\": \"<string>\",\n \"domain\": \"<string>\",\n \"linkedinId\": \"<string>\",\n \"description\": \"<string>\"\n }\n}"
response = http.request(request)
puts response.read_body{
"status": 0,
"message": "<string>",
"requestId": "<string>"
}{
"status": 0,
"message": "<string>",
"requestId": "<string>"
}{
"status": 0,
"message": "<string>",
"requestId": "<string>"
}{
"status": 0,
"message": "<string>",
"requestId": "<string>"
}{
"status": 0,
"message": "<string>",
"requestId": "<string>"
}{
"status": 0,
"message": "<string>",
"requestId": "<string>"
}Update a client
Updates the client with the specified ID. Client-level fields update the client record. Company-level fields nested under company update the underlying company and are rejected with 403 when the client is linked to a global company. locations and taxIdentifiers each replace their full list: omit a field to leave it unchanged, or send an empty array to remove all entries. Tax identifier values are normalized (whitespace, dots and dashes removed, uppercased) before being stored. Normalized values must be unique within the list, otherwise the request is rejected with 400, and unique across all clients, otherwise the request is rejected with 409.
curl --request PATCH \
--url https://api.gospott.com/clients/{id} \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"stageId": "<string>",
"teamId": "<string>",
"locations": [
{
"street1": "<string>",
"street2": "<string>",
"postalCode": "<string>",
"city": "<string>",
"region": "<string>",
"state": "<string>",
"country": "<string>",
"latitude": 0,
"longitude": 0
}
],
"taxIdentifiers": [
{
"value": "<string>"
}
],
"company": {
"name": "<string>",
"domain": "<string>",
"linkedinId": "<string>",
"description": "<string>"
}
}
'import requests
url = "https://api.gospott.com/clients/{id}"
payload = {
"stageId": "<string>",
"teamId": "<string>",
"locations": [
{
"street1": "<string>",
"street2": "<string>",
"postalCode": "<string>",
"city": "<string>",
"region": "<string>",
"state": "<string>",
"country": "<string>",
"latitude": 0,
"longitude": 0
}
],
"taxIdentifiers": [{ "value": "<string>" }],
"company": {
"name": "<string>",
"domain": "<string>",
"linkedinId": "<string>",
"description": "<string>"
}
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
stageId: '<string>',
teamId: '<string>',
locations: [
{
street1: '<string>',
street2: '<string>',
postalCode: '<string>',
city: '<string>',
region: '<string>',
state: '<string>',
country: '<string>',
latitude: 0,
longitude: 0
}
],
taxIdentifiers: [{value: '<string>'}],
company: {
name: '<string>',
domain: '<string>',
linkedinId: '<string>',
description: '<string>'
}
})
};
fetch('https://api.gospott.com/clients/{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://api.gospott.com/clients/{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([
'stageId' => '<string>',
'teamId' => '<string>',
'locations' => [
[
'street1' => '<string>',
'street2' => '<string>',
'postalCode' => '<string>',
'city' => '<string>',
'region' => '<string>',
'state' => '<string>',
'country' => '<string>',
'latitude' => 0,
'longitude' => 0
]
],
'taxIdentifiers' => [
[
'value' => '<string>'
]
],
'company' => [
'name' => '<string>',
'domain' => '<string>',
'linkedinId' => '<string>',
'description' => '<string>'
]
]),
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.gospott.com/clients/{id}"
payload := strings.NewReader("{\n \"stageId\": \"<string>\",\n \"teamId\": \"<string>\",\n \"locations\": [\n {\n \"street1\": \"<string>\",\n \"street2\": \"<string>\",\n \"postalCode\": \"<string>\",\n \"city\": \"<string>\",\n \"region\": \"<string>\",\n \"state\": \"<string>\",\n \"country\": \"<string>\",\n \"latitude\": 0,\n \"longitude\": 0\n }\n ],\n \"taxIdentifiers\": [\n {\n \"value\": \"<string>\"\n }\n ],\n \"company\": {\n \"name\": \"<string>\",\n \"domain\": \"<string>\",\n \"linkedinId\": \"<string>\",\n \"description\": \"<string>\"\n }\n}")
req, _ := http.NewRequest("PATCH", 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.patch("https://api.gospott.com/clients/{id}")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"stageId\": \"<string>\",\n \"teamId\": \"<string>\",\n \"locations\": [\n {\n \"street1\": \"<string>\",\n \"street2\": \"<string>\",\n \"postalCode\": \"<string>\",\n \"city\": \"<string>\",\n \"region\": \"<string>\",\n \"state\": \"<string>\",\n \"country\": \"<string>\",\n \"latitude\": 0,\n \"longitude\": 0\n }\n ],\n \"taxIdentifiers\": [\n {\n \"value\": \"<string>\"\n }\n ],\n \"company\": {\n \"name\": \"<string>\",\n \"domain\": \"<string>\",\n \"linkedinId\": \"<string>\",\n \"description\": \"<string>\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gospott.com/clients/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"stageId\": \"<string>\",\n \"teamId\": \"<string>\",\n \"locations\": [\n {\n \"street1\": \"<string>\",\n \"street2\": \"<string>\",\n \"postalCode\": \"<string>\",\n \"city\": \"<string>\",\n \"region\": \"<string>\",\n \"state\": \"<string>\",\n \"country\": \"<string>\",\n \"latitude\": 0,\n \"longitude\": 0\n }\n ],\n \"taxIdentifiers\": [\n {\n \"value\": \"<string>\"\n }\n ],\n \"company\": {\n \"name\": \"<string>\",\n \"domain\": \"<string>\",\n \"linkedinId\": \"<string>\",\n \"description\": \"<string>\"\n }\n}"
response = http.request(request)
puts response.read_body{
"status": 0,
"message": "<string>",
"requestId": "<string>"
}{
"status": 0,
"message": "<string>",
"requestId": "<string>"
}{
"status": 0,
"message": "<string>",
"requestId": "<string>"
}{
"status": 0,
"message": "<string>",
"requestId": "<string>"
}{
"status": 0,
"message": "<string>",
"requestId": "<string>"
}{
"status": 0,
"message": "<string>",
"requestId": "<string>"
}Authorizations
API key for authentication. Get your API key from Settings → API Keys in your Spott dashboard.
Path Parameters
Body
Deprecated: use stageId instead. Client status is no longer maintained.
lead, prospect, customer, lost_customer, blacklisted 1Client locations (0 to 250). Omit to leave unchanged; send an empty array to clear all locations.
250Show child attributes
Show child attributes
10Show child attributes
Show child attributes
Show child attributes
Show child attributes
Response
Client updated successfully
Was this page helpful?