CRMKontakte

Kontakte

Verwalte Kontaktdatensätze, Anmeldung und wählbereite Daten, damit Assistenten ausgehende und eingehende Sprachgespräche personalisieren können.

curl -X POST "https://app.talkturo.com/api/crm/contacts" \
  -H "Authorization: Bearer tk_example_9xmk7q2r" \
  -H "Content-Type: application/json" \
  -d '{
    "companyId": "cmp_7f3c2a91",
    "firstName": "Maya",
    "lastName": "Patel",
    "phone": "+14155550182",
    "email": "maya.patel@northstar.io",
    "leadStatus": "qualified",
    "source": "webinar",
    "timezone": "America/Los_Angeles",
    "tags": ["enterprise", "west-region"],
    "customFields": {
      "productInterest": "voice automation",
      "employeeCount": 120
    }
  }'
{
  "id": "ctc_a1b2c3d4",
  "companyId": "cmp_7f3c2a91",
  "firstName": "Maya",
  "lastName": "Patel",
  "phone": "+14155550182",
  "email": "maya.patel@northstar.io",
  "leadStatus": "qualified",
  "source": "webinar",
  "timezone": "America/Los_Angeles",
  "doNotCall": false,
  "tags": ["enterprise", "west-region"],
  "customFields": {
    "productInterest": "voice automation",
    "employeeCount": 120
  }
}
curl -X POST "https://app.talkturo.com/api/crm/contacts" \
  -H "Authorization: Bearer tk_example_9xmk7q2r" \
  -H "Content-Type: application/json" \
  -d '{
    "companyId": "cmp_7f3c2a91",
    "firstName": "Daniel",
    "lastName": "Ruiz",
    "phone": "+12125550149",
    "campaignId": "cam_4820af31",
    "campaignPriority": 90
  }'
{
  "id": "ctc_g7h8i9j0",
  "firstName": "Daniel",
  "lastName": "Ruiz",
  "phone": "+12125550149",
  "companyId": "cmp_7f3c2a91",
  "campaignEnrollment": {
    "campaignId": "cam_4820af31",
    "status": "pending",
    "priority": 90
  }
}
curl -G "https://app.talkturo.com/api/crm/contacts" \
  -H "Authorization: Bearer tk_example_9xmk7q2r" \
  --data-urlencode "search=maya" \
  --data-urlencode "companyId=cmp_7f3c2a91" \
  --data-urlencode "leadStatus=qualified" \
  --data-urlencode "doNotCall=false" \
  --data-urlencode "hasPhone=true" \
  --data-urlencode "limit=25" \
  --data-urlencode "offset=0"
{
  "data": [
    {
      "id": "ctc_a1b2c3d4",
      "firstName": "Maya",
      "lastName": "Patel",
      "phone": "+14155550182",
      "email": "maya.patel@northstar.io",
      "leadStatus": "qualified",
      "doNotCall": false,
      "companyId": "cmp_7f3c2a91"
    }
  ],
  "limit": 25,
  "offset": 0
}
curl -X PUT "https://app.talkturo.com/api/crm/contacts/ctc_a1b2c3d4" \
  -H "Authorization: Bearer tk_example_9xmk7q2r" \
  -H "Content-Type: application/json" \
  -d '{
    "leadStatus": "customer",
    "jobTitle": "Operations Director",
    "doNotCall": true,
    "customFields": {
      "implementationStage": "contract-sent"
    }
  }'
{
  "id": "ctc_a1b2c3d4",
  "leadStatus": "customer",
  "jobTitle": "Operations Director",
  "doNotCall": true,
  "customFields": {
    "implementationStage": "contract-sent"
  }
}
curl -X DELETE "https://app.talkturo.com/api/crm/contacts/ctc_a1b2c3d4" \
  -H "Authorization: Bearer tk_example_9xmk7q2r"
{
  "success": true
}

Kontaktdaten an einem Ort verwalten

Kontakte sind die Personen, die deine Assistenten anrufen, und die Personen, die deine Assistenten anrufen. Jeder Kontaktdatensatz speichert persönliche Details, Lead-Status, die Beziehung zum Unternehmen und benutzerdefinierte Felder, die Talkturo verwendet, um Gespräche zu personalisieren, Aktivitäten nachzuverfolgen und den Wählvorgang für Kampagnen zu unterstützen.

Ein vollständiger Kontaktdatensatz macht nachgelagerte Workflows zuverlässiger. Wenn Telefonnummern, Unternehmensverknüpfungen und Lead-Daten korrekt sind, können Assistenten Anrufe richtig weiterleiten, CRM-Datensätze nach Gesprächen aktualisieren und vermeiden, Kontakte anzurufen, die ausgeschlossen werden sollten.

Verwende Unternehmen, um geschäftliche Datensätze auf Unternehmensebene zu verwalten, die mit Kontakten verknüpft sind, und benutzerdefinierte Felder, um Workspace-spezifische Daten zu erfassen, die nicht in das Standardschema passen.

Kontaktfelder

Verwende diese Felder, wenn du Kontakte erstellst, importierst oder aktualisierst.

firstNamestring
Required

Vorname des Kontakts. Dieses Feld muss vorhanden und darf nicht leer sein.

lastNamestring
Required

Nachname des Kontakts. Dieses Feld muss vorhanden und darf nicht leer sein.

phonestring
Required

Primäre Telefonnummer im E.164-Format. Dieses Feld muss vorhanden sein und +[1-9] gefolgt von 6 bis 14 Ziffern entsprechen.

Speichere Telefonnummern im E.164-Format, zum Beispiel +14155550182. So bleiben Wählvorgang, Deduplizierung und der Abgleich eingehender Anrufer im gesamten Workspace konsistent.

emailstring

E-Mail-Adresse des Kontakts.

phoneSecondarystring

Sekundäre Telefonnummer des Kontakts.

jobTitlestring

Berufsbezeichnung oder Rolle.

leadStatusstring

Aktueller Lead-Status für Qualifizierung, Routing oder Follow-up-Workflows.

sourcestring

Wie der Kontakt in deine Pipeline gelangt ist, zum Beispiel über ein Formular, eine Empfehlung oder eine hochgeladene Liste.

timezonestring

Zeitzone des Kontakts im IANA-Format, zum Beispiel America/Los_Angeles.

preferredContactMethodstring

Bevorzugte Kontaktmethode des Kontakts.

doNotCallboolean

Kennzeichnet den Kontakt als vom Wählvorgang in Kampagnen ausgeschlossen.

notesstring

Freitextnotizen für Vertrieb, Support oder Qualifizierungskontext.

customFieldsRecord<string, any>

Workspace-spezifische strukturierte Daten, die für den Kontakt gespeichert werden. Verwende dieses Feld für Daten, die je nach Team oder Workflow variieren.

tagsstring[]

Liste von Tags für Segmentierung, Filterung oder Reporting.

companyIdstring
Required

Zugehöriger Unternehmensdatensatz. Das Unternehmen muss zum selben Workspace gehören wie der Kontakt.

Kontakte erstellen

Erstelle Kontakte entweder einzeln im Dashboard oder programmgesteuert über die API. In beiden Fällen sind die mindestens erforderlichen Felder companyId, firstName, lastName und phone.

Einen Kontakt im Dashboard erstellen

Die Seite Kontakte öffnen

Gehe in deinem Workspace zur CRM-Seite Kontakte und beginne einen neuen Kontaktdatensatz.

Die erforderlichen Felder eingeben

Füge den Vornamen, den Nachnamen, die primäre Telefonnummer und das zugehörige Unternehmen des Kontakts hinzu. Wenn die Telefonnummer gültig ist, sollte sie im E.164-Format gespeichert werden und für Wählvorgang-Workflows bereit sein.

Optionalen Kontext hinzufügen

Fülle Lead-Status, Quelle, Zeitzone, Tags, Notizen und alle benutzerdefinierten Felder aus, die dein Team verwendet. Dieser Kontext steht Assistenten während Gesprächen und für Follow-up-Automatisierungen zur Verfügung.

Den Kontakt speichern

Speichere den Datensatz. Nach dem Speichern erscheint der Kontakt in der Kontaktliste und kann für Kampagnenanmeldung, Aktivitätsverfolgung und Opportunity-Workflows verwendet werden.

Einen Kontakt über die API erstellen

EndpunktMethodeZweck
/api/crm/contactsPOSTEinen neuen Kontakt erstellen
/api/crm/contactsGETKontakte mit Filtern auflisten
/api/crm/contacts/[id]GETEinen einzelnen Kontakt mit zugehörigen Aktivitäten abrufen
/api/crm/contacts/[id]PUTEinen bestehenden Kontakt aktualisieren
/api/crm/contacts/[id]DELETEEinen Kontakt löschen, falls zulässig

Authentifiziere Kontakt-API-Anfragen entweder mit einer angemeldeten Sitzung oder einem API-Schlüssel.

Einen Kontakt bei der Erstellung in einer Kampagne anmelden

Du kannst einen Kontakt bei der Erstellung anmelden, indem du campaignId und campaignPriority in die Anfrage aufnimmst. Das ist nützlich, wenn importierte oder synchronisierte Kontakte sofort mit dem Wählvorgang beginnen sollen.

campaignIdstring

Kampagne, in die der Kontakt bei der Erstellung aufgenommen werden soll.

campaignPrioritynumber

Wählpriorität für den Kontakt in dieser Kampagne. Höhere Werte werden früher gewählt.

Wenn der Kontakt als do not call markiert ist, erstellt die Kampagnenanmeldung keinen wählbaren Datensatz mit dem Status pending. Stattdessen setzt Talkturo den Kampagnenstatus auf skipped.

Kontakte aus CSV importieren

Verwende den CSV-Import, wenn du eine große Liste von Kontakten auf einmal hinzufügen musst. Der Importablauf unterstützt Spaltenzuordnung, Validierung und Deduplizierung, bevor Datensätze erstellt werden.

Die CSV-Datei vorbereiten

Füge eine Kopfzeile und mindestens die Spalten ein, die zum Zuordnen von firstName, lastName, phone und companyId oder eines anderen Felds benötigt werden, das dein Import-Workflow zur Identifizierung des Unternehmens verwendet. Formatiere Telefonnummern vor dem Upload einheitlich, um Validierungsfehler und doppelte Datensätze zu reduzieren.

Hochladen und Spalten zuordnen

Lade die CSV-Datei von der Seite Kontakte hoch und ordne jede CSV-Spalte dem richtigen Talkturo-Kontaktfeld zu. Ordne zusätzliche Spalten Feldern wie leadStatus, source, tags, notes oder den benutzerdefinierten Feldern deines Workspace zu.

Validierungsergebnisse prüfen

Talkturo validiert Feldformate und prüft während des Imports auf Duplikate. Erfolgreiche Zeilen sind bereit für den Import, während ungültige Zeilen korrigiert und erneut versucht werden können.

Den Import ausführen

Starte den Import, nachdem die Zuordnungen korrekt aussehen. Wenn der Import abgeschlossen ist, erscheinen die neuen Kontakte in der Liste und stehen für Filterung, Kampagnenanmeldung und Personalisierung durch Assistenten zur Verfügung.

Was der CSV-Import übernimmt

  • Spaltenzuordnung zu standardmäßigen Talkturo-Kontaktfeldern
  • Zuordnung benutzerdefinierter Felder für Workspace-spezifische Daten
  • Validierung für erforderliche Felder und Telefonnummernformatierung
  • Deduplizierung zur Reduzierung doppelter Kontakte

Kontakte suchen und filtern

Verwende Filter, um große Kontaktlisten einzugrenzen, bevor du Kontakte bearbeitest, exportierst oder in Kampagnen anmeldest.

FilterTypVerhalten
teamIdQuery-ParameterBegrenzt Ergebnisse auf ein Team
companyIdQuery-ParameterBegrenzt Ergebnisse auf ein Unternehmen
searchQuery-ParameterDurchsucht Name, E-Mail und Telefonnummer mit Groß-/Kleinschreibung-unabhängiger Suche
leadStatusQuery-ParameterFiltert nach Lead-Status
doNotCallQuery-ParameterFiltert nach DNC-Flag
hasPhoneQuery-ParameterBegrenzt Ergebnisse auf Kontakte mit Telefonnummer
limitQuery-ParameterMaximale Anzahl zurückgegebener Ergebnisse
offsetQuery-ParameterErgebnisversatz für Paginierung

Die Suche verwendet Groß-/Kleinschreibung-unabhängige Übereinstimmung für Namens-, E-Mail- und Telefonnummernfelder. Die Paginierung verwendet limit und offset, wodurch sich inkrementelle Sync-Jobs leicht aufbauen oder große Ergebnismengen im Dashboard durchblättern lassen.

Bestehende Kontakte verwalten

Nachdem ein Kontakt existiert, kannst du den vollständigen Datensatz abrufen, CRM-Daten aktualisieren oder den Kontakt entfernen, sofern keine aktive Kampagne davon abhängt.

Kontakt-Endpunkte

EndpunktMethodeRückgabe
/api/crm/contactsGETPaginierte Liste von Kontakten
/api/crm/contacts/[id]GETEin einzelner Kontakt mit zugehörigen Details
/api/crm/contacts/[id]PUTAktualisierter Kontaktdatensatz
/api/crm/contacts/[id]DELETELöschresultat oder blockierender Fehler

Einen Kontaktdatensatz anzeigen

GET /api/crm/contacts/[id] gibt den Kontakt zusammen mit zugehörigem CRM-Kontext zurück. Verwende das, wenn du einen vollständigen Datensatz für Agent-Tools, interne Dashboards oder Synchronisierungslogik benötigst.

Die Detailansicht enthält zugehörige Aktivitäten, Opportunities und den Kampagnenverlauf. Dieser Verlauf hilft dir zu verstehen, was bei früheren Anrufen passiert ist und ob ein Kontakt bereits Teil einer laufenden Outreach-Maßnahme ist.

Einen Kontakt aktualisieren

Verwende PUT /api/crm/contacts/[id], um Standardfelder, benutzerdefinierte Felder, Tags, Lead-Status oder das do not call-Flag zu ändern.

Einen Kontakt löschen

Verwende DELETE /api/crm/contacts/[id], um einen Datensatz zu entfernen, der nicht mehr benötigt wird.

Talkturo blockiert das Löschen, wenn der Kontakt Teil einer aktiven Kampagne ist. Entferne den Kontakt aus aktiven Kampagnen-Workflows, bevor du es erneut versuchst.

Do not call-Verhalten

Setze doNotCall für jeden Kontakt, der niemals von Kampagnen gewählt werden soll. Dieses Flag wird auf mehreren Ebenen durchgesetzt, sodass ausgeschlossene Kontakte nicht über Importe, Aktualisierungen oder Kampagnenanmeldung erneut in Warteschlangen für den Wählvorgang gelangen.

Do not call-Kontakte sind vom Wählvorgang in Kampagnen ausgeschlossen. Wenn ein do not call-Kontakt in einer Kampagne angemeldet wird, setzt Talkturo den Kampagnenstatus auf skipped statt auf pending.

Der DNC-Status ist nützlich für Compliance, manuelle Unterdrückung und die Kontrolle der Lead-Qualität. Du kannst ihn in einzelnen Kontaktdatensätzen aktualisieren und per Filter prüfen, welche Kontakte aktuell unterdrückt sind.

Kampagnenanmeldung und Verlauf

Kontakte können Kampagnen beitreten, wenn du sie erstellst, oder später über die Seite für Kampagnenkontakte. Die Priorität steuert die Reihenfolge des Wählvorgangs, wobei höhere Werte früher gewählt werden.

Der Kampagnenverlauf erscheint in der Detailansicht des Kontakts. Nutze diesen Verlauf, um zu prüfen, ob ein Kontakt in die Warteschlange gestellt, übersprungen, kontaktiert oder von früherem Outreach verarbeitet wurde.

KI-Datenextraktion und Aktivitätsprotokollierung

Talkturo kann strukturierte Daten aus Anruftranskripten extrahieren und sie zurück in den Kontaktdatensatz schreiben. Dazu gehören Standard-CRM-Felder und customFields, sodass Assistenten Informationen erfassen können, ohne dass von Anfang an ein vollständig starres Schema erforderlich ist.

Jede extrahierte Aktualisierung ist mit einer CRM-Aktivität verknüpft. Kontaktdatensätze können protokollierte Anrufaktivitäten mit Aktivitätstyp, Betreff und Ergebnis enthalten, wodurch dein Team nachvollziehen kann, was passiert ist und warum Felder geändert wurden.

Ein vollständiger Kontaktdatensatz wird mit der Zeit wertvoller. Während Assistenten mehr Anrufe verarbeiten, bilden extrahierte Daten, Kampagnenverlauf und zugehörige Opportunities einen klareren Datensatz für Sales- und Support-Teams.

Verwandte Seiten