Update phone number
curl --request PUT \
--url https://app.autocalls.ai/api/user/phone-numbers/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"nickname": "<string>"
}
'import requests
url = "https://app.autocalls.ai/api/user/phone-numbers/{id}"
payload = { "nickname": "<string>" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({nickname: '<string>'})
};
fetch('https://app.autocalls.ai/api/user/phone-numbers/{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://app.autocalls.ai/api/user/phone-numbers/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'nickname' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://app.autocalls.ai/api/user/phone-numbers/{id}"
payload := strings.NewReader("{\n \"nickname\": \"<string>\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.put("https://app.autocalls.ai/api/user/phone-numbers/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"nickname\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.autocalls.ai/api/user/phone-numbers/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"nickname\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"message": "Phone number updated successfully.",
"data": {
"id": 1,
"phone_number": "+14155551234",
"nickname": "Sales line",
"country_code": "US",
"type": "normal"
}
}
{
"error": "Phone number not found."
}
{
"message": "The nickname must not exceed 50 characters.",
"errors": {
"nickname": ["The nickname must not exceed 50 characters."]
}
}
Phone Numbers
Update phone number
Update a phone number’s nickname
PUT
/
user
/
phone-numbers
/
{id}
Update phone number
curl --request PUT \
--url https://app.autocalls.ai/api/user/phone-numbers/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"nickname": "<string>"
}
'import requests
url = "https://app.autocalls.ai/api/user/phone-numbers/{id}"
payload = { "nickname": "<string>" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({nickname: '<string>'})
};
fetch('https://app.autocalls.ai/api/user/phone-numbers/{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://app.autocalls.ai/api/user/phone-numbers/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'nickname' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://app.autocalls.ai/api/user/phone-numbers/{id}"
payload := strings.NewReader("{\n \"nickname\": \"<string>\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.put("https://app.autocalls.ai/api/user/phone-numbers/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"nickname\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.autocalls.ai/api/user/phone-numbers/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"nickname\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"message": "Phone number updated successfully.",
"data": {
"id": 1,
"phone_number": "+14155551234",
"nickname": "Sales line",
"country_code": "US",
"type": "normal"
}
}
{
"error": "Phone number not found."
}
{
"message": "The nickname must not exceed 50 characters.",
"errors": {
"nickname": ["The nickname must not exceed 50 characters."]
}
}
This endpoint updates the editable attributes of a phone number you own. Currently this is the nickname — a short, human-friendly label (e.g. “Sales line”, “Support — US”) shown next to the number across the dashboard.
Only the owner of the number can update it. Numbers shared with you (granted) display the nickname but cannot be changed by you.
Path Parameters
integer
required
The unique identifier of the phone number to update
Body Parameters
string
A short label for the phone number. Maximum 50 characters. Send
null or an empty string to clear it.Response
string
Success message
object
{
"message": "Phone number updated successfully.",
"data": {
"id": 1,
"phone_number": "+14155551234",
"nickname": "Sales line",
"country_code": "US",
"type": "normal"
}
}
{
"error": "Phone number not found."
}
{
"message": "The nickname must not exceed 50 characters.",
"errors": {
"nickname": ["The nickname must not exceed 50 characters."]
}
}
The nickname is the same label you can set in the dashboard. It is returned by the phone number listing endpoints (
GET /user/phone-numbers/all, GET /user/phone-numbers/sip-trunks), so other resources that reference a number by phone_number_id can resolve its nickname from there.⌘I

