curl --request GET \
--url https://api-prod.studio.getsupervisor.ai/v1/catalogs/templates \
--header 'Authorization: Bearer <token>'import requests
url = "https://api-prod.studio.getsupervisor.ai/v1/catalogs/templates"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api-prod.studio.getsupervisor.ai/v1/catalogs/templates', 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-prod.studio.getsupervisor.ai/v1/catalogs/templates",
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-prod.studio.getsupervisor.ai/v1/catalogs/templates"
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-prod.studio.getsupervisor.ai/v1/catalogs/templates")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-prod.studio.getsupervisor.ai/v1/catalogs/templates")
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[
{
"id": "ec9205ec-7c0c-41b7-86da-67cc3c2dd0f2",
"slug": "voice-cobranza-temprana-mx",
"name": "Agente de Cobranza Temprana",
"description": "Recuperación de cartera 1-30 días en México.",
"tags": [
"cobranza",
"voz",
"mx",
"mora-temprana"
],
"agentVersionId": "8ac2b0f8-0c0e-4a4e-9c6d-6f5e2d5c9f11",
"visibility": "system",
"isActive": true,
"usageCount": 128,
"createdAt": "2026-01-14T18:02:11.000Z",
"updatedAt": "2026-07-02T09:44:03.000Z"
}
]{
"code": "FORBIDDEN",
"message": "Missing required scope: catalogs:read"
}Listar plantillas de agente publicadas
Devuelve las plantillas de agente disponibles para el workspace. Cada plantilla apunta a un
agentVersionId que se usa como origen en POST /v1/agents/from-template para crear un agente
propio con blueprint, stages, triggers e instrucciones ya armados.
El listado no es paginado: se devuelve el arreglo completo, filtrable por visibilidad y etiquetas.
curl --request GET \
--url https://api-prod.studio.getsupervisor.ai/v1/catalogs/templates \
--header 'Authorization: Bearer <token>'import requests
url = "https://api-prod.studio.getsupervisor.ai/v1/catalogs/templates"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api-prod.studio.getsupervisor.ai/v1/catalogs/templates', 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-prod.studio.getsupervisor.ai/v1/catalogs/templates",
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-prod.studio.getsupervisor.ai/v1/catalogs/templates"
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-prod.studio.getsupervisor.ai/v1/catalogs/templates")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-prod.studio.getsupervisor.ai/v1/catalogs/templates")
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[
{
"id": "ec9205ec-7c0c-41b7-86da-67cc3c2dd0f2",
"slug": "voice-cobranza-temprana-mx",
"name": "Agente de Cobranza Temprana",
"description": "Recuperación de cartera 1-30 días en México.",
"tags": [
"cobranza",
"voz",
"mx",
"mora-temprana"
],
"agentVersionId": "8ac2b0f8-0c0e-4a4e-9c6d-6f5e2d5c9f11",
"visibility": "system",
"isActive": true,
"usageCount": 128,
"createdAt": "2026-01-14T18:02:11.000Z",
"updatedAt": "2026-07-02T09:44:03.000Z"
}
]{
"code": "FORBIDDEN",
"message": "Missing required scope: catalogs:read"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
Identificador del workspace multi-tenant. Obligatorio al autenticar con Authorization: Bearer, donde su ausencia devuelve 400 Workspace context is required. Con x-api-key es opcional: la llave ya identifica a su workspace y lo que mandes aquí se ignora.
Query Parameters
Restringe el listado a una visibilidad. system son las plantillas curadas por Leracom,
community las compartidas públicamente y private las del propio workspace.
system, community, private Etiquetas por las que filtrar. Se acepta una lista separada por comas (cobranza,voz) o el
parámetro repetido; los duplicados se descartan.
Response
Plantillas disponibles
Identificador legible y estable de la plantilla.
Etiquetas de clasificación (caso de uso, canal, país).
Versión de agente que se clona al crear desde esta plantilla.
system son plantillas curadas por Leracom, community las compartidas públicamente y
private las del propio workspace.
system, community, private Veces que la plantilla se ha usado como origen de un agente.
