Get Telephony Providers Metadata
curl --request GET \
--url https://api.eesi.ai/v1/organizations/telephony-providers/metadata \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.eesi.ai/v1/organizations/telephony-providers/metadata"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.eesi.ai/v1/organizations/telephony-providers/metadata', 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.eesi.ai/v1/organizations/telephony-providers/metadata",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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://api.eesi.ai/v1/organizations/telephony-providers/metadata"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.eesi.ai/v1/organizations/telephony-providers/metadata")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.eesi.ai/v1/organizations/telephony-providers/metadata")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"providers": [
{
"provider": "<string>",
"display_name": "<string>",
"fields": [
{
"name": "<string>",
"label": "<string>",
"type": "<string>",
"required": true,
"sensitive": true,
"description": "<string>",
"placeholder": "<string>"
}
],
"docs_url": "<string>"
}
]
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Telephony Configurations
List Supported Providers
Discover available telephony providers and the credential fields each one requires
GET
/
v1
/
organizations
/
telephony-providers
/
metadata
Get Telephony Providers Metadata
curl --request GET \
--url https://api.eesi.ai/v1/organizations/telephony-providers/metadata \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.eesi.ai/v1/organizations/telephony-providers/metadata"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.eesi.ai/v1/organizations/telephony-providers/metadata', 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.eesi.ai/v1/organizations/telephony-providers/metadata",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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://api.eesi.ai/v1/organizations/telephony-providers/metadata"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.eesi.ai/v1/organizations/telephony-providers/metadata")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.eesi.ai/v1/organizations/telephony-providers/metadata")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"providers": [
{
"provider": "<string>",
"display_name": "<string>",
"fields": [
{
"name": "<string>",
"label": "<string>",
"type": "<string>",
"required": true,
"sensitive": true,
"description": "<string>",
"placeholder": "<string>"
}
],
"docs_url": "<string>"
}
]
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Use this endpoint to discover which telephony providers EESI supports and the exact credential fields each one expects. The response drives the configuration form in the dashboard, and is the recommended way to build a provider-agnostic integration.
Authorizations
BearerAuthApiKeyHeader
An EESI API key (sk-eesi-...) or a Clerk session token.
Response
Successful Response
List of UI form definitions used by the telephony-config screen.
Show child attributes
Show child attributes
โI