Release Phone Number
curl --request DELETE \
--url https://app.famulor.de/api/user/phone-numbers/{id}import requests
url = "https://app.famulor.de/api/user/phone-numbers/{id}"
response = requests.delete(url)
print(response.text)const options = {method: 'DELETE'};
fetch('https://app.famulor.de/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.famulor.de/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 => "DELETE",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.famulor.de/api/user/phone-numbers/{id}"
req, _ := http.NewRequest("DELETE", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://app.famulor.de/api/user/phone-numbers/{id}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.famulor.de/api/user/phone-numbers/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
response = http.request(request)
puts response.read_body{
"message": "Phone number released successfully. It will be removed at the end of the billing period."
}
{
"message": "Phone number deleted successfully."
}
{
"error": "Phone number is already scheduled for release."
}
{
"error": "Phone number not found."
}
{
"error": "Failed to release phone number. Please try again or contact support."
}
Phone Numbers
Release Phone Number
Releases a phone number and cancels its subscription
DELETE
/
api
/
user
/
phone-numbers
/
{id}
Release Phone Number
curl --request DELETE \
--url https://app.famulor.de/api/user/phone-numbers/{id}import requests
url = "https://app.famulor.de/api/user/phone-numbers/{id}"
response = requests.delete(url)
print(response.text)const options = {method: 'DELETE'};
fetch('https://app.famulor.de/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.famulor.de/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 => "DELETE",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.famulor.de/api/user/phone-numbers/{id}"
req, _ := http.NewRequest("DELETE", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://app.famulor.de/api/user/phone-numbers/{id}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.famulor.de/api/user/phone-numbers/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
response = http.request(request)
puts response.read_body{
"message": "Phone number released successfully. It will be removed at the end of the billing period."
}
{
"message": "Phone number deleted successfully."
}
{
"error": "Phone number is already scheduled for release."
}
{
"error": "Phone number not found."
}
{
"error": "Failed to release phone number. Please try again or contact support."
}
Famulor 1.0 API (legacy). This page applies only to Famulor 1.0 (
app.famulor.de) and is retained for legacy compatibility. For the current platform, use the Famulor 2.0 API reference.Path Parameters
integer
required
The unique identifier of the phone number to release
Response Fields
string
Success message indicating the release status
Release Behavior
The release behavior depends on the phone number type:| Type | Behavior |
|---|---|
| Dedicated (normal) | Subscription is cancelled. Number remains active until the end of the billing period, then it is released. |
| SIP | Immediately deleted from your account. |
| Caller ID | Immediately deleted from your account and removed from the telephony provider. |
Once a phone number is released, you may not be able to get the same number back. Make sure to update all assistants or campaigns using this number before releasing it.
What Happens to Associated Resources
When you release a phone number:- All inbound assistants assigned to this number will have their phone number removed
- All campaigns using this number will have it removed from their phone number rotation
- Call history is preserved and remains accessible
{
"message": "Phone number released successfully. It will be removed at the end of the billing period."
}
{
"message": "Phone number deleted successfully."
}
{
"error": "Phone number is already scheduled for release."
}
{
"error": "Phone number not found."
}
{
"error": "Failed to release phone number. Please try again or contact support."
}
Related pages: Introduction and Authentication Guide, and API Integration Examples.