Assistenten
Erstellen, aktualisieren, klonen, löschen und verwalten Sie KI-Sprachassistenten über die Talkturo REST-API — konfigurieren Sie Prompts, Stimmen, Modelle und Telefonieeinstellungen.
curl -X POST "https://api.talkturo.com/api/assistants" \
-H "Authorization: Bearer tk_test_example_9xmk7q2r" \
-H "Content-Type: application/json" \
-d '{
"accountSlug": "acme-sales",
"name": "Inbound Qualification Assistant",
"templateId": "tmpl_voice_inbound"
}'
const response = await fetch("https://api.talkturo.com/api/assistants", {
method: "POST",
headers: {
"Authorization": "Bearer tk_test_example_9xmk7q2r",
"Content-Type": "application/json"
},
body: JSON.stringify({
accountSlug: "acme-sales",
name: "Inbound Qualification Assistant",
templateId: "tmpl_voice_inbound"
})
});
const data = await response.json();
console.log(data);
{
"success": true,
"assistant": {
"id": "7d2d1b8f-1f2e-4c24-8d31-6bf0c3d54b4e",
"account_slug": "acme-sales",
"name": "Inbound Qualification Assistant",
"type": "tmpl_voice_inbound",
"created_at": "2025-01-14T10:22:31.000Z",
"updated_at": "2025-01-14T10:22:31.000Z"
}
}
curl -X PATCH "https://api.talkturo.com/api/assistants/7d2d1b8f-1f2e-4c24-8d31-6bf0c3d54b4e" \
-H "Authorization: Bearer tk_test_example_9xmk7q2r" \
-H "Content-Type: application/json" \
-d '{
"accountSlug": "acme-sales",
"name": "Inbound Qualification Assistant v2",
"voice": "alloy",
"model": "gpt-4o-realtime",
"transcriptor_options": {
"provider": "deepgram",
"model": "nova-2"
}
}'
const response = await fetch("https://api.talkturo.com/api/assistants/7d2d1b8f-1f2e-4c24-8d31-6bf0c3d54b4e", {
method: "PATCH",
headers: {
"Authorization": "Bearer tk_test_example_9xmk7q2r",
"Content-Type": "application/json"
},
body: JSON.stringify({
accountSlug: "acme-sales",
name: "Inbound Qualification Assistant v2",
voice: "alloy",
model: "gpt-4o-realtime",
transcriptor_options: {
provider: "deepgram",
model: "nova-2"
}
})
});
const data = await response.json();
console.log(data);
{
"success": true,
"assistant": {
"id": "7d2d1b8f-1f2e-4c24-8d31-6bf0c3d54b4e",
"account_slug": "acme-sales",
"name": "Inbound Qualification Assistant v2",
"type": "tmpl_voice_inbound",
"created_at": "2025-01-14T10:22:31.000Z",
"updated_at": "2025-01-14T11:04:09.000Z"
}
}
curl -X DELETE "https://api.talkturo.com/api/assistants/7d2d1b8f-1f2e-4c24-8d31-6bf0c3d54b4e" \
-H "Authorization: Bearer tk_test_example_9xmk7q2r"
const response = await fetch("https://api.talkturo.com/api/assistants/7d2d1b8f-1f2e-4c24-8d31-6bf0c3d54b4e", {
method: "DELETE",
headers: {
"Authorization": "Bearer tk_test_example_9xmk7q2r"
}
});
const data = await response.json();
console.log(data);
{
"success": true,
"message": "Assistant deleted successfully"
}
curl -X POST "https://api.talkturo.com/api/assistants/7d2d1b8f-1f2e-4c24-8d31-6bf0c3d54b4e/clone" \
-H "Authorization: Bearer tk_test_example_9xmk7q2r"
const response = await fetch("https://api.talkturo.com/api/assistants/7d2d1b8f-1f2e-4c24-8d31-6bf0c3d54b4e/clone", {
method: "POST",
headers: {
"Authorization": "Bearer tk_test_example_9xmk7q2r"
}
});
const data = await response.json();
console.log(data);
{
"success": true,
"assistant": {
"id": "2f850d8a-a9d5-4906-af87-8c9838ab7d5d",
"name": "Inbound Qualification Assistant Copy",
"created_at": "2025-01-14T11:10:42.000Z",
"updated_at": "2025-01-14T11:10:42.000Z"
}
}
curl -X GET "https://api.talkturo.com/api/assistants/7d2d1b8f-1f2e-4c24-8d31-6bf0c3d54b4e/usage-stats" \
-H "Authorization: Bearer tk_test_example_9xmk7q2r"
const response = await fetch("https://api.talkturo.com/api/assistants/7d2d1b8f-1f2e-4c24-8d31-6bf0c3d54b4e/usage-stats", {
method: "GET",
headers: {
"Authorization": "Bearer tk_test_example_9xmk7q2r"
}
});
const data = await response.json();
console.log(data);
{
"success": true,
"stats": {
"total_calls": 148,
"total_minutes": 523,
"last_call_at": "2025-01-14T09:48:12.000Z"
}
}
{
"success": true,
"assistant": {
"id": "7d2d1b8f-1f2e-4c24-8d31-6bf0c3d54b4e",
"account_slug": "acme-sales",
"name": "Inbound Qualification Assistant",
"type": "tmpl_voice_inbound",
"created_at": "2025-01-14T10:22:31.000Z",
"updated_at": "2025-01-14T10:22:31.000Z"
}
}
{
"success": true,
"message": "Assistant deleted successfully"
}
Assistenten verwalten
Erstellen Sie Assistenten, aktualisieren Sie ihre Konfiguration, klonen Sie bestehende Setups, löschen Sie nicht mehr benötigte Assistenten und rufen Sie Nutzungsdaten für Reporting oder operative Prüfungen ab.
Alle Assistant-Endpunkte unterstützen Dual-Authentifizierung über withApiAuth. Authentifizieren Sie sich entweder mit einem Talkturo-API-Schlüssel oder mit einem authentifizierten Session-Cookie.
Basispfad: /api/assistants
Endpunktübersicht
| Methode | Pfad | Beschreibung |
|---|---|---|
POST | /api/assistants | Erstellt einen neuen Assistenten |
PATCH | /api/assistants/{assistantId} | Aktualisiert die Konfiguration eines vorhandenen Assistenten |
DELETE | /api/assistants/{assistantId} | Löscht einen Assistenten |
POST | /api/assistants/{assistantId}/clone | Klont einen vorhandenen Assistenten |
GET | /api/assistants/{assistantId}/usage-stats | Ruft Nutzungsstatistiken für einen Assistenten ab |
Einen Assistenten erstellen
Erstellen Sie einen Assistenten mit einem Kontoslug und einem Namen. Optional können Sie auch eine Vorlage angeben, um den Assistententyp beim Anlegen zu setzen.
Request-Body
Der Slug des Kontos, in dem der Assistent erstellt wird.
Der Anzeigename des Assistenten.
Optionale Vorlagen-ID. Wenn angegeben, setzt Talkturo den Assistententyp aus dieser Vorlage.
Antwortfelder
Gibt an, ob die Anfrage erfolgreich war.
Das neu erstellte Assistant-Objekt.
Die eindeutige Kennung des Assistenten.
Der Kontoslug, dem der Assistent gehört.
Der Name des Assistenten.
Der Typ des Assistenten. Beim Erstellen wird dieser aus templateId abgeleitet, wenn eine Vorlage übergeben wurde.
Zeitstempel der Erstellung im ISO-8601-Format.
Zeitstempel der letzten Aktualisierung im ISO-8601-Format.
Einen Assistenten aktualisieren
Aktualisieren Sie einen vorhandenen Assistenten, indem Sie seine Kennung im Pfad und die zu ändernden Felder im Request-Body übergeben. Der Endpunkt akzeptiert accountSlug optional und validiert transcriptor_options gegen den gewählten Provider und das Modell, bevor Änderungen gespeichert werden.
Pfadparameter
Die UUID des zu aktualisierenden Assistenten.
Request-Body
Optionaler Kontoslug. Geben Sie ihn an, wenn Ihre Integration das Zielkonto explizit festlegen soll.
Beliebige Assistant-Felder, die aktualisiert werden sollen. Der Endpunkt akzeptiert partielle Updates.
Optionale Transkriptionskonfiguration. Talkturo validiert diese Konfiguration gegen den ausgewählten Provider und das Modell, bevor die Aktualisierung gespeichert wird.
Antwortfelder
Gibt an, ob die Anfrage erfolgreich war.
Das aktualisierte Assistant-Objekt.
Einen Assistenten löschen
Löschen Sie einen Assistenten dauerhaft über seine Kennung. Der Endpunkt prüft, ob der Assistent dem authentifizierten Konto gehört, bevor der Löschvorgang ausgeführt wird.
Pfadparameter
Die UUID des zu löschenden Assistenten.
Antwortfelder
Gibt an, ob die Anfrage erfolgreich war.
Bestätigung, dass der Assistent erfolgreich gelöscht wurde.
Einen Assistenten klonen
Klonen Sie einen vorhandenen Assistenten, um schnell eine neue Konfiguration auf Basis eines bestehenden Setups zu erstellen.
Pfadparameter
Die UUID des zu klonenden Assistenten.
Antwortfelder
Gibt an, ob die Anfrage erfolgreich war.
Das neu geklonte Assistant-Objekt.
Die eindeutige Kennung des geklonten Assistenten.
Der Name des geklonten Assistenten.
Zeitstempel der Erstellung im ISO-8601-Format.
Zeitstempel der letzten Aktualisierung im ISO-8601-Format.
Nutzungsstatistiken abrufen
Rufen Sie aggregierte Nutzungsdaten für einen einzelnen Assistenten ab, um Aufrufe, Gesprächsminuten und den Zeitpunkt des letzten Anrufs zu prüfen.
Pfadparameter
Die UUID des Assistenten, dessen Nutzungsstatistiken Sie abrufen möchten.
Antwortfelder
Gibt an, ob die Anfrage erfolgreich war.
Aggregierte Nutzungswerte für den Assistenten.
Die Gesamtzahl der Anrufe, die diesem Assistenten zugeordnet sind.
Die Gesamtzahl der Gesprächsminuten für diesen Assistenten.
Zeitstempel des letzten Anrufs im ISO-8601-Format.
Gemeinsame Antwortstruktur
Die Assistant-Endpunkte verwenden eine konsistente Antwortform mit einem success-Flag und einem ressourcenspezifischen Payload.
Einzelne Endpunkte geben unterschiedliche Payload-Schlüssel zurück, zum Beispiel assistant, stats oder message. Prüfen Sie die Antwortform des jeweiligen Endpunkts, wenn Sie Ihren Client implementieren.