Syntax: POST /api/v1/lead

Über diese Schnittstelle können schnell und einfach von extern Leads angelegt werden. Dabei werden eine Firma, ein Kontakt und eine Verkaufschance erstellt. Wenn ein bestehender Datensatz gefunden wird, wird dieser verwendet. Bestehende Datensätze werden nicht aktualisiert oder mit Informationen angereichert.

Für diese Schnittstelle wird ein ausführliches Webservice-Protokoll geschrieben.

Erkennen von bestehenden Datensätzen

Nur für Firma und Kontakt wird geprüft, ob es bereits bestehende Datensätze gibt. Verkaufschancen hingegen werden immer neu angelegt. Beim Erkennen von bestehenden Datensätzen wird auch die Relationshierarchie berücksichtigt. Bei neuen Datensätzen werden entsprechende Relationen erstellt. Eine Zuordnung durch ein Kriterium muss eindeutig sein. Andernfalls wird sie ignoriert. Die Reihenfolge der Kriterien ist relevant. Sobald entweder eine Firma oder ein Kontakt gefunden wurde, wird kein weiteres Kriterium geprüft.

Es gibt folgende Kriterien zum Erkennen von bestehenden Datensätzen:

  • Migrations Id (Id)
    • Wenn ein Kontakt gefunden wird, wird auch die übergeordnete Firma erkannt
    • Wenn eine Firma gefunden wird, kann ein Kontakt über die E-Mail-Adresse ermittelt werden
  • Kundennummer (Number)
    • Eine Firma kann über deren Kundennummer ermittelt werden
    • Wenn eine Firma gefunden wird, kann ein Kontakt über die E-Mail-Adresse ermittelt werden
  • E-Mail-Adresse (EMailAddress)
    • Ein Kontakt kann über seine E-Mail-Adresse zugeordnet werden
    • Wenn ein Kontakt gefunden wird, wird auch die übergeordnete Firma erkannt
    • Wenn kein Kontakt gefunden wird, wird eine Firma mit der E-Mail-Adresse gesucht
  • Domainsuche für E-Mail-Adresse (EMailAddress)
    • Der Domainteil von einer E-Mail-Adresser (user@domain.de) wird für die Suche verwendet
    • Es wird nur die E-Mail-Adresse von der Firma geprüft
    • Für “max.mustermann@gedys.com” wird eine Firma mit “info@gedys.com” erkannt

Datentypen, welche verarbeitet werden

Gewisse Felder entscheiden, ob ein Datentyp von der Schnittstelle verarbeitet wird:

  • Kontakte werden nur verarbeitet, wenn “LastName” (Nachname) gegeben ist.
  • Firmen werden nur verarbeitet, wenn “Company” (Firmenname) gegeben ist.
  • Verkaufschancen werden nur verarbeitet, wenn “Subject” (Betreff) gegeben ist.

Ausgeschlossene E-Mail-Adressen für bestehende Kontakte

Für gewisse E-Mail-Adressen wird die Suche nach bestehenden Kontakten ausgeschlossen:

  • info@
  • mail@
  • kontakt@
  • webmaster@
  • noreply@
  • support@
  • service@
  • marketing@
  • kundenservice@
  • post@
  • poststelle@
  • rechnung@
  • rechnung-service@
  • service-shop@
  • servicedesk@

Parameter (URL)

Name Pflicht Beschreibung
source Ja Quelle von dem Lead (string)

Parameter (Body)

Name Beschreibung
Id Migration Id. Wird nur in den obersten Datensatz geschrieben, wenn dieser neu angelegt wird. Die Reinfolge ist Firma, Kontakt und Verkaufschance.
EMailAddress Primäre E-Mail-Adresse.
Wird in Kontakt geschrieben wenn vorhanden, ansonsten in die Firma.
Address Primäre Adresse.
Wird in Firma geschrieben wenn vorhanden, ansonsten in den Kontakt.
AdditionalAddress1 Komponente von Adresse.
AdditionalAddress2 Komponente von Adresse.
City Komponente von Adresse.
Country Komponente von Adresse.
Erkennt ISO-Code. Kann keine unbekannten Werte aufnehmen.
State Komponente von Adresse.
Erkennt ISO-Code. Kann unbekannten Werte aufnehmen.
PostalCode Komponente von Adresse.
Phone Telefon Nummer von Firma und Kontakt.
CellPhone Handy Nummer von Kontakt.
Fax Fax Nummer von Firma und Kontakt.
Tags Tag Liste von Firma & Kontakt.
Erkennt Text oder Guid. Kann unbekannte Werte aufnehmen.
Category Kategorie Liste von Firma.
Erkennt Text oder Guid. Kann unbekannte Werte aufnehmen.
MailingList Mailing Liste von Kontakt & Firma.
Erkennt Text oder Guid. Kann unbekannte Werte aufnehmen.
FirstName Vorname von Kontakt.
LastName Nachname von Kontakt.
MiddleName Mittelname von Kontakt.
CommunicationStatus Kommunikationsstatus Liste von Kontakt.
Erkennt Text oder Guid. Kann unbekannte Werte aufnehmen.
Department Abteilungsliste von Kontakt.
Erkennt Text oder Guid. Kann unbekannte Werte aufnehmen.
Function Funktionsliste von Kontakt.
Erkennt Text oder Guid. Kann unbekannte Werte aufnehmen.
JobTitle Berufsbezeichnung.
Titles Titel Liste von Kontakt.
Erkennt Text oder Guid. Kann unbekannte Werte aufnehmen.
DateOfBirth Geburtsdatum von Kontakt.
Datumsformat: RFC1123, “yyyy-MM-dd” oder “yyyy-MM-dd HH:mm:ss”
RelatedResponsibleSalesUnit Verantwortliche Person von Firma (Benutzerprofil).
Zuordnung via Profilnummer, E-Mail-Adresse oder Name. Kann keine unbekannten Werte aufnehmen.
Salutation Anrede für Kontakt.
Erkennt Text oder Guid. Kann unbekannte Werte aufnehmen.
Company Firmen Name.
Number Kundennummer von Firma.
Website Webseite von Firma.
Subject Betreff von Verkaufschance.
Phase Phase von Verkaufschance.
Description Beschreibung von Verkaufschance.
NextStep Nächster Schritt von Verkaufschance.
Currency Währung von Verkaufschance.
Hauswährung wenn undefiniert. Zuordnung durch ISO code. Kann keine unbekannten Werte aufnehmen.
NextStepDate Nächster Schritt Datum von Verkaufschance.
Datumsformat: RFC1123, “yyyy-MM-dd” oder “yyyy-MM-dd HH:mm:ss”
ExpectedClosingDate Abschliesedatum von Verkaufschance.
Datumsformat: RFC1123, “yyyy-MM-dd” oder “yyyy-MM-dd HH:mm:ss”
ContactData Felder für Kontakte, die ohne zusätzliche Verarbeitung in die record Schnittstelle durchgereicht werden.
CompanyData Felder für Firma, die ohne zusätzliche Verarbeitung in die record Schnittstelle durchgereicht werden.
OpportunityData Felder für Verkaufschance, die ohne zusätzliche Verarbeitung in die record Schnittstelle durchgereicht werden.

Mögliche Rückgabestatus

Status Beschreibung
200 OK Datensatz angelegt.
403 Forbidden Der aktuelle Benutzer hat nicht die Berechtigung neue Datensätze anzulegen.
500 Internal server error Bei der Verarbeitung kam es zu einem unvorhergesehenen Fehler.

Rückgabe

Der Aufruf dieses Endpunkts liefert eine JSON-Struktur mit Informationen über diesen Prozess aus.

Beispiel:

[
    {
        "Opportunity": {
          "Action": "Created/Existing",
          "Oid": "00000000-0000-0000-0000-000000000000"
        },
        "Contact": { ... },
        "Company": { ... },
    }
]