curl --request POST \
--url https://my.cloudtalk.io/api/agents/edit/{agentId}.json \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"firstname": "<string>",
"lastname": "<string>",
"email": "jsmith@example.com",
"status_outbound": true,
"daily_price_limit": 100,
"call_number_id": 2
}
'import requests
url = "https://my.cloudtalk.io/api/agents/edit/{agentId}.json"
payload = {
"firstname": "<string>",
"lastname": "<string>",
"email": "jsmith@example.com",
"status_outbound": True,
"daily_price_limit": 100,
"call_number_id": 2
}
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({
firstname: '<string>',
lastname: '<string>',
email: 'jsmith@example.com',
status_outbound: true,
daily_price_limit: 100,
call_number_id: 2
})
};
fetch('https://my.cloudtalk.io/api/agents/edit/{agentId}.json', 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://my.cloudtalk.io/api/agents/edit/{agentId}.json",
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([
'firstname' => '<string>',
'lastname' => '<string>',
'email' => 'jsmith@example.com',
'status_outbound' => true,
'daily_price_limit' => 100,
'call_number_id' => 2
]),
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://my.cloudtalk.io/api/agents/edit/{agentId}.json"
payload := strings.NewReader("{\n \"firstname\": \"<string>\",\n \"lastname\": \"<string>\",\n \"email\": \"jsmith@example.com\",\n \"status_outbound\": true,\n \"daily_price_limit\": 100,\n \"call_number_id\": 2\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://my.cloudtalk.io/api/agents/edit/{agentId}.json")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"firstname\": \"<string>\",\n \"lastname\": \"<string>\",\n \"email\": \"jsmith@example.com\",\n \"status_outbound\": true,\n \"daily_price_limit\": 100,\n \"call_number_id\": 2\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://my.cloudtalk.io/api/agents/edit/{agentId}.json")
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 \"firstname\": \"<string>\",\n \"lastname\": \"<string>\",\n \"email\": \"jsmith@example.com\",\n \"status_outbound\": true,\n \"daily_price_limit\": 100,\n \"call_number_id\": 2\n}"
response = http.request(request)
puts response.read_body{
"responseData": {
"status": 200
}
}{
"responseData": {
"status": 404,
"message": "Not found."
}
}{
"responseData": {
"status": 406,
"message": "Invalid input data.",
"data": {
"email": [
"Please supply a valid email address."
]
}
}
}{
"responseData": {
"status": 500,
"message": "Something went wrong."
}
}Edit an agent
Updates the agent identified by agentId. firstname, lastname and email must be sent on every request, even when unchanged. The agent’s password cannot be changed here. Returns 404 if no agent has that ID.
Note the core API updates with POST, not PUT.
curl --request POST \
--url https://my.cloudtalk.io/api/agents/edit/{agentId}.json \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"firstname": "<string>",
"lastname": "<string>",
"email": "jsmith@example.com",
"status_outbound": true,
"daily_price_limit": 100,
"call_number_id": 2
}
'import requests
url = "https://my.cloudtalk.io/api/agents/edit/{agentId}.json"
payload = {
"firstname": "<string>",
"lastname": "<string>",
"email": "jsmith@example.com",
"status_outbound": True,
"daily_price_limit": 100,
"call_number_id": 2
}
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({
firstname: '<string>',
lastname: '<string>',
email: 'jsmith@example.com',
status_outbound: true,
daily_price_limit: 100,
call_number_id: 2
})
};
fetch('https://my.cloudtalk.io/api/agents/edit/{agentId}.json', 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://my.cloudtalk.io/api/agents/edit/{agentId}.json",
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([
'firstname' => '<string>',
'lastname' => '<string>',
'email' => 'jsmith@example.com',
'status_outbound' => true,
'daily_price_limit' => 100,
'call_number_id' => 2
]),
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://my.cloudtalk.io/api/agents/edit/{agentId}.json"
payload := strings.NewReader("{\n \"firstname\": \"<string>\",\n \"lastname\": \"<string>\",\n \"email\": \"jsmith@example.com\",\n \"status_outbound\": true,\n \"daily_price_limit\": 100,\n \"call_number_id\": 2\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://my.cloudtalk.io/api/agents/edit/{agentId}.json")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"firstname\": \"<string>\",\n \"lastname\": \"<string>\",\n \"email\": \"jsmith@example.com\",\n \"status_outbound\": true,\n \"daily_price_limit\": 100,\n \"call_number_id\": 2\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://my.cloudtalk.io/api/agents/edit/{agentId}.json")
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 \"firstname\": \"<string>\",\n \"lastname\": \"<string>\",\n \"email\": \"jsmith@example.com\",\n \"status_outbound\": true,\n \"daily_price_limit\": 100,\n \"call_number_id\": 2\n}"
response = http.request(request)
puts response.read_body{
"responseData": {
"status": 200
}
}{
"responseData": {
"status": 404,
"message": "Not found."
}
}{
"responseData": {
"status": 406,
"message": "Invalid input data.",
"data": {
"email": [
"Please supply a valid email address."
]
}
}
}{
"responseData": {
"status": 500,
"message": "Something went wrong."
}
}Authorizations
HTTP Basic Authentication. Use your API Access Key ID as the username and your API Access Key Secret as the password. Generate keys in the CloudTalk Dashboard under Account -> Settings -> API Keys (https://dashboard.cloudtalk.io/menu/account/settings/API-keys).
Path Parameters
Agent ID to edit
Body
First name
Last name
Does agent have outbound calls allowed?
Daily price limit for all calls in EUR. Usually allowed values are from 1 to 200 EUR. Leave empty for using default value.
1 <= x <= 200Default outbound number ID
x >= 1Response
No error
Show child attributes
Show child attributes