Create Telephony Configuration
curl --request POST \
--url https://api.peachdeskai.com/api/v1/organizations/telephony-configs \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"config": {
"ari_endpoint": "<string>",
"app_name": "<string>",
"app_password": "<string>",
"provider": "ari",
"ws_client_name": "",
"trunk_endpoint": "",
"outbound_number_format": "as_dialed",
"trunk_country_code": "",
"from_numbers": [
"<string>"
]
},
"is_default_outbound": false
}
'import requests
url = "https://api.peachdeskai.com/api/v1/organizations/telephony-configs"
payload = {
"name": "<string>",
"config": {
"ari_endpoint": "<string>",
"app_name": "<string>",
"app_password": "<string>",
"provider": "ari",
"ws_client_name": "",
"trunk_endpoint": "",
"outbound_number_format": "as_dialed",
"trunk_country_code": "",
"from_numbers": ["<string>"]
},
"is_default_outbound": False
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
config: {
ari_endpoint: '<string>',
app_name: '<string>',
app_password: '<string>',
provider: 'ari',
ws_client_name: '',
trunk_endpoint: '',
outbound_number_format: 'as_dialed',
trunk_country_code: '',
from_numbers: ['<string>']
},
is_default_outbound: false
})
};
fetch('https://api.peachdeskai.com/api/v1/organizations/telephony-configs', 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.peachdeskai.com/api/v1/organizations/telephony-configs",
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([
'name' => '<string>',
'config' => [
'ari_endpoint' => '<string>',
'app_name' => '<string>',
'app_password' => '<string>',
'provider' => 'ari',
'ws_client_name' => '',
'trunk_endpoint' => '',
'outbound_number_format' => 'as_dialed',
'trunk_country_code' => '',
'from_numbers' => [
'<string>'
]
],
'is_default_outbound' => false
]),
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://api.peachdeskai.com/api/v1/organizations/telephony-configs"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"config\": {\n \"ari_endpoint\": \"<string>\",\n \"app_name\": \"<string>\",\n \"app_password\": \"<string>\",\n \"provider\": \"ari\",\n \"ws_client_name\": \"\",\n \"trunk_endpoint\": \"\",\n \"outbound_number_format\": \"as_dialed\",\n \"trunk_country_code\": \"\",\n \"from_numbers\": [\n \"<string>\"\n ]\n },\n \"is_default_outbound\": false\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.peachdeskai.com/api/v1/organizations/telephony-configs")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"config\": {\n \"ari_endpoint\": \"<string>\",\n \"app_name\": \"<string>\",\n \"app_password\": \"<string>\",\n \"provider\": \"ari\",\n \"ws_client_name\": \"\",\n \"trunk_endpoint\": \"\",\n \"outbound_number_format\": \"as_dialed\",\n \"trunk_country_code\": \"\",\n \"from_numbers\": [\n \"<string>\"\n ]\n },\n \"is_default_outbound\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.peachdeskai.com/api/v1/organizations/telephony-configs")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"config\": {\n \"ari_endpoint\": \"<string>\",\n \"app_name\": \"<string>\",\n \"app_password\": \"<string>\",\n \"provider\": \"ari\",\n \"ws_client_name\": \"\",\n \"trunk_endpoint\": \"\",\n \"outbound_number_format\": \"as_dialed\",\n \"trunk_country_code\": \"\",\n \"from_numbers\": [\n \"<string>\"\n ]\n },\n \"is_default_outbound\": false\n}"
response = http.request(request)
puts response.read_body{
"id": 123,
"name": "<string>",
"provider": "<string>",
"is_default_outbound": true,
"credentials": {},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Telephony Configurations
Create Configuration
Create a new telephony configuration
POST
/
api
/
v1
/
organizations
/
telephony-configs
Create Telephony Configuration
curl --request POST \
--url https://api.peachdeskai.com/api/v1/organizations/telephony-configs \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"config": {
"ari_endpoint": "<string>",
"app_name": "<string>",
"app_password": "<string>",
"provider": "ari",
"ws_client_name": "",
"trunk_endpoint": "",
"outbound_number_format": "as_dialed",
"trunk_country_code": "",
"from_numbers": [
"<string>"
]
},
"is_default_outbound": false
}
'import requests
url = "https://api.peachdeskai.com/api/v1/organizations/telephony-configs"
payload = {
"name": "<string>",
"config": {
"ari_endpoint": "<string>",
"app_name": "<string>",
"app_password": "<string>",
"provider": "ari",
"ws_client_name": "",
"trunk_endpoint": "",
"outbound_number_format": "as_dialed",
"trunk_country_code": "",
"from_numbers": ["<string>"]
},
"is_default_outbound": False
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
config: {
ari_endpoint: '<string>',
app_name: '<string>',
app_password: '<string>',
provider: 'ari',
ws_client_name: '',
trunk_endpoint: '',
outbound_number_format: 'as_dialed',
trunk_country_code: '',
from_numbers: ['<string>']
},
is_default_outbound: false
})
};
fetch('https://api.peachdeskai.com/api/v1/organizations/telephony-configs', 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.peachdeskai.com/api/v1/organizations/telephony-configs",
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([
'name' => '<string>',
'config' => [
'ari_endpoint' => '<string>',
'app_name' => '<string>',
'app_password' => '<string>',
'provider' => 'ari',
'ws_client_name' => '',
'trunk_endpoint' => '',
'outbound_number_format' => 'as_dialed',
'trunk_country_code' => '',
'from_numbers' => [
'<string>'
]
],
'is_default_outbound' => false
]),
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://api.peachdeskai.com/api/v1/organizations/telephony-configs"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"config\": {\n \"ari_endpoint\": \"<string>\",\n \"app_name\": \"<string>\",\n \"app_password\": \"<string>\",\n \"provider\": \"ari\",\n \"ws_client_name\": \"\",\n \"trunk_endpoint\": \"\",\n \"outbound_number_format\": \"as_dialed\",\n \"trunk_country_code\": \"\",\n \"from_numbers\": [\n \"<string>\"\n ]\n },\n \"is_default_outbound\": false\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.peachdeskai.com/api/v1/organizations/telephony-configs")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"config\": {\n \"ari_endpoint\": \"<string>\",\n \"app_name\": \"<string>\",\n \"app_password\": \"<string>\",\n \"provider\": \"ari\",\n \"ws_client_name\": \"\",\n \"trunk_endpoint\": \"\",\n \"outbound_number_format\": \"as_dialed\",\n \"trunk_country_code\": \"\",\n \"from_numbers\": [\n \"<string>\"\n ]\n },\n \"is_default_outbound\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.peachdeskai.com/api/v1/organizations/telephony-configs")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"config\": {\n \"ari_endpoint\": \"<string>\",\n \"app_name\": \"<string>\",\n \"app_password\": \"<string>\",\n \"provider\": \"ari\",\n \"ws_client_name\": \"\",\n \"trunk_endpoint\": \"\",\n \"outbound_number_format\": \"as_dialed\",\n \"trunk_country_code\": \"\",\n \"from_numbers\": [\n \"<string>\"\n ]\n },\n \"is_default_outbound\": false\n}"
response = http.request(request)
puts response.read_body{
"id": 123,
"name": "<string>",
"provider": "<string>",
"is_default_outbound": true,
"credentials": {},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Call List Supported Providers first to discover the credential fields for the provider you want to configure тАФ they vary per provider.
Configuration
name must be unique within your organization. Set is_default_outbound: true to mark this configuration as the org-wide default for outbound calls (any existing default is unset). New configurations have no phone numbers; add them via Add a phone number.Authorizations
SessionAuthApiKeyAuth
Interactive user session: the login JWT, sent as Authorization: Bearer <token>.
Body
application/json
Body for POST /telephony-configs.
config carries the provider-specific credential fields (the same
discriminated union used by the legacy single-config endpoint). Any
from_numbers on the inner config are ignored тАФ phone numbers are
managed via the dedicated phone-numbers endpoints.
Required string length:
1 - 64Request schema for Asterisk ARI configuration.
- ARIConfigurationRequest
- CloudonixConfigurationRequest
- PlivoConfigurationRequest
- TelnyxConfigurationRequest
- TwilioConfigurationRequest
- VobizConfigurationRequest
- VonageConfigurationRequest
Show child attributes
Show child attributes
Response
Successful Response

