Update customer
curl --request POST \
--url https://api.livechatinc.com/v3.5/agent/action/update_customer \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"id": "b7eff798-f8df-4364-8059-649c35c9ed0c",
"name": "Thomas Anderson",
"email": "t.anderson@example.com",
"avatar": "https://example.com/avatars/1.png",
"session_fields": [
{
"custom_key": "custom_value"
},
{
"another_custom_key": "another_custom_value"
}
]
}
'import requests
url = "https://api.livechatinc.com/v3.5/agent/action/update_customer"
payload = {
"id": "b7eff798-f8df-4364-8059-649c35c9ed0c",
"name": "Thomas Anderson",
"email": "t.anderson@example.com",
"avatar": "https://example.com/avatars/1.png",
"session_fields": [{ "custom_key": "custom_value" }, { "another_custom_key": "another_custom_value" }]
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
id: 'b7eff798-f8df-4364-8059-649c35c9ed0c',
name: 'Thomas Anderson',
email: 't.anderson@example.com',
avatar: 'https://example.com/avatars/1.png',
session_fields: [{custom_key: 'custom_value'}, {another_custom_key: 'another_custom_value'}]
})
};
fetch('https://api.livechatinc.com/v3.5/agent/action/update_customer', 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.livechatinc.com/v3.5/agent/action/update_customer",
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([
'id' => 'b7eff798-f8df-4364-8059-649c35c9ed0c',
'name' => 'Thomas Anderson',
'email' => 't.anderson@example.com',
'avatar' => 'https://example.com/avatars/1.png',
'session_fields' => [
[
'custom_key' => 'custom_value'
],
[
'another_custom_key' => 'another_custom_value'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"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://api.livechatinc.com/v3.5/agent/action/update_customer"
payload := strings.NewReader("{\n \"id\": \"b7eff798-f8df-4364-8059-649c35c9ed0c\",\n \"name\": \"Thomas Anderson\",\n \"email\": \"t.anderson@example.com\",\n \"avatar\": \"https://example.com/avatars/1.png\",\n \"session_fields\": [\n {\n \"custom_key\": \"custom_value\"\n },\n {\n \"another_custom_key\": \"another_custom_value\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
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.livechatinc.com/v3.5/agent/action/update_customer")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"id\": \"b7eff798-f8df-4364-8059-649c35c9ed0c\",\n \"name\": \"Thomas Anderson\",\n \"email\": \"t.anderson@example.com\",\n \"avatar\": \"https://example.com/avatars/1.png\",\n \"session_fields\": [\n {\n \"custom_key\": \"custom_value\"\n },\n {\n \"another_custom_key\": \"another_custom_value\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.livechatinc.com/v3.5/agent/action/update_customer")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"id\": \"b7eff798-f8df-4364-8059-649c35c9ed0c\",\n \"name\": \"Thomas Anderson\",\n \"email\": \"t.anderson@example.com\",\n \"avatar\": \"https://example.com/avatars/1.png\",\n \"session_fields\": [\n {\n \"custom_key\": \"custom_value\"\n },\n {\n \"another_custom_key\": \"another_custom_value\"\n }\n ]\n}"
response = http.request(request)
puts response.read_bodyCustomers
Update customer
Updates customer’s properties. Apart from id, which is a required parameter, you also need to include at least one of the optional parameters.
POST
/
action
/
update_customer
Update customer
curl --request POST \
--url https://api.livechatinc.com/v3.5/agent/action/update_customer \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"id": "b7eff798-f8df-4364-8059-649c35c9ed0c",
"name": "Thomas Anderson",
"email": "t.anderson@example.com",
"avatar": "https://example.com/avatars/1.png",
"session_fields": [
{
"custom_key": "custom_value"
},
{
"another_custom_key": "another_custom_value"
}
]
}
'import requests
url = "https://api.livechatinc.com/v3.5/agent/action/update_customer"
payload = {
"id": "b7eff798-f8df-4364-8059-649c35c9ed0c",
"name": "Thomas Anderson",
"email": "t.anderson@example.com",
"avatar": "https://example.com/avatars/1.png",
"session_fields": [{ "custom_key": "custom_value" }, { "another_custom_key": "another_custom_value" }]
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
id: 'b7eff798-f8df-4364-8059-649c35c9ed0c',
name: 'Thomas Anderson',
email: 't.anderson@example.com',
avatar: 'https://example.com/avatars/1.png',
session_fields: [{custom_key: 'custom_value'}, {another_custom_key: 'another_custom_value'}]
})
};
fetch('https://api.livechatinc.com/v3.5/agent/action/update_customer', 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.livechatinc.com/v3.5/agent/action/update_customer",
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([
'id' => 'b7eff798-f8df-4364-8059-649c35c9ed0c',
'name' => 'Thomas Anderson',
'email' => 't.anderson@example.com',
'avatar' => 'https://example.com/avatars/1.png',
'session_fields' => [
[
'custom_key' => 'custom_value'
],
[
'another_custom_key' => 'another_custom_value'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"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://api.livechatinc.com/v3.5/agent/action/update_customer"
payload := strings.NewReader("{\n \"id\": \"b7eff798-f8df-4364-8059-649c35c9ed0c\",\n \"name\": \"Thomas Anderson\",\n \"email\": \"t.anderson@example.com\",\n \"avatar\": \"https://example.com/avatars/1.png\",\n \"session_fields\": [\n {\n \"custom_key\": \"custom_value\"\n },\n {\n \"another_custom_key\": \"another_custom_value\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
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.livechatinc.com/v3.5/agent/action/update_customer")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"id\": \"b7eff798-f8df-4364-8059-649c35c9ed0c\",\n \"name\": \"Thomas Anderson\",\n \"email\": \"t.anderson@example.com\",\n \"avatar\": \"https://example.com/avatars/1.png\",\n \"session_fields\": [\n {\n \"custom_key\": \"custom_value\"\n },\n {\n \"another_custom_key\": \"another_custom_value\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.livechatinc.com/v3.5/agent/action/update_customer")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"id\": \"b7eff798-f8df-4364-8059-649c35c9ed0c\",\n \"name\": \"Thomas Anderson\",\n \"email\": \"t.anderson@example.com\",\n \"avatar\": \"https://example.com/avatars/1.png\",\n \"session_fields\": [\n {\n \"custom_key\": \"custom_value\"\n },\n {\n \"another_custom_key\": \"another_custom_value\"\n }\n ]\n}"
response = http.request(request)
puts response.read_bodyRequired scopes:
customers:rwAuthorizations
PersonalAccessTokenOAuth2BearerToken
Use your account ID as the username and your personal access token (PAT) as the password, or pass a Base64-encoded value directly in the Authorization header. For more information, see the personal access tokens guide.
Body
application/json
The customer ID. The UUID v4 format is required.
The customer's name.
The customer's email.
The URL of the customer's avatar.
The customer's phone number in E.164 format.
An array of custom object-enclosed key-value pairs. Respects the order of items.
The customer's omnichannel data.
Show child attributes
Show child attributes
The customer's address.
Show child attributes
Show child attributes
Response
200
Customer updated.
Was this page helpful?
⌘I