Update client contact
curl --request PATCH \
--url https://api.gospott.com/clients/contacts/{id} \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"role": "<string>",
"department": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"emails": [
{
"email": "jsmith@example.com",
"isPrimary": true
}
],
"phoneNumbers": [
{
"phoneNumber": "<string>",
"isPrimary": true
}
],
"mainContactId": "<string>",
"stageId": "<string>",
"startDate": "2023-11-07T05:31:56Z",
"endDate": "2023-11-07T05:31:56Z"
}
'import requests
url = "https://api.gospott.com/clients/contacts/{id}"
payload = {
"role": "<string>",
"department": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"emails": [
{
"email": "jsmith@example.com",
"isPrimary": True
}
],
"phoneNumbers": [
{
"phoneNumber": "<string>",
"isPrimary": True
}
],
"mainContactId": "<string>",
"stageId": "<string>",
"startDate": "2023-11-07T05:31:56Z",
"endDate": "2023-11-07T05:31:56Z"
}
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({
role: '<string>',
department: '<string>',
firstName: '<string>',
lastName: '<string>',
emails: [{email: 'jsmith@example.com', isPrimary: true}],
phoneNumbers: [{phoneNumber: '<string>', isPrimary: true}],
mainContactId: '<string>',
stageId: '<string>',
startDate: '2023-11-07T05:31:56Z',
endDate: '2023-11-07T05:31:56Z'
})
};
fetch('https://api.gospott.com/clients/contacts/{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/contacts/{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([
'role' => '<string>',
'department' => '<string>',
'firstName' => '<string>',
'lastName' => '<string>',
'emails' => [
[
'email' => 'jsmith@example.com',
'isPrimary' => true
]
],
'phoneNumbers' => [
[
'phoneNumber' => '<string>',
'isPrimary' => true
]
],
'mainContactId' => '<string>',
'stageId' => '<string>',
'startDate' => '2023-11-07T05:31:56Z',
'endDate' => '2023-11-07T05:31:56Z'
]),
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/contacts/{id}"
payload := strings.NewReader("{\n \"role\": \"<string>\",\n \"department\": \"<string>\",\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\",\n \"emails\": [\n {\n \"email\": \"jsmith@example.com\",\n \"isPrimary\": true\n }\n ],\n \"phoneNumbers\": [\n {\n \"phoneNumber\": \"<string>\",\n \"isPrimary\": true\n }\n ],\n \"mainContactId\": \"<string>\",\n \"stageId\": \"<string>\",\n \"startDate\": \"2023-11-07T05:31:56Z\",\n \"endDate\": \"2023-11-07T05:31:56Z\"\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/contacts/{id}")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"role\": \"<string>\",\n \"department\": \"<string>\",\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\",\n \"emails\": [\n {\n \"email\": \"jsmith@example.com\",\n \"isPrimary\": true\n }\n ],\n \"phoneNumbers\": [\n {\n \"phoneNumber\": \"<string>\",\n \"isPrimary\": true\n }\n ],\n \"mainContactId\": \"<string>\",\n \"stageId\": \"<string>\",\n \"startDate\": \"2023-11-07T05:31:56Z\",\n \"endDate\": \"2023-11-07T05:31:56Z\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gospott.com/clients/contacts/{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 \"role\": \"<string>\",\n \"department\": \"<string>\",\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\",\n \"emails\": [\n {\n \"email\": \"jsmith@example.com\",\n \"isPrimary\": true\n }\n ],\n \"phoneNumbers\": [\n {\n \"phoneNumber\": \"<string>\",\n \"isPrimary\": true\n }\n ],\n \"mainContactId\": \"<string>\",\n \"stageId\": \"<string>\",\n \"startDate\": \"2023-11-07T05:31:56Z\",\n \"endDate\": \"2023-11-07T05:31:56Z\"\n}"
response = http.request(request)
puts response.read_body{
"status": 0,
"message": "ONLY_ONE_PRIMARY_EMAIL_ALLOWED",
"requestId": "<string>",
"statusCode": 400,
"error": "Bad Request"
}{
"status": 0,
"message": "<string>",
"requestId": "<string>"
}{
"status": 0,
"message": "Client contact not found",
"requestId": "<string>",
"statusCode": 404,
"error": "Not Found"
}{
"status": 0,
"message": "<string>",
"requestId": "<string>"
}Client Contacts
Update client contact
Update an existing client contact. All fields are optional - only provided fields will be updated.
PATCH
/
clients
/
contacts
/
{id}
Update client contact
curl --request PATCH \
--url https://api.gospott.com/clients/contacts/{id} \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"role": "<string>",
"department": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"emails": [
{
"email": "jsmith@example.com",
"isPrimary": true
}
],
"phoneNumbers": [
{
"phoneNumber": "<string>",
"isPrimary": true
}
],
"mainContactId": "<string>",
"stageId": "<string>",
"startDate": "2023-11-07T05:31:56Z",
"endDate": "2023-11-07T05:31:56Z"
}
'import requests
url = "https://api.gospott.com/clients/contacts/{id}"
payload = {
"role": "<string>",
"department": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"emails": [
{
"email": "jsmith@example.com",
"isPrimary": True
}
],
"phoneNumbers": [
{
"phoneNumber": "<string>",
"isPrimary": True
}
],
"mainContactId": "<string>",
"stageId": "<string>",
"startDate": "2023-11-07T05:31:56Z",
"endDate": "2023-11-07T05:31:56Z"
}
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({
role: '<string>',
department: '<string>',
firstName: '<string>',
lastName: '<string>',
emails: [{email: 'jsmith@example.com', isPrimary: true}],
phoneNumbers: [{phoneNumber: '<string>', isPrimary: true}],
mainContactId: '<string>',
stageId: '<string>',
startDate: '2023-11-07T05:31:56Z',
endDate: '2023-11-07T05:31:56Z'
})
};
fetch('https://api.gospott.com/clients/contacts/{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/contacts/{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([
'role' => '<string>',
'department' => '<string>',
'firstName' => '<string>',
'lastName' => '<string>',
'emails' => [
[
'email' => 'jsmith@example.com',
'isPrimary' => true
]
],
'phoneNumbers' => [
[
'phoneNumber' => '<string>',
'isPrimary' => true
]
],
'mainContactId' => '<string>',
'stageId' => '<string>',
'startDate' => '2023-11-07T05:31:56Z',
'endDate' => '2023-11-07T05:31:56Z'
]),
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/contacts/{id}"
payload := strings.NewReader("{\n \"role\": \"<string>\",\n \"department\": \"<string>\",\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\",\n \"emails\": [\n {\n \"email\": \"jsmith@example.com\",\n \"isPrimary\": true\n }\n ],\n \"phoneNumbers\": [\n {\n \"phoneNumber\": \"<string>\",\n \"isPrimary\": true\n }\n ],\n \"mainContactId\": \"<string>\",\n \"stageId\": \"<string>\",\n \"startDate\": \"2023-11-07T05:31:56Z\",\n \"endDate\": \"2023-11-07T05:31:56Z\"\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/contacts/{id}")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"role\": \"<string>\",\n \"department\": \"<string>\",\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\",\n \"emails\": [\n {\n \"email\": \"jsmith@example.com\",\n \"isPrimary\": true\n }\n ],\n \"phoneNumbers\": [\n {\n \"phoneNumber\": \"<string>\",\n \"isPrimary\": true\n }\n ],\n \"mainContactId\": \"<string>\",\n \"stageId\": \"<string>\",\n \"startDate\": \"2023-11-07T05:31:56Z\",\n \"endDate\": \"2023-11-07T05:31:56Z\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gospott.com/clients/contacts/{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 \"role\": \"<string>\",\n \"department\": \"<string>\",\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\",\n \"emails\": [\n {\n \"email\": \"jsmith@example.com\",\n \"isPrimary\": true\n }\n ],\n \"phoneNumbers\": [\n {\n \"phoneNumber\": \"<string>\",\n \"isPrimary\": true\n }\n ],\n \"mainContactId\": \"<string>\",\n \"stageId\": \"<string>\",\n \"startDate\": \"2023-11-07T05:31:56Z\",\n \"endDate\": \"2023-11-07T05:31:56Z\"\n}"
response = http.request(request)
puts response.read_body{
"status": 0,
"message": "ONLY_ONE_PRIMARY_EMAIL_ALLOWED",
"requestId": "<string>",
"statusCode": 400,
"error": "Bad Request"
}{
"status": 0,
"message": "<string>",
"requestId": "<string>"
}{
"status": 0,
"message": "Client contact not found",
"requestId": "<string>",
"statusCode": 404,
"error": "Not Found"
}{
"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
application/json
Role of the client contact
Department of the client contact
First name of the client contact
Required string length:
1 - 100Pattern:
^(?=.*\p{L})[\p{L}\p{M} '’.-]+$Last name of the client contact
Required string length:
1 - 100Pattern:
^(?=.*\p{L})[\p{L}\p{M} '’.-]+$Email addresses of the client contact
Show child attributes
Show child attributes
Phone numbers of the client contact
Show child attributes
Show child attributes
ID of the main contact (user) for this client contact
ID of the pipeline stage
Start date of the client contact
Pattern:
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$End date of the client contact
Pattern:
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$Response
Client contact updated successfully
⌘I

