List Session Templates
curl --request GET \
--url https://platform.perso.ai/api/v1/session_template/ \
--header 'PersoPlatform-APIKey: <api-key>'import requests
url = "https://platform.perso.ai/api/v1/session_template/"
headers = {"PersoPlatform-APIKey": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'PersoPlatform-APIKey': '<api-key>'}};
fetch('https://platform.perso.ai/api/v1/session_template/', 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://platform.perso.ai/api/v1/session_template/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"PersoPlatform-APIKey: <api-key>"
],
]);
$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://platform.perso.ai/api/v1/session_template/"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("PersoPlatform-APIKey", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://platform.perso.ai/api/v1/session_template/")
.header("PersoPlatform-APIKey", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://platform.perso.ai/api/v1/session_template/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["PersoPlatform-APIKey"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"sessiontemplate_id": "<string>",
"name": "<string>",
"prompt": {
"name": "<string>",
"prompt_id": "<string>",
"system_prompt": "<string>",
"description": "<string>",
"require_document": true,
"intro_message": "<string>"
},
"capability": [
{
"name": "LLM",
"description": "<string>"
}
],
"document": {
"document_id": "<string>",
"title": "<string>",
"file": "<string>",
"processed": true,
"processed_v2": true,
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"description": "<string>",
"search_count": -1,
"ef_search": 250
},
"llm_type": {
"name": "<string>",
"service": "openai"
},
"tts_type": {
"name": "<string>",
"service": "openai",
"streamable": true,
"model": "<string>",
"voice": "<string>",
"voice_settings": "<unknown>",
"style": "<string>",
"voice_extra_data": "<unknown>"
},
"text_normalization_config": {
"textnormalizationconfig_id": "<string>",
"name": "<string>",
"pre_hook_url": "<string>",
"post_hook_url": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"hook_enabled": true,
"pre_hook_args": null,
"post_hook_args": null
},
"stt_type": {
"name": "<string>",
"service": "WHISPER",
"options": null
},
"stt_text_normalization_config": {
"textnormalizationconfig_id": "<string>",
"name": "<string>",
"pre_hook_url": "<string>",
"post_hook_url": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"hook_enabled": true,
"pre_hook_args": null,
"post_hook_args": null
},
"model_style": {
"name": "<string>",
"model": "<string>",
"model_files": [
{
"name": "<string>",
"file": "<string>"
}
],
"style": "<string>",
"files": [
{
"name": "<string>",
"file": "<string>"
}
],
"configs": [
{
"modelstyleconfig_id": "<string>",
"key": "<string>",
"value": "<string>"
}
],
"model_file": "<string>",
"file": "<string>",
"platform_type": "android"
},
"agent_config": {
"agentconfig_id": "<string>",
"name": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"config": "<unknown>"
},
"interactive_agent_config": {
"interactiveagentconfig_id": "<string>",
"name": "<string>",
"description": "<string>",
"intro_message": "<string>",
"organization": "<string>"
},
"background_image": {
"backgroundimage_id": "<string>",
"title": "<string>",
"image": "<string>",
"created_at": "2023-11-07T05:31:56Z"
},
"mcp_servers": [
{
"mcpserver_id": "<string>",
"name": "<string>",
"organization": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"url": "<string>",
"description": "<string>",
"auth_header": null,
"transport_protocol": "sse",
"server_timeout_sec": -1,
"extra_data": null
}
],
"created_at": "2023-11-07T05:31:56Z",
"last_used_at": "2023-11-07T05:31:56Z",
"description": "<string>",
"text_normalization_locale": "<string>",
"stt_text_normalization_locale": "<string>",
"agent": "<string>",
"padding_left": 0,
"padding_top": 0.5,
"padding_height": 2.5,
"extra_data": null
}
]Session Resources
List Session Templates
List session templates for the organization.
GET
/
api
/
v1
/
session_template
/
List Session Templates
curl --request GET \
--url https://platform.perso.ai/api/v1/session_template/ \
--header 'PersoPlatform-APIKey: <api-key>'import requests
url = "https://platform.perso.ai/api/v1/session_template/"
headers = {"PersoPlatform-APIKey": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'PersoPlatform-APIKey': '<api-key>'}};
fetch('https://platform.perso.ai/api/v1/session_template/', 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://platform.perso.ai/api/v1/session_template/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"PersoPlatform-APIKey: <api-key>"
],
]);
$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://platform.perso.ai/api/v1/session_template/"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("PersoPlatform-APIKey", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://platform.perso.ai/api/v1/session_template/")
.header("PersoPlatform-APIKey", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://platform.perso.ai/api/v1/session_template/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["PersoPlatform-APIKey"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"sessiontemplate_id": "<string>",
"name": "<string>",
"prompt": {
"name": "<string>",
"prompt_id": "<string>",
"system_prompt": "<string>",
"description": "<string>",
"require_document": true,
"intro_message": "<string>"
},
"capability": [
{
"name": "LLM",
"description": "<string>"
}
],
"document": {
"document_id": "<string>",
"title": "<string>",
"file": "<string>",
"processed": true,
"processed_v2": true,
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"description": "<string>",
"search_count": -1,
"ef_search": 250
},
"llm_type": {
"name": "<string>",
"service": "openai"
},
"tts_type": {
"name": "<string>",
"service": "openai",
"streamable": true,
"model": "<string>",
"voice": "<string>",
"voice_settings": "<unknown>",
"style": "<string>",
"voice_extra_data": "<unknown>"
},
"text_normalization_config": {
"textnormalizationconfig_id": "<string>",
"name": "<string>",
"pre_hook_url": "<string>",
"post_hook_url": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"hook_enabled": true,
"pre_hook_args": null,
"post_hook_args": null
},
"stt_type": {
"name": "<string>",
"service": "WHISPER",
"options": null
},
"stt_text_normalization_config": {
"textnormalizationconfig_id": "<string>",
"name": "<string>",
"pre_hook_url": "<string>",
"post_hook_url": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"hook_enabled": true,
"pre_hook_args": null,
"post_hook_args": null
},
"model_style": {
"name": "<string>",
"model": "<string>",
"model_files": [
{
"name": "<string>",
"file": "<string>"
}
],
"style": "<string>",
"files": [
{
"name": "<string>",
"file": "<string>"
}
],
"configs": [
{
"modelstyleconfig_id": "<string>",
"key": "<string>",
"value": "<string>"
}
],
"model_file": "<string>",
"file": "<string>",
"platform_type": "android"
},
"agent_config": {
"agentconfig_id": "<string>",
"name": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"config": "<unknown>"
},
"interactive_agent_config": {
"interactiveagentconfig_id": "<string>",
"name": "<string>",
"description": "<string>",
"intro_message": "<string>",
"organization": "<string>"
},
"background_image": {
"backgroundimage_id": "<string>",
"title": "<string>",
"image": "<string>",
"created_at": "2023-11-07T05:31:56Z"
},
"mcp_servers": [
{
"mcpserver_id": "<string>",
"name": "<string>",
"organization": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"url": "<string>",
"description": "<string>",
"auth_header": null,
"transport_protocol": "sse",
"server_timeout_sec": -1,
"extra_data": null
}
],
"created_at": "2023-11-07T05:31:56Z",
"last_used_at": "2023-11-07T05:31:56Z",
"description": "<string>",
"text_normalization_locale": "<string>",
"stt_text_normalization_locale": "<string>",
"agent": "<string>",
"padding_left": 0,
"padding_top": 0.5,
"padding_height": 2.5,
"extra_data": null
}
]Authorizations
Response
Maximum string length:
255Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Read-only discovery view of an interactive-agent config. Exposes the
identifier/name/owner plus the client-facing intro_message so a caller can
pick a pliac-* to attach at session create; prompts, tools, per-role
models, endpoint and credentials are NOT exposed (operator-managed, and
globals are shared across orgs).
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Maximum string length:
10Maximum string length:
10Maximum string length:
255Required range:
-1 <= x <= 1Required range:
0 <= x <= 1Required range:
0 <= x <= 5⌘I

