API-Interface

Mit API-Interface von Zadarma können Sie die VoIP-Dienstleistungen für eigene Anwendungen benutzen, sowie mit beliebigen CRM-Systemen und Programme fürs Call Center integrieren. API ist für alle verfügbar und jeder Entwickler wird die Einstellungen ziemlich einfach finden.

Bei API sind alle Grundoptionen vorhanden:

  • SIP- und PBX-Einstellungen anzeigen und ändern;
  • Statistik und Kontostand anzeigen;
  • Anrufe (Callback auf externe und interne Nummern) und SMS-Versand;
  • Benachrichtigung des externen Servers über jeden eingehenden an die PBX Anruf sowie über Weiterleitung externer Anrufe.

Link auf API: https://api.zadarma.com

API Version: v1

Endlink auf Methode: https://api.zadarma.com/v1/METHOD/

Sie können fertige Lösungen runterladen um mit PHP, C#, Python der API zu arbeiten, auf unserem GitHub.

Anleitung für Integration eigenes CRM-System mit Zadarma

-

Anmeldung

Jede Anfrage, die nach eine Anmeldung verlangt, wird von einer zusätzlichen Schlagzeile in Form von:
"Authorization: Benutzerschlüssel: Unterschrift" begleitet.

Die Autorisierungsschlüssel erhalten Sie in Menü-Punkt Mein Profil.

Unterschrift wird folgendermaßen erstellt:

  • Menge von den weitergegebenen Parametern (GET, POST, PUT, DELETE) werden nach dem Schlüssel alphabetisch sortiert;
  • aus dieser sortierte Menge wird die Anfragezeile erstellt (z.B. die Funktion http_build_query in PHP), Beispiel "from=DATEFROM&to=DATETO…";
  • und weiter wird nach Formel zusammengestellt: Zeile =Name_der_Methode Anfragezeile md5( Anfragezeile), wo "Name_der_Methode" ist eine Anfragezeile, beginnend vom Domain ( Mit Angabe der API Version) und bis Aufzählung der Parametern, z.B. /v1/sip/"
  • Die empfangene Zeile wird mithilfe des sha1-Algorithmus mit dem geheimen Schlüssel des Benutzers gehasht: Hash = hash (Zeile, geheimer_Schlüssel)
  • und dann wird Hash in base64 kodiert Unterschrift = base64_encode( hash )

Beispiel für PHP:

ksort($params);

$paramsStr = http_build_query($params, null, '&', PHP_QUERY_RFC1738);

$sign = base64_encode(hash_hmac('sha1', $method . $paramsStr . md5($paramsStr), $secret));

$header = 'Authorization: ' . $userKey . ':' . $sign;

Fertige Lösung PHP für API, können Sie hier runterladen: GitHub.

Antwort-Formate: json (standardmäßig) и xml.

Um eine Antwort von API in XML-Datei zu bekommen, füge Sie bitte den Parameter "format=xml" in die Anfragezeile hinzu.

Beschränkungen

In der Antwort können Sie auch die nformationen über die Limits und aktueller Anfrage finden, z.B.:

X-Zadarma-Method: /v1/
X-RateLimit-Reset: 1434371160
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 99

wo,

  • X-Zadarma-Method - aktuelle Anrufsmethode;
  • X-RateLimit-Remaining - Anzahl der Anfragen, die noch gesendet werden können mit Berücksichtigung von Limits für Methode und Benutzer;
  • X-RateLimit-Limit - Gesamtzahl der Limit für Anfragen pro Minute;
  • X-RateLimit-Reset - Zeit zum Zurücksetzen der Einschränkung.

Generelle Limits: 100 Anfragen pro Minute, bei Statistiken - 10 Anfragen pro Minute.

Im Falle einer Blockierung kommt eine Rückmeldung mit dem 429 Überschrift "You exceeded the rate limit".

Eine Rückmeldung besteht aus einem Pflichtschlüssel "status" (success oder error). Danach, je nach gewählter Methode, werden die Schlüssel mit der geforderten Information verteilt.

Im Falle eines Fehlers wird der zusätzliche Schlüssel "message" mit Beschreibung des Fehlers vergeben.

Alle Rückmeldungen werden von dementsprechenden HTTP-Überschriften begleitet.

Beispiel eines Fehlerrückmeldung:

JSON:

	{
		"status":"error",
		"message":"Check phone's number"
	}

XML:

	<?xml version="1.0"?>
	<answer>
		<status>error</status>
		<message>Check phone's number</message>
	</answer>

Verfügbare Methoden:

  • /v1/info/balance/
    Kontostand des Benutzers
  • /v1/info/price/
    Anrufkosten nach aktuellen Tarif.
  • /v1/info/timezone/
    Zeitzone des Benutzers.
  • /v1/tariff/
    Informationen über den aktuellen Tarif.
  • /v1/request/callback/
    Callback.
  • /v1/sip/
    alle SIP-Nummern des Benutzers.
  • /v1/sip/<SIP>/status/
    SIP-Nummern des Benutzers in On-Line Status.
  • /v1/sip/callerid/
    CallerID ändern.
  • /v1/sip/redirection/
    Aktuelle Anrufweiterleitungen nach SIP-Nummern des Benutzers.
  • /v1/direct_numbers/
    Informationen über interne Nummern des Benutzers.
  • /v1/sip/redirection/
    Weiterleitung nach SIP: an / aus.
  • /v1/sip/redirection/
    Änderung den Parametern.
  • /v1/pbx/internal/
    Anzeige der internen PBX-Nummern.
  • /v1/pbx/internal/<PBXSIP>/status/
    Interne PBX-Nummer mit On-Line Status.
  • /v1/pbx/internal/recording/
    Gesprächsaufnahme auf interner PBX-Nummer aktivieren.
  • /v1/pbx/record/request/
    Anfrage über die Aufnahmedatei.
  • /v1/pbx/redirection/
    Die Parametern für Anrufweiterleitung an interner PBX-Nummer ändern.
  • /v1/pbx/redirection/
    Die Parametern für Anrufweiterleitung an interner PBX-Nummer erhalten.
  • /v1/sms/send/
    SMS-Versand.
  • /v1/statistics/
    Allgemeine Statistik erhalten.
  • /v1/statistics/pbx/
    PBX-Statistik.
  • /v1/statistics/callback_widget/
    Callback-Statistik (Widget).
  • /v1/info/number_lookup/
    Kontakte aktualisieren.
  • /v1/speech_recognition/
    Erkennungsergebnissen erhalten.
  • /v1/speech_recognition/
    Spracherkennung starten.
  • JSON
  • XML
{
    "status":"success",
    "balance":10.34,
    "currency":"USD"
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <balance>10.34</balance>
    <currency>USD</currency>
</answer>

Parameter:

  • number – Telefonnummer
  • caller_id (optional) – CallerID, die bei dem Anruf verwendet wird.
  • JSON
  • XML
{
    "status":"success",
    "info":{
        "prefix":"4420",
        "description":"United Kingdom, London",
        "price":"0.009",
        "currency":"USD",
    }
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <info>
        <prefix>4420</prefix>
        <description>United Kingdom, London</description>
        <price>0.009</price>
        <currency>USD</currency>
    </info>
</answer>

  • JSON
  • XML
{
    "status":"success",
    "unixtime":1483228800,
    "datetime":"2017-01-01 00:00:00",
    "timezone":"UTC+0"
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <unixtime>1483228800</unixtime>
    <datetime>2017-01-01 00:00:00</datetime>
    <timezone>UTC+0</timezone>
</answer>

  • JSON
  • XML
{
    "status":"success",
    "info": {
        "tariff_id":5,
        "tariff_name":"Standart, special",
        "is_active":false,
        "cost":0,
        "currency":USD,
        "used_seconds":1643,
        "used_seconds_mobile":34,
        "used_seconds_fix":726,
        "tariff_id_for_next_period":5,
        "tariff_for_next_period":Standart, special
    }
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <info>
        <tariff_id>5</tariff_id>
        <tariff_name>Standart, special</tariff_name>
        <is_active>false</is_active>
        <cost>0</cost>
        <currency>USD</currency>
        <used_seconds>1643</used_seconds>
        <used_seconds_mobile>726</used_seconds_mobile>
        <used_seconds_fix>726</used_seconds_fix>
        <tariff_id_for_next_period>5</tariff_id_for_next_period>
        <tariff_for_next_period>Standart, special</tariff_for_next_period>
    </info>
</answer>

wo

  • tariff_id– ID des aktuellen Tarifs;
  • tariff_name – Name des aktuellen Tarifs;
  • is_active – aktueller Tarif: aktiv / inaktiv;
  • cost – Tarifkosten;
  • currency – Tarifwährung;
  • used_seconds – verbrauchte Gesprächssekunden des Tarifs;
  • used_seconds_mobile – verbrauchte Sekunden des Tarifs auf Mobilfunknummer;
  • used_seconds_fix – verbrauchte Sekunden des Tarifs auf den Festnetz -Nummern ;
  • tariff_id_for_next_period – ID des Tarifes für nächsten Zeitraum;
  • tariff_for_next_period – Name des Tarifes für nächsten Zeitraum.

Parameter:

  • from – Ihre Telefonnummer oder SIP-Nummer, oder interne PBX-Nummer, oder Szenarionummer, die CallBack bestellt;
  • to – Telefonnummer oder SIP-Nummer, die angerufen wird;
  • sip (optional) – SIP-Nummer des Nutzers oder interne PBX-Nummer (zB 100), die Anruf annimmt. Es wird die CallerID dieser Nummer benutzt, in der Statistik wir diese SIP bzw. PBX-Nummer angezeigt. Falls Gesprächsaufnahme oder Präfixe aktiviert sind, werden diese auch berücksichtigt;

  • predicted (optional) – falls dieser Parameter aktiv ist, wird die Anfrage als prädikativ bezeichnet (das System ruft zuerst die Nummer "to" an. und nur in dem Fall, wenn die Verbindung besteht, wird Ihre SIP- bzw. Telefonnummer angerufen);
  • JSON
  • XML
{
    "status":"success",
    "from": 442037691880,
    "to": 442037691881,
    "time": 1435573082
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <from>442037691880</from>
    <to>442037691881</to>
    <time>1435573082</time>
</answer>

  • JSON
  • XML
{
    "status":"success",
    "sips":[
        {
            "id":"00001",
            "display_name":"SIP 1",
            "lines":3
        },
        {
            "id":"00002",
            "display_name":"SIP 2",
            "lines":3
        }
    ],
    "left":3
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <sips>
        <value>
            <id>00001</id>
            <display_name>SIP 1</display_name>
            <lines>3</lines>
        </value>
        <value>
            <id>00002</id>
            <display_name>SIP 2</display_name>
            <lines>3</lines>
        </value>
    </sips>
    <left>1</left>
</answer>

wo

  • id– SIP-ID;
  • display_name – Angezeigter Name;
  • lines – Anzahl den Leitungen;
  • left – Anzahl den SIP-Nummern, die Sie noch erstellen können (abhängig von Kontostand und dem Anzahl bereits erstellte SIP).
  • JSON
  • XML
{
    "status":"success",
    "sip":"00001",
    "is_online":"false"
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <sip>00001</sip>
    <is_online>false</is_online>
</answer>

Parameter:

  • id – SIP-ID, bei der CallerID geändert wird;
  • number – Die Nummer für neuen CallerID, in international Format (aus der Liste mit bestätigten oder erworbenen Nummern).
  • JSON
  • XML
{
    "status":"success",
    "sip":"00001",
    "new_caller_id":"442037691880"
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <sip>00001</sip>
    <new_caller_id>442037691880</new_caller_id>
</answer>

Parameter:

  • id – (optional) Auswahl der bestimmte SIP.
  • JSON
  • XML
{
    "status":"success",
    "info": [
        {
        "sip_id":"00001",
        "status":"on",
        "condition":"always",
        "destination":"phone",
        "destination_value":"442037691880",
        },
    ...
    ]
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <info>
        <value>
            <sip_id>00001</sip_id>
            <status>on</status>
            <condition>always</condition>
            <destination>phone</destination>
            <destination_value>442037691880</destination_value>
        </value>
    ...
    </info>
</answer>

wo

  • sip_id– SIP-ID des Benutzers;
  • status – aktueller Status: on oder off;
  • condition – Bedingungen der Weiterleitung: always – immer (standardmäßig), unavailable – nicht verfügbar (In dem Fall, wenn keine Antwort oder keine Verbindung besteht);
  • destination – Weitergeleitet auf: phone – auf Telefonnummer, pbx – auf PBX;
  • destination_value – Die Nummer für die Weiterleitung: Telefonnummer oder PBX-ID.
  • JSON
  • XML
{
    "status":"success",
    "info": [
        {
            "number":"442037691880",
            "status":"on",
            "country":"Great Britain",
            "description":"London",
            "number_name":null,
            "sip":00001,
            "sip_name":null,
            "start_date":"2015-01-01 18:14:44",
            "stop_date":"2016-02-11 18:14:40",
            "monthly_fee":2,
            "currency":USD,
            "channels":2,
            "autorenew":"true",
            "is_on_test":"false",
            "type":"common"
        },
    ...
    ]
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <info>
        <value>
            <number>442037691880</number>
            <status>on</status>
            <country>Великобритания</country>
            <description>Лондон</description>
            <number_name>null</number_name>
            <sip>00001</sip>
            <sip_name>Example</sip_name>
            <start_date>2015-01-01 18:14:44</start_date>
            <stop_date>2016-02-11 18:14:40</stop_date>
            <monthly_fee>2</monthly_fee>
            <currency>USD</currency>
            <channels>2</channels>
            <autorenew>true</autorenew>
            <is_on_test>false</is_on_test>
            <type>common</type>
        </value>
    ...
    </info>
</answer>

Abhängig von Nummer-Typ, kann die Zusammenstellung der Felder variieren. Beschreibung der Felder:

  • number – Erworbene virtuelle Nummer des Benutzers;
  • status – Status der Nummer;
  • country – Land (für "common" und "revenue");
  • description – Beschreibung: Stadt oder Typ (für "common" и "revenue");
  • number_name – "Name" der virtuellen Nummer (vom Benutzer festgelegt);
  • sip – SIP, der mit Nummer verknüpft ist, ;
  • sip_name – "Name" der SIP, der mit Nummer verknüpft ist;
  • start_date – Datum, wann die Nummer erworben wurde;
  • stop_date – Datum, bis wann die Nummer bezahlt ist;
  • monthly_fee – Kosten für die Nummer (für "common");
  • currency – Währung für die Nummer (für "common");
  • channels – Anzahl der Leitungen auf der Nummer (für "common");
  • minutes – Gesamtdauer den eingehenden Anrufen pro Monat (für "revenue");
  • autorenew – automatische Nummerverlängerung: aktiv / inaktiv (für "common", "revenue", "rufree");
  • is_on_test – Nummer in Testmodus: ja / nein;
  • type – Typ der Nummer: "common" (virtuelle Nummer), "inum" (kostenlose internationale Nummer), "rufree" (kostenlose Moskauer Nummer), "revenue" (kostenlose Moskauer Nummer mit Vorwahl 495)

Parameter:

  • id – SIP id;
  • status –Status der Weiterleitung auf definierte SIP-Nummer.
  • JSON
  • XML
{
    "status":"success",
    "sip":"00001",
    "current_status":"on"
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <sip>00001</sip>
    <current_status>on</current_status>
</answer>

Parameter:

  • id – SIP id;
  • type – Typ der Weiterleitung: phone – Auf Telefon;
  • number – Telefonnummer.
  • JSON
  • XML
{
    "status":"success",
    "sip":"00001",
    "destination":"442037691880"
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <sip>00001</sip>
    <destination>442037691880</destination>
</answer>

  • JSON
  • XML
{
    "status":"success",
    "pbx_id":1234,
    "numbers": [
        100,
        101,
        ...
    ]
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <pbx_id>1234</pbx_id>
    <numbers>
        <value>100</value>
        <value>101</value>
        ...
    </numbers>
</answer>

wo

  • pbx_id – ID der Benutzer-PBX;
  • numbers – Liste der internen Nummern.
  • JSON
  • XML
{
    "status":"success",
    "pbx_id":1234,
    "number":100,
    "is_online":"false"
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <pbx_id>1234</pbx_id>
    <number>100</number>
    <is_online>false</is_online>
</answer>

wo

  • pbx_id – PBX-ID;
  • number – Interne PBX-Nummer;
  • is_online – Online-Status (true|false).

Parameter:

  • id – Durchwahlnummer (interne Rufnummer) der PBX;
  • status – Modus: "on" - anschalten, "off" - ausschalten, "on_email" - nur Voicemail aktivieren, "off_email" - nur Voicemail deaktivieren, "on_store" - nur Aufnahme in den Datenbank aktivieren, "off_store" - nur Aufnahme in den Datenbank deaktivieren;
  • email – (fakultativ) Änderung der Email-Adresse, wo Ihre Gesprächsaufnahmen hin verschickt werden. Sie können bis 3 Email-Adressen durch Kommazeichen inzwischen eingeben.
  • JSON
  • XML
{
    "status":"success",
    "internal_number":100,
    "recording":"on",
    "email":"test@test.com"
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <internal_number>100</internal_number>
    <recording>on</recording>
    <email>on</email>
</answer>

Parameter:

  • call_id – ID des Anrufes, dieser ID wird im Name der Datei mit Gesprächsaufnahme angegeben (eigener ID für jede Gesprächsaufnahme in der Statistik);
  • pbx_call_id – Fix-ID des externen Anrufes an PBX (wird bei Durchgehen über die Szenarien, Sprachmenüs, Transfer usw. nicht geändert. Wird in Statistik und Benachrichtigungen angezeigt);
  • lifetime – (optional) aktueller Stand des Links in Sekunden (mindestens 180, höchstens 5184000, standardmäßig 1800).

Anmerkung: Es ist ausreichend, wenn Sie nur einen von zwei Parameter Eingeben (pbx_call_id oder call_id), bei Eingabe der pbx_call_id können mehrere Links in Antwort angegeben werden.

  • JSON
  • XML

Beispielantwort, wenn nur call_id angegeben wird; Nur ein Link:

{
    "status":"success",
    "link": "https://api.zadarma.com/v1/pbx/record/download/NjM3M..NzM2Mg/1-1458313316.343456-100-2016-01-11-100155.mp3",
    "lifetime_till": "2016-01-01 23:56:22"
}

Beispielantwort, wenn nur pbx_call_id angegeben wird; mehrere Links:

{
    "status":"success",
    "links":[
        "https://api.zadarma.com/v1/pbx/record/download/NjM3M..NzM2Mg/1-1458313316.343456-100-2016-01-11-100155.mp3",
        "https://api.zadarma.com/v1/pbx/record/download/pw7Cj..iOzn99/1-1458313475.213487-101-2016-01-11-100211.mp3"
    ],
    "lifetime_till": "2016-01-01 23:56:22"
}

Beispielantwort, wenn nur call_id angegeben wird; Nur ein Link:

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <link>https://api.zadarma.com/v1/pbx/record/download/NjM3M..NzM2Mg/1-1458313316.343456-100-2016-01-11-100155.mp3</link>
    <lifetime_till>2016-01-01 23:56:22</lifetime_till>
</answer>

Beispielantwort, wenn nur pbx_call_id angegeben wird; mehrere Links:

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <links>
        <value>https://api.zadarma.com/v1/pbx/record/download/NjM3M..NzM2Mg/1-1458313316.343456-100-2016-01-11-100155.mp3</value>
        <value>https://api.zadarma.com/v1/pbx/record/download/pw7Cj..iOzn99/1-1458313475.213487-101-2016-01-11-100211.mp3</value>
    </links>
    <lifetime_till>2016-01-01 23:56:22</lifetime_till>
</answer>

Parameter:

  • link – Link auf die Aufnahmedatei;
  • lifetime_till – bis wann ist der Link noch zugänglich.

Parameter:

Um die Anrufweiterleitung zu aktivieren und einstellen:

  • pbx_number – Die interne PBX-Nummer, zum beispiel 100;
  • status – on;
  • type – Typ der Weiterleitung: Voicemail oder Webphone;
  • destination – Webphone oder Email je nach vorherigen Parameter;
  • condition – Bedingungen der Weiterleitung, mögliche Angaben: always oder noanswer;
  • voicemail_greeting – Benachrichtigung über Weiterleitung, mögliche Angaben: no, standart, own. Werden nur bei type = voicemail angegeben;
  • greeting_file – Datei mit Sprachnachricht (im Format mp3 или wav bis zu 5 MB). Wird nur bei type = voicemail und voicemail_greeting = own angegeben;

Um die Anrufweiterleitung zu deaktivieren:

  • pbx_number – Die interne PBX-Nummer, zum Beispiel 100;
  • status – off;
  • JSON
  • XML
{
    "status":"success",
    "current_status":"on",
    "pbx_id":"1234",
    "pbx_name":"100",
    "type":"phone",
    "destination":"79123456789",
    "condition":"noanswer",
    }

<?xml version="1.0"?>
    <answer>
    <status>success</status>
    <current_status>on</current_status>
    <pbx_id>1234</pbx_id>
    <pbx_name>100</pbx_name>
    <type>phone</type>
    <destination>79123456789</destination>
    <condition>noanswer</condition>
    </answer>

Parameter:

  • pbx_number – interne PBX-Nummer, zum Beispiel 100;
  • JSON
{
    "status":"success",
    "current_status":"on",
    "pbx_id":"1234",
    "pbx_name":"100",
    "type":"phone",
    "destination":"79123456789",
    "condition":"noanswer",
    }

Parameter:

  • number – Die Nummer des SMS-Empfängers (falls mehrere, durch Kommazeichen angeben);
  • message – SMS (standardmäßige Anforderungen an die Länge der Nachricht. Falls die Zeichenanzahl überschritten wird, muss der Text auf mehrere Nachrichten geteilt werden);
  • caller_id – (optional) CallerID des Absenders (kann nur die bestätigte Nummer gewählt werden).
Beachten Sie bitte, dass SMS-Nachrichten können nur außerhalb der Russischen Föderation versandt werden.
  • JSON
  • XML
{
    "status":"success",
    "messages":1,
    "cost":0.24,
    "currency":"USD"
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <value>
        <messages>1</messages>
        <cost>0.24</cost>
        <currency>1</currency>
    </value>
</answer>

Parameter:

  • start - Anfangsdatum für die Statistikauszug (im Format YYYY-MM-DD HH:MM:SS);
  • end - Enddatum für die Statistikauszug (im Format YYYY-MM-DD HH:MM:SS);
  • end (optional) - Filter nach SIP-Nummer;
  • cost_only (optional) - Anzeige nur den Ausgaben für diesen Zeitraum;
  • type (optional - nur bei der allgemeinen Statistik gültig) - Anfrage: allgemein (in Anfrage nicht angegeben), toll und ru495. (Statistiken für Nummern 800 und kostenfreie Nummern 495);
  • skip (optional - wird bei angegebenem Parameter cost_only nicht berücksichtigt) - Zeilenanzahl, die beim Statistikauszug verpasst werden müssen, Die Liste fängt mit Zeile skip + 1 an ( wird bei der Pagination zusammen mit limit verwendet; ohne Angaben ist gleich 0);
  • limit (optional - wird bei angegebenem Parameter cost_only nicht berücksichtigt) - Einschränkung auf Zeilenanzahl (wird bei der Pagination zusammen mit skip verwendet; maximaler Wert 1000, ohne Angaben 1000).

Maximale Zeitabschnitt für die Statistikauszug ist ein Monat. Falls Sie bei der Anfrage diesen Wert überschritten haben, wird die Angabe automatisch korrigiert. Wenn die Anfangsdatum nicht angegeben wurde, wird die Statistik ab Anfang des Monats erstellt. Wenn die Enddatum nicht angegeben wurde, wird die Statistik bis heutigen Datum und aktueller Zeit erstellt.
Höchste Anzahl der Zeilen pro eine Anfrage - 1000. Bei Seitenpaginierung verwenden Sie diese Parameter skip und limit.

  • JSON
  • XML
{
    "status":"success",
    "start":"2015-06-01 00:00:00",
    "end":"2015-06-29 13:45:23",
    "stats":[
        {
            "id":"155112249",
            "sip":"00001",
            "callstart":"2015-06-02 12:20:25",
            "from":442037691880,
            "to":442037691881,
            "description":"United Kingdom, London",
            "disposition":"busy",
            "billseconds":0,
            "cost":0.1950,
            "billcost":0.0000,
            "currency":"USD"
        },
        …
    ]
}

?type=cost_only:
{
    "status":"success",
    "start":"2015-06-01 00:00:00",
    "end":"2015-06-29 14:03:57",
    "stats":[
        {
            "cost":38.094,
            "currency":"USD",
            "seconds":9785
        }
    ]
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <start>2015-06-01 00:00:00</start>
    <end>2015-06-29 13:58:22</end>
    <stats>
        <value>
            <id>155112249</id>
            <sip>00001</sip>
            <callstart>2015-06-02 12:20:25</callstart>
            <description>United Kingdom, London</description>
            <disposition>busy</disposition>
            <billseconds>0</billseconds>
            <cost>0.195</cost>
            <billcost>0</billcost>
            <currency>USD</currency>
            <from>442037691880</from>
            <to>442037691881</to>
        </value>
        …
    </stats>
</answer>

?type=cost_only:
<?xml version="1.0"?>
<answer>
    <status>success</status>
    <start>2015-06-01 00:00:00</start>
    <end>2015-06-29 14:03:30</end>
    <stats>
    <value>
        <cost>38.094</cost>
        <currency>USD</currency>
        <seconds>9785</seconds>
    </value>
    </stats>
</answer>

wo

  • start - Anfangsdatum für die Statistikauszug (im Format YYYY-MM-DD HH:MM:SS);
  • end - Enddatum für die Statistikauszug (im Format YYYY-MM-DD HH:MM:SS);
  • id – ID des Anrufes;
  • sip – SIP-Nummer;
  • callstart – Beginn des Anrufs;
  • description – Anrufsziel;
  • disposition – Anrufstatus:
    • 'answered' – Gespräch,
    • 'busy' – Belegt,
    • 'cancel' - Abgebrochen,
    • 'no answer' - Keine Antwort,
    • 'failed' - Fehlgeschlagen,
    • 'no money' - Nicht genügend Gunhaben auf dem Konto, Limit überschritten,
    • 'unallocated number' - kein Anschluss unter dieser Nummer,
    • 'no limit' - Limit überschritten,
    • 'no day limit' - Tageslimit überschritten,
    • 'line limit' - Leitungslimit überschritten,
    • 'no money, no limit' - Limit überschritten;
  • billseconds – Anrufdauer in Sekunden;
  • cost – Minutenpreise für dieses Anrufsziel;
  • billcost – Kosten für bezahlte Minuten;
  • currency – Währung;
  • from – Anrufernummer;
  • to – Zielrufnummer.

Parameter:

  • start - Anfangsdatum für die Statistikauszug (im Format YYYY-MM-DD HH:MM:SS);
  • end - Enddatum für der Statistikausgabe (im Format YYYY-MM-DD HH:MM:SS);
  • version - Formaten des Statistikauszuges (2 - neu, 1 - alt);
  • skip (optional) - Zeilenanzahl, die beim Statistikauszug verpasst werden müssen, Die Liste fängt mit Zeile skip + 1 an ( wird bei der Pagination zusammen mit limit verwendet; ohne Angaben ist gleich 0);
  • limit (optional) - Einschränkung auf Zeilenanzahl (wird bei der Pagination zusammen mit skip verwendet; maximaler Wert 1000, ohne Angaben 1000).
  • call_type (optional) - Anrufrichtung ('in' für eingehende, 'out' für ausgehende). Wenn keine Angaben, dann werden alle Anrufe angezeigt.
  • JSON
  • XML
{
    "status":"success",
    "start":"2015-06-01 00:00:00",
    "end":"2015-06-30 23:59:59",
    "version":2,
    "stats":[
        {
            "call_id":1439981389.2702773,
            "sip":200,
            "callstart":"2015-06-01 15:04:00",
            "clid":200,
            "destination":5,
            "disposition":"answered",
            "seconds":5,
            "is_recorded":true,
            "pbx_call_id":"in_ae6b03b3b0765d127ec0b739209346bbc4f0d52d"
        },
        …
    ]
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
        <start>2015-06-01 00:00:00</start>
        <end>2015-06-30 23:59:59</end>
        <version>2</version>
        <stats>
        <value>
            <call_id>1439981389.2702773</call_id>
            <sip>200</sip>
            <callstart>2015-06-01 15:04:00</date>
            <clid>200</clid>
            <destination>5</destination>
            <disposition>answered</disposition>
            <seconds>5</seconds>
            <is_recorded>true</is_recorded>
            <pbx_call_id>in_ae6b03b3b0765d127ec0b739209346bbc4f0d52d</pbx_call_id>
        </value>
        …
    </stats>
</answer>

wo

  • start – Anfangsdatum für die Statistikauszug;
  • end – nddatum für die Statistikauszug;
  • id – ID des Anrufes;
  • sip – SIP-Nummer;
  • callstart – Beginn des Anrufs;
  • description – Anrufsziel;
  • disposition – Anrufstatus:
    • 'answered' – Gespräch,
    • 'busy' – Belegt,
    • 'cancel' - Abgebrochen,
    • 'no answer' - Keine Antwort,
    • 'failed' - Fehlgeschlagen,
    • 'no money' - Nicht genügend Gunhaben auf dem Konto, Limit überschritten,
    • 'unallocated number' - kein Anschluss unter dieser Nummer
    • 'no limit' - Limit überschritten,
    • 'no day limit' - Tageslimit überschritten,
    • 'line limit' - Leitungslimit überschritten,
    • 'no money, no limit' - Limit überschritten;
  • billseconds – Anrufdauer in Sekunden;
  • cost – Minutenpreise für dieses Anrufsziel;
  • billcost – Kosten für bezahlte Minuten;
  • currency – Währung;
  • from – Anrufernummer;
  • to – Zielrufnummer.

Parameter:

  • start Anfangsdatum für die Statistikauszug (im Format YYYY-MM-DD HH:MM:SS);
  • end - Enddatum für die Statistikauszug (im Format YYYY-MM-DD HH:MM:SS);
  • widget_id (optional) - Widget-Bezeichnung; Wenn keine Angaben, dann wird Statistik für alle Widgets angezeigt;
Maximale Zeitabschnitt für die Statistikauszug ist ein Monat. Falls Sie bei der Anfrage diesen Wert überschritten haben, wird die Angabe automatisch korrigiert. Wenn die Anfangsdatum nicht angegeben wurde, wird die Statistik ab Anfang des Monats erstellt. Wenn die Enddatum nicht angegeben wurde, wird die Statistik bis heutigen Datum und aktueller Zeit erstellt.
Höchste Anzahl der Zeilen pro eine Anfrage - 1000. Bei Seitenpaginierung verwenden Sie diese Parameter skip und limit.
  • JSON
  • XML
{
    "status":"success",
    "start":"2016-09-01 00:00:00",
    "end":"2016-09-30 23:59:59",
    "stats":[
        {
            "id":"57d16d6a1e46c53d1f8ce323",
            "widget_id":"1",
            "sip":"00001",
            "ip":"127.0.0.1",
            "actions":[
                {
                    "kind":"come",
                    "date":"2016-09-08 16:53:45",
                    "referrer_url":"http://test.domain.com/page1/",
                    "url":"http://home.domain.com/page2/"
                },
                {
                    "kind":"show",
                    "date":"2016-09-08 16:53:46",
                    "rate":15
                },
                {
                    "kind":"call_request",
                    "date":"2016-09-08 16:54:07",
                    "number":"442037691880",
                    "request_call_date":"2016-09-09 10:00:00",
                    "redial":"n"
                },
                {
                    "kind":"close",
                    "date":"2016-09-08 16:54:35"
                }
            ]
        },
        ...
    ]
}

<?xml version="1.0"?>
<answer>
    <status>success</status>
    <start>2016-09-01 00:00:00</start>
    <end>2016-09-30 23:59:59</end>
    <stats>
        <value>
            <id>57d16d6a1e46c53d1f8ce323</id>
            <widget_id>1</widget_id>
            <sip>00001</sip>
            <ip>127.0.0.1</ip>
            <actions>
                <value>
                    <kind>come</kind>
                    <date>2016-09-08 16:53:45</date>
                    <referrer_url>http://test.domain.com/page1/</referrer_url>
                    <url>http://home.domain.com/page2/</url>
                </value>
                <value>
                    <kind>show</kind>
                    <date>2016-09-08 16:53:46</date>
                    <rate>15</rate>
                </value>
                <value>
                    <kind>call_request</kind>
                    <date>2016-09-08 16:54:07</date>
                    <number>442037691880</number>
                    <request_call_date>2016-09-09 10:00:00</request_call_date>
                    <redial>n</redial>
                </value>
                <value>
                    <kind>close</kind>
                    <date>2016-09-08 16:54:35</date>
                </value>
            </actions>
        </value>
            ...
    </stats>
</answer>

wo

  • start – Anfangsdatum für die Statistikauszug;
  • end – Enddatum für die Statistikauszug;
  • id – Session-ID;
  • widget_id – Widget-ID;
  • sip – SIP-Nummer;
  • ip – IP-Adresse des Besuchers;
  • kind – Typ des Vorgangs:
    • 'come' – der Besucher ist auf die Seite mit Widget gekommen,
    • 'show' – Widget-Form angezeigt,
    • 'call' – CallCack Bestellung,
    • 'call_request' – Verlegten CallBack Bestellung
    • 'rate' – der Besucher hat das Gespräch bewertet,
    • 'fail' – Der Besucher hat angegeben, dass kein CallBack stattgefunden hat.
    • 'close' – der Besucher hat das Widget geschlossen;
  • date – Datum und Uhrzeit des Vorgangs;
  • referrer_url – Webadresse der Seite, von der Besucher auf die Seite mit dem Widget gekommen ist. (nur für 'come' - Vorgang);
  • url – Webadresse der Seite mit dem Widget (nur für 'come' - Vorgang);
  • rate – für 'show' -Vorganf: Anzahl den gesammelten Punkten für den Vorgang 'rate' - Gesprächsbewertung ;
  • request_call_date – Datum und Uhrzeit , die der Besucher als Termin für den Rückruf angegeben hat. (nur für 'call_request' - Vorgang);
  • redial – (true, false) zurückgerufen/nicht zurückgerufen bei der Bestellung von verlegten CallBack (nur für 'call_request' - Vorgang);
  • number – vom Besucher eingegebene Telefonnummer (für die Vorgänge 'call', 'call_request', 'rate', 'fail').

Parameter:

  • numbers – Die Liste mit den Nummern in internationalem Format.

Wenn "numbers" erhält nur eine Nummer, dann Ergebnis kommt sofort zurück. Wenn eine Liste mit Nummern eingegeben wurde, wird das Ergebnis auf die Adresse gesendet, die auf der Seite "Kontakte aktualisieren" angegeben wurde oder per E-Mail, falls keine Adresse vorhanden ist.

Bitte beachten Sie,: die Einstellungen für diese Methode werden direkt in Menü-Punkt "Mein Profil - Kontakte aktualisieren" durchgeführt.

Beispielantwort auf eine Nummer:


{
    "status":"success",
    "info":{
        'mcc' : '250',
        'mnc': '01',
        'mccName': 'Russia',
        'mncName': 'Mobile TeleSystems',
        'ported': false,
        'roaming': false,
        'errorDescription': 'No Error'
    }
}

Beispielantwort auf mehrere Nummern:


{
    "status":"success"
}

Beispielergebnis, die auf die angegebene Adresse gesendet wurde:


{
    'success': true,
    'description': 'Проверено успешно',
    'result': [
        {
            'mcc': '250',
            'mnc': '01',
            'ported': false,
            'roaming': false,
            'errorDescription': 'No Error',
            'mccName': 'Russia',
            'mncName': 'Mobile TeleSystems',
            'number': '791234567890',
        }, ...
    ]
}

Parameter:

  • call_id – eindeutige Anruf-ID, diese ID wird im Namen der Datei mit Gesprächaufnahme angegeben (eindeutig für jede Aufnahme in der Statistik);
  • lang - Erkennungssprache (optional);
  • return - das zurückgegebene Ergebnis. Varianten: words - Wörter, phrases - Phrasen. (optional. Standardeinstellung - Phrasen);
  • alternatives - Ob die Alternativen zurückgegeben werden sollen. Optionen: 0 - nein, 1 - ja. (optional. Standardeinstellung 0).
  • JSON
{
    "status": "success",
    "lang": "en-EN",
    "recognitionStatus": "in progress",
    "otherLangs": ["es-ES"],
    "words": [
        {
            "result": [
                {
                        "s": 0.02,
                        "e": 0.22,
                        "w": "word",
                },
                {
                        "s": 0.31,
                        "e": 0.56,
                        "w": "one",
                }
            ],
            "channel": 1
        }
    ],
    "phrases": [
        {
            "result": "word one",
            "channel": 1
        }
    ]
}

wo

  • lang – Sprache;
  • recognitionStatus: Erkennungsstatus. Optionen:
    • in progress - im Erkennungsprozess,
    • error - Während der Erkennung ist ein Fehler aufgetreten,
    • recognized - Erkannt
    • ready for recognize - Die Aufnahme ist zur Erkennung bereit,
    • not available for recognize - Die Aufnahme ist nicht zur Erkennung verfügbar.
  • result:
    • words - Gruppe:
      • result - Wortliste (Gruppe):
        • s - Wortstartzeit
        • e - Wortendzeit
        • w - Wort
      • channel - Kanalnummer
    • phrases - Gruppe:
      • result - Phrase
      • channel - Kanalnummer

Parameter:

  • call_id – eindeutige Anruf-ID, diese ID wird im Namen der Datei mit Gesprächaufnahme angegeben (eindeutig für jede Aufnahme in der Statistik);
  • lang - Erkennungssprache (optional).
  • JSON
{
    'status' => 'success'
}

Verfügbare ZCRM-API-Methoden:

 

  • Kunden
  • customers
    Gibt die Kundenliste her.
  • customers/<c_id>
    Gibt einen Kunden anhand seiner ID her.
  • customers
    Erstellt einen neuen Kunden mit den angegebenen Daten.
  • customers/<c_id>
    Aktualisiert einen vorhandenen Kunden mit der angegebenen ID.
  • customers/<c_id>
    Löscht einen Kunden anhand seiner ID.
  • Tags
  • customers/labels
    Gibt eine Liste aller Tags und Statistiken her.
  • customers/labels
    Erstellt ein neues Tag.
  • customers/labels/<l_id>
    Löscht ein Tag anhand seiner ID aus dem System.
  • Zusätzlichen Eigenschaften
  • customers/custom-properties
    Gibt alle zusätzlichen Eigenschaften her.
  • Kunden-Aktivitätenliste
  • customers/<c_id>/feed
    Gibt Einträge in Kunden Aktivitätenliste her.
  • customers/<c_id>/feed
    Fügt der Kundenkarte eine Textnotiz hinzu, wo auch die Dateien angehängt werden können.
  • customers/<c_id>/feed/<i_id>
    Aktualisiert den Inhalt einer vorhandenen Textnotiz anhand ihrer ID.
  • customers/<c_id>/feed/<i_id>
    Löscht eine Notiz aus Kunden-Aktivitätenliste anhand ihrer ID.
  • Mitarbeiter
  • customers/<c_id>/employees
    Gibt eine Liste der Kundenmitarbeiter anhand ihrer ID her.
  • customers/<c_id>/employees/<e_id>
    Gibt einen Kundenmitarbeiter anhand seiner ID her.
  • customers/<c_id>/employees
    Erstellt und speichert einen neuen Mitarbeiter für einen bestimmten Kunden.
  • customers/<c_id>/employees/<e_id>
    Aktualisiert einen vorhandenen Mitarbeiter mit der angegebenen ID.
  • customers/<c_id>/employees/<e_id>
    Löscht einen Mitarbeiter anhand seiner ID.
  • Aufgaben
  • events
    Gibt eine Liste von Aufgaben her.
  • events/<event_id>
    Gibt die Aufgabe anhand ihrer ID her.
  • events
    Erstellt eine neue Aufgabe mit den angegebenen Daten.
  • events/<event_id>
    Aktualisiert eine vorhandene Aufgabe mit der angegebenen ID.
  • events/<event_id>/close
    Beendet (schließt) die Aufgabe.
  • events/<event_id>
    Löscht eine Aufgabe anhand ihrer ID.
  • Leads
  • leads
    Gibt die Liste der Leads her.
  • leads/<lead_id>
    Gibt einen Lead anhand seiner ID her.
  • leads
    Erstellt einen neuen Lead mit den angegebenen Daten.
  • leads/<lead_id>
    Aktualisiert einen vorhandenen Lead mit der angegebenen ID.
  • leads/<lead_id>
    Löscht einen Lead anhand seiner ID.
  • Benutzer
  • users
    Gibt eine Liste der Benutzer her.
  • users/<user_id>
    Gibt den Benutzer anhand seiner ID her.
  • users/<user_id>/working-hours
    Gibt die Geschäftszeiten des Benutzers her.
  • users/groups
    Gibt die Gruppen und Benutzerrechte der einzelnen Gruppen her.
  • Anrufe
  • calls
    Gibt dir Liste von Anrufen her.
  • Zusammengefasste Kontakte
  • contacts
    Gibt eine Liste aller Kontakte (Kunden, Mitarbeiter, Leads, Benutzer) mit Telefonnummern her.
  • contacts/identify
    Identifiziert den Kontakt (Kunde, Mitarbeiter, Lead, Benutzer) anhand der Telefonnummer.
  • Dateien
  • files/<file_id>
    Gibt die Datei anhand ihrer ID her.

GET /v1/zcrm/customers

Gibt die Kundenliste her.

Parameter

  • search (optional) - Suchzeile. Die Suche wird gleichzeitig durchgeführt nach:
    • Kundenname
    • Kunden-Telefonnummern
    • Kundenbeschreibung
    • Adresse und Postleitzahl
    • Website
    • E-Mail-Adressen
    • Messenger
    • Mitarbeiternamen
    • Telefonnummern der Mitarbeiter
    • Mitarbeiterbeschreibungen
    • Mitarbeiter-E-Mail-Adressen
    • Mitarbeiter Messenger
  • filter (optional) - Kundenfilter. Der Filter funktioniert nur in den angegebenen Feldern. Filterstruktur:
    {
    "status": "company",
    "type": "client",
    "country": "GB",
    "city": "London",
    "label": 12,
    "employees_count": "50",
    "responsible": 20
    }
    
    wo:
    • status — Kundenstatus. Mögliche Werte:
      • individual — Privatkunde
      • company — Firmenkunde
    • type — Kundentyp. Mögliche Werte:
      • potential — potenzieller Kunde
      • client — Kunde
      • reseller — Wiederverkäufer
      • partner — Partner
    • country — Kundenland. Zwei-Buchstaben-Code (DE, CH usw.)
    • city — Kundenstadt (Zeile)
    • label — Tag (Kennung)
    • employees_count — Anzahl der Angestellten. Mögliche Werte:
      • 50 — weniger als 50
      • 50_250 — 50 – 250
      • 250_500 — 250 – 500
    • responsible — Verantwortlicher (Benutzer-ID)
    Jeder der Filterparameter kann weggelassen werden, d.h. ist kein Pflichtfeld.
  • sort (optional) - Kunden sortieren. Parameterstruktur:
    {
      "attr": "name",
      "desc": 0
    }
    
    wo:
    • attr — Sortierfeld. Mögliche Werte:
      • name — Kundenname
      • status — Kundenstatus
      • type — Kundentyp
    • desc — Sortierrichtung. Mögliche Werte:
      • 0 — Aufsteigend/li>
      • 1 — Absteigend
  • take (zur Paginierung) - wie viele Kunden zurückgegeben werden sollen (Standard ist 20)
  • skip (zur Paginierung) - wie viele Kunden übersprungen werden sollen (Standard 0)

Antwort

{
  "totalCount": 82,
  "customers": [
    {
      "id": 65,
      "name": "Good company",
      "status": "company",
      "type": "client",
      "responsible_user_id": 20,
      "employees_count": "50",
      "comment": "",
      "country": "GB",
      "city": "London",
      "address": "",
      "zip": "",
      "website": "",
      "created_at": "2020-04-28 05:47:47",
      "created_by": 20,
      "lead_source": "manual",
      "lead_created_at": null,
      "lead_created_by": null,
      "phones": [
        {
          "type": "work",
          "phone": "+44123456789"
        }
      ],
      "contacts": [
        {
          "type": "email_work",
          "value": "good_company@example.com"
        }
      ],
      "labels": [
        {
          "id": 12,
          "label": "Best clients"
        }
      ]
    }
  ]
}

wo:

  • totalCount — Gesamtzahl der Kunden (einschließlich Suchzeile und Filter)
  • customers — eine Gruppe von Kunden (basierend auf der Paginierung). Jedes Element der Gruppe enthält die folgenden Parameter:
    • id — Kunden-ID
    • name — Kundenname
    • status — Kundenstatus. Mögliche Werte:
      • individual — Privatkunde
      • company — Firmenkunde
    • type — Kundentyp. Mögliche Werte:
      • potential — potenzieller Kunde
      • client — Kunde
      • reseller — Wiederverkäufer
      • partner — Partner
    • responsible_user_id — Verantwortlicher (Benutzer-ID)
    • employees_count — Anzahl der Angestellten. Mögliche Werte:
      • 50 — weniger als 50
      • 50_250 — 50 – 250
      • 250_500 — 250 – 500
    • comment — Kundenbeschreibung
    • country — Kundenland. Zwei-Buchstaben-Code (DE, CH usw.)
    • city — Stadt des Kunden
    • address — Kundenadresse
    • zip — Postleitzahl
    • website — Kundenwebsite
    • created_at — Datum und Uhrzeit der Erstellung des Kunden (im Format JJJJ-MM-TT HH: mm: ss)
    • created_by — von wem wurde erstellt (Benutzer-ID)
    • lead_source — Quelle. Mögliche Werte:
      • manual — Manuell
      • call_incoming — Eingehender Anruf
      • call_outgoing — Ausgehender Anruf
      • form — Formular auf der Webseite
    • lead_created_at — Datum und Uhrzeit der Lead-Erstellung, wenn der Kunde aus dem Lead erstellt wurde (im Format JJJJ-MM-TT HH: mm: ss)
    • lead_created_by — Von wem wurde der Lead erstellt, wenn der Kunde aus dem Lead erstellt wurde (Benutzer-ID)
    • phones — eine Gruppe von Kunden-Telefonnummern. Jede Nummer enthält die folgenden Felder:
      • type — Typ der Nummer. Mögliche Werte:
        • work — Arbeiter
        • personal — Privat
      • phone — Telefonnummer
    • contacts — eine Gruppe von Kunden-Kontakten. Jeder Kontakt enthält folgende Felder:
      • type — Kontakttyp. Mögliche Werte:
        • email_work — Arbeit e-mail
        • email_personal — Privat e-mail
        • skype
        • telegram
        • viber
        • whatsapp
      • value — Kontakt
    • labels — Eine Gruppe von Tags, die dem Kunde zugewiesen sind. Jedes Tag enthält die folgenden Felder:
      • id — Tag ID
      • label — Tag

GET /v1/zcrm/customers/<c_id>

Gibt einen Kunden anhand seiner ID her.

Adressparameter

  • c_id — Kunden ID

Antwort

{
  "id": 65,
  "name": "Good company",
  "status": "company",
  "type": "client",
  "responsible_user_id": 20,
  "employees_count": "50",
  "comment": "",
  "country": "GB",
  "city": "London",
  "address": "",
  "zip": "",
  "website": "",
  "created_at": "2020-04-28 05:47:47",
  "created_by": 20,
  "lead_source": "manual",
  "lead_created_at": null,
  "lead_created_by": null,
  "phones": [
    {
      "type": "work",
      "phone": "+44123456789"
    }
  ],
  "contacts": [
    {
      "type": "email_work",
      "value": "good_company@example.com"
    }
  ],
  "labels": [
    {
      "id": 12,
      "label": "Best clients"
    }
  ],
  "custom_properties": [
    {
      "id": 18,
      "key": "loyalty",
      "title": "Loyalty",
      "value": "high"
    }
  ]
}

wo:

  • id — Kunden ID
  • name — Kundenname
  • status — Kundenstatus. Mögliche Werte:
    • individual — Privatkunde
    • company — Firmenkunde
  • type — Kundentyp. Mögliche Werte:
    • potential — Potenzieller Kunde
    • client — Kunde
    • reseller — Wiederverkäufer
    • partner — Partner
  • responsible_user_id — Verantwortlicher (Benutzer-ID)
  • employees_count — Anzahl der Angestellten. Mögliche Werte:
    • 50 — weniger als 50
    • 50_250 — 50 – 250
    • 250_500 — 250 – 500
  • comment — Kundenbeschreibung
  • country — Kundenland. Zwei-Buchstaben-Code (DE, CH usw.)
  • city — Stadt des Kunden
  • address — Kundenadresse
  • zip — Postleitzahl
  • website — Kundenwebsite
  • created_at — Datum und Uhrzeit der Erstellung des Kunden (im Format JJJJ-MM-TT HH: mm: ss)
  • created_by — von wem wurde erstellt (Benutzer-ID)
  • lead_source — Quelle. Mögliche Werte:
    • manual — Manuell
    • call_incoming — Eingehender Anruf
    • call_outgoing — Ausgehender Anruf
    • form — Formular auf der Webseite
  • lead_created_at — Datum und Uhrzeit der Lead-Erstellung, wenn der Kunde aus dem Lead erstellt wurde (im Format JJJJ-MM-TT HH: mm: ss)
  • lead_created_by — Von wem wurde der Lead erstellt, wenn der Kunde aus dem Lead erstellt wurde (Benutzer-ID)
  • phones — eine Gruppe von Kunden-Telefonnummern. Jede Nummer enthält die folgenden Felder:
    • type — Typ der Nummer. Mögliche Werte:
      • work — Arbeit
      • personal — Privat
    • phone — Telefonnummer
  • contacts — eine Gruppe von Kunden-Kontakten. Jeder Kontakt enthält folgende Felder:
    • type — Kontakttyp. Mögliche Werte:
      • email_work — Arbeit e-mail
      • email_personal — Privat e-mail
      • skype
      • telegram
      • viber
      • whatsapp
    • value — Kontakt
  • labels — Eine Gruppe von Tags, die dem Kunde zugewiesen sind. Jedes Tag enthält die folgenden Felder:
    • id — Tag ID
    • label — Tag
  • custom_properties — Eine Gruppe von zusätzlichen Eigenschaften. Jede zusätzliche Eigenschaft enthält die folgenden Felder:
    • id —ID der zusätzlichen Eigenschaft<
    • key — Eindeutiger Name der zusätzlichen Eigenschaft
    • title — Anzeigename der zusätzlicher Eigenschaften
    • value — Wert der zusätzlichen Eigenschaft

POST /v1/zcrm/customers

Erstellt einen neuen Kunden mit den angegebenen Daten.

  • customer — neue Kundendaten. Kundenstruktur:

Parameter

{
    "name": "Good company",
    "status": "company",
    "type": "client",
    "responsible_user_id": 20,
    "employees_count": "50",
    "comment": "",
    "country": "GB",
    "city": "London",
    "address": "",
    "zip": "",
    "website": "",
    "lead_source": "manual",
    "phones": [
      {
        "type": "work",
        "phone": "+44123456789"
      }
    ],
    "contacts": [
      {
        "type": "email_work",
        "value": "good_company@example.com"
      }
    ],
    "labels": [
      { "id": 12 },
      { "id": 13 }
  ],
    "custom_properties": [
    {
        "id": 18,
        "value": "high"
      }
    ]
}

wo:

  • name — Kundenname
  • status — Kundenstatus. Mögliche Werte:
    • individual — Privatkunde
    • company — Firmenkunde
  • type — Kundentyp. Mögliche Werte:
    • potential — Potenzieller Kunde
    • client — Kunde
    • reseller — Wiederverkäufer
    • partner — Partner
  • responsible_user_id — Verantwortlicher (Benutzer-ID)
  • employees_count — Anzahl der Angestellten. Mögliche Werte:
    • 50 — weniger als 50
    • 50_250 — 50 – 250
    • 250_500 — 250 – 500
  • comment — Kundenbeschreibung
  • country — Kundenland. Zwei-Buchstaben-Code (DE, CH usw.)
  • city — Stadt des Kunden
  • address — Kundenadresse
  • zip — Postleitzahl
  • website — Kundenwebsite
  • lead_source — Quelle. Mögliche Werte:
    • manual — Manuell
    • call_incoming — Eingehender Anruf
    • call_outgoing — Ausgehender Anruf
    • form — Formular auf der Webseite
  • phones — eine Gruppe von Kunden-Telefonnummern. Jede Nummer enthält die folgenden Felder:
    • type — Typ der Nummer. Mögliche Werte:
      • work — Arbeit
      • personal — Privat
    • phone — Telefonnummer
  • contacts — eine Gruppe von Kunden-Kontakten. Jeder Kontakt enthält folgende Felder:
    • type — Kontakttyp. Mögliche Werte:
      • email_work — Arbeit e-mail
      • email_personal — Privat e-mail
      • skype
      • telegram
      • viber
      • whatsapp
    • value — Kontakt
  • labels — Eine Gruppe von Tags, die dem Kunde hinzugefügt werden. Jedes Tag enthält die folgenden Felder:
    • id — ID des vorhandenen Tag
  • custom_properties — Die Gruppe von zusätzlichen Eigenschaften. Jedes Element muss enthalten:
    • id — ID der zusätzlichen Eigenschaft:
    • key — Eindeutiger Name der zusätzlichen Eigenschaft oder
    • value — Wert der zusätzlichen Eigenschaft

Antwort:

{
"id": 65
}

wo:

  • id — ID des erstellten Kunde

PUT /v1/zcrm/customers/<c_id>

Aktualisiert einen vorhandenen Kunden mit der angegebenen ID.

Adressparameter

  • c_id — Kunden ID

Parameter

  • customer — neue Kundendaten. Kundenstruktur:
{
    "name": "Good company",
    "status": "company",
    "type": "client",
    "responsible_user_id": 20,
    "employees_count": "50",
    "comment": "",
    "country": "GB",
    "city": "London",
    "address": "",
    "zip": "",
    "website": "",
    "lead_source": "manual",
    "phones": [
      {
        "type": "work",
        "phone": "+44123456789"
      }
    ],
    "contacts": [
      {
        "type": "email_work",
        "value": "good_company@example.com"
      }
    ],
    "labels": [
      { "id": 12 },
      { "id": 13 }
  ],
    "custom_properties": [
    {
        "id": 18,
        "value": "high"
      }
    ]
}

wo:

  • name — Kundenname
  • status — Kundenstatus. Mögliche Werte:
    • individual — Privatkunde
    • company — Firmankunde
  • type — Kundentyp. Mögliche Werte:
    • potential — Potenzieller Kunde
    • client — Kunde
    • reseller — Wiederverkäufer
    • partner — Partner
  • responsible_user_id — verantwortlicher (Benutzer-ID)
  • employees_count — Anzahl der Mitarbeiter. Mögliche Werte:
    • 50 — weniger als 50
    • 50_250 — 50 – 250
    • 250_500 — 250 – 500
  • comment — Kundenbeschreibung
  • country — Kundenland. Zwei-Buchstaben-Code (DE, CH usw.)
  • city — Stadt des Kunden
  • address — Kundenadresse
  • zip — Postleitzahl
  • website — Kundenwebsite
  • lead_source — Quelle. Mögliche Werte:
    • manual — manuell
    • call_incoming — eingehender Anruf
    • call_outgoing — ausgehender Anruf
    • form — Formular auf der Webseite
  • phones — eine Gruppe von Telefonnummern. Jede Nummer muss folgende Felder enthalten:
    • type — Art der Nummer. Mögliche Werte:
      • work — Arbeit
      • personal — Privat
    • phone — Telefonnummer
  • contacts — eine Gruppe von Kundenkontakten. Jeder Kontakt muss folgende Felder enthalten:
    • type — Art des Kontakts. Mögliche Werte:
      • email_work — Arbeit e-mail
      • email_personal — Privat e-mail
      • skype
      • telegram
      • viber
      • whatsapp
    • value — Kontakt
  • labels — Ein Gruppe von Tags, die dem Kunde hinzugefügt wurden. Jeder Tag muss enthalten:
    • id — ID eines vorhandenen Tags
  • custom_properties — eine Gruppe zusätzlicher Eigenschaften. Jedes Objekt muss enthalten:
    • id — ID einer zusätzlichen Eigenschaft (entweder, oder):
    • key — Eindeutiger Name der zusätzlichen Eigenschaft
    • value — Wert einer zusätzlichen Eigenschaft

DELETE /v1/zcrm/customers/<c_id>

Löscht einen Kunden anhand seiner ID.

Adressparameter

  • c_id — Kunden ID

GET /v1/zcrm/customers/labels

Gibt eine Liste aller Tags und Statistiken her.

Antwort

{
  "totalCount": 5,
  "labels": [
    {
      "id": 12,
      "label": "Best clients",
      "count": 14
    }
  ]
}

wo:

  • totalCount — Gesamtzahl der Tags im System
  • labels — eine Gruppe von Tags. Jedes Tag hat die folgenden Felder:
    • id — Tag ID
    • label — Tag Name
    • count — Die Anzahl der Kunden und Leads, die dieses Tag verwenden

POST /v1/zcrm/customers/labels

Erstellt ein neues Tag.

Parameter

  • name — Der Name des neuen Tag

Antwort

{
  "id": 13,
  "label": "Best clients",
  "count": 0
}

wo:

  • id — ID des erstellten Tags
  • label — Tag-Name
  • count — Die Anzahl der Kunden und Leads, die dieses Tag verwenden (hier ist immer gleich 0)

DELETE /v1/zcrm/customers/labels/<l_id>

Löscht ein Tag anhand seiner ID aus dem System.

Adressparameter

  • l_id — Tag ID

GET /v1/zcrm/customers/custom-properties

Gibt alle zusätzlichen Eigenschaften her.

Antwort

{
  "totalCount": 8,
  "customProperties": [
    {
      "id": 18,
      "key": "loyalty",
      "title": "Loyalty"
    }
  ]
}

wo:

  • totalCount — Gesamtzahl der zusätzlichen Eigenschaften.
  • customProperties — Die Gruppe von zusätzlichen Eigenschaften. Jede zusätzliche Eigenschaft enthält die folgenden Felder:
    • id — ID der zusätzlichen Eigenschaft
    • key — Eindeutiger Name der zusätzlichen Eigenschaft
    • title — Anzeigename der zusätzlicher Eigenschaften

GET /v1/zcrm/customers/<c_id>/feed

Gibt Einträge in Kunden Aktivitätenliste her.

Adressparameter

  • c_id — Kunden ID

Antwort

{
  "totalCount": 17,
  "items": [
    {
      "id": 37825,
      "type": "note",
      "content": "Call to client",
      "time": "2020-06-08 06:55:02",
      "user_id": 20,
      "user_name": "John Smith",
      "call_id": null,
      "call_type": null,
      "call_status": null,
      "call_phone": null,
      "call_duration": null,
      "call_record": null,
      "call_contact_name": null,
      "attached_files": [
        {
          "file_id": 576,
          "original_filename": "filename.doc"
        }
      ]
    }
  ]
}

wo:

  • totalCount — Gesamtzahl der Einträge
  • items — eine Gruppe von Einträgen. Jeder Eintrag enthält die folgenden Attribute:
    • id — Eintrag-ID
    • type — Art des Eintrags. Mögliche Werte:
      • event — Ereignis
      • note — Textnotiz
      • call — Anruf
    • content — der Inhalt des Einitrags. Wenn der Art des Eintrags eine Textnotiz ist, enthält dieses Attribut den Textinhalt der Notiz. Wenn der Art des Eintrags ein Ereignis ist, enthält dieses Attribut die Ereignis ID, zum Beispiel:
      • CUSTOMER_CREATED — Kundenerstellungsereignis
      • LEAD_CREATED — Lead-Erstellungsereignis
    • time — Eintragszeit im Format `JJJJ-MM-TT hh: mm: ss`
    • user_id — ID des Benutzers, der den Eintrag erstellt hat
    • user_name — Der Name des Benutzers, der den Beitrag erstellt hat
    • call_id — Anruf ID (wenn der Art des Eintrags ein Anruf ist)
    • call_type — Anruftyp. Mögliche Werte:
      • incoming — Eingehender Anruf
      • outgoing — Ausgehender Anruf
    • call_status — Anrufstatus. Mögliche Werte:
      • answer — Erfolgreicher Anruf
      • noanswer — Keine Antwort
      • cancel — Abgebrochen
      • busy — Belegt
      • failed — Fehlgeschlagen
    • call_phone — Telefonnummer des Anrufs
    • call_duration — Anrufdauer in Sekunden
    • call_record — ob die Anrufaufnahme aktiviert ist
    • call_contact_name — Name des Anrufkontakts
    • attached_files — Eine Gruppe von Dateien, die an die Notiz angehängt sind (wenn der der Art des Eintrags eine Textnotiz ist). Jedes Element der Gruppe enthält die folgenden Attribute:
      • file_id — Datei ID
      • original_filename — eindeutiger Dateiname

POST /v1/zcrm/customers/<c_id>/feed

Fügt der Kundenkarte eine Textnotiz hinzu, wo auch die Dateien angehängt werden können.

Adressparameter

  • c_id — Kunden ID

Parameter

  • content — Textinhalt der Notiz
  • files — Eine Gruppe von Dateien, die an die Notiz angehängt sind

Antwort

{
  "id": 37825,
  "type": "note",
  "content": "Call to client",
  "time": "2020-06-08 06:55:02",
  "user_id": 20,
  "user_name": "John Smith",
  "attached_files": [
    {
      "file_id": 576,
      "original_filename": "filename.doc"
    }
  ]
}

wo:

  • id — Eintrag-ID
  • type — Art des Eintrags. In diesem Fall ist es:
    • note — Textnotiz
  • content — Textinhalt der Notiz
  • time — Zeit des Eintrags im Format `JJJJ-MM-TT hh: mm: ss`
  • user_id — ID des Benutzers, der den Eintrag erstellt hat
  • user_name — Der Name des Benutzers, der den Beitrag erstellt hat
  • attached_files — Eine Gruppe von Dateien, die an die Notiz angehängt sind (wenn der der Art des Eintrags eine Textnotiz ist). Jedes Element der Gruppe enthält die folgenden Attribute:
    • file_id — Datei ID
    • original_filename — eindeutiger Dateiname

PUT /v1/zcrm/customers/<c_id>/feed/<i_id>

>Aktualisiert den Inhalt einer vorhandenen Textnotiz anhand ihrer ID.

Adressparameter

  • c_id — Kunden ID
  • i_id — ID der Textnotiz

Parameter

  • content — neuer Notiztext

DELETE /v1/zcrm/customers/<c_id>/feed/<i_id>

Löscht eine Notiz aus Kunden-Aktivitätenliste anhand ihrer ID.

Adressparameter

  • c_id — Kunden ID
  • i_id — ID der Textnotiz

GET /v1/zcrm/customers/<c_id>/employees

Gibt eine Liste der Kundenmitarbeiter anhand ihrer ID her.

Adressparameter

  • c_id — Kunden ID

Antwort

{
  "totalCount": 5,
  "employees": [
    {
      "id": 23,
      "customer_id": 11,
      "name": "John Smith",
      "position": "manager",
      "position_title": "",
      "comment": "",
      "phones": [
        {
          "type": "work",
          "phone": "+44123456789"
        }
      ],
      "contacts": [
        {
          "type": "email_work",
          "value": "john@example.com"
        }
      ]
    }
  ]
}

wo:

  • totalCount — Anzahl der Kundenmitarbeiter
  • employees — eine Gruppe von Kundenmitarbeitern. Jedes Element der Gruppe enthält die folgenden Attribute:
    • id — Mitarbeiter-ID
    • customer_id — ID des Kunden, mit dem der Mitarbeiter verknüpft ist
    • name — Name des Mitarbeiters
    • position — Mitarbeiterposition. Mögliche Werte:
      • ceo — Hauptgeschäftsführer
      • director — Geschäftsführer
      • manager — Manager
      • sales_manager — Salesmanager
      • hr — HR
      • support — Support
      • custom — Beliebig
    • position_title — Name der beliebigen Position (für position = custom)
    • comment — Mitarbeiterbeschreibung
    • phones — eine Gruppe von Telefonnummern des Mitarbeiters. Jede Nummer enthält folgende Felder:
      • type — Art der Nummer. Mögliche Werte:
        • work — Arbeit
        • personal — Privat
      • phone — Telefonnummer
    • contacts — eine Gruppe von Mitarbeiterkontakten. Jeder Kontakt enthält folgende Felder:
      • type — Art des Kontakts. Mögliche Werte:
        • email_work — Arbeit e-mail
        • email_personal — Privat e-mail
        • skype
        • telegram
        • viber
        • whatsapp
      • value — Kontakt

GET /v1/zcrm/customers/<c_id>/employees/<e_id>

Gibt einen Kundenmitarbeiter anhand seiner ID her.

Adressparameter

  • c_id — Kunden ID
  • e_id — Mitarbeiter ID

Antwort

{
  "id": 23,
  "customer_id": 11,
  "name": "John Smith",
  "position": "manager",
  "position_title": "",
  "comment": "",
  "phones": [
    {
      "type": "work",
      "phone": "+44123456789"
    }
  ],
  "contacts": [
    {
      "type": "email_work",
      "value": "john@example.com"
    }
  ]
}

wo:

  • id — Mitarbeiter-ID
  • customer_id — ID des Kunden, mit dem der Mitarbeiter verknüpft ist
  • name — Name des Mitarbeiters
  • position — Mitarbeiterposition. Mögliche Werte:
    • ceo — Hauptgeschäftsführer
    • director — Geschäftsführer
    • manager — Manager
    • sales_manager — Salesmanager
    • hr — HR
    • support — Support
    • custom — Beliebig
  • position_title — Name der beliebigen Position (für position = custom)
  • comment — Mitarbeiterbeschreibung
  • phones — eine Gruppe von Telefonnummern des Mitarbeiters. Jede Nummer enthält folgende Felder:
    • type — Art der Nummer. Mögliche Werte:
      • work — Arbeit
      • personal — Privat
    • phone — Telefonnummer
  • contacts — eine Gruppe von Mitarbeiterkontakten. Jeder Kontakt enthält folgende Felder:
    • type — Art des Kontakts. Mögliche Werte:
      • email_work — Arbeit e-mail
      • email_personal — Privat e-mail
      • skype
      • telegram
      • viber
      • whatsapp
    • value — Kontakt

POST /v1/zcrm/customers/<c_id>/employees

Erstellt und speichert einen neuen Mitarbeiter für einen bestimmten Kunden.

Adressparameter

  • c_id — Kunden ID

Parameter

  • employee — neue Mitarbeiterdaten. Mitarbeiterstruktur:
{
    "name": "John Smith",
    "position": "manager",
    "position_title": "",
    "comment": "",
    "phones": [
      {
        "type": "work",
        "phone": "+44123456789"
      }
    ],
    "contacts": [
      {
        "type": "email_work",
        "value": "john@example.com"
      }
    ]
  }

wo:

  • name — Name des Mitarbeiters
  • position — Mitarbeiterposition. Mögliche Werte:
    • ceo — Hauptgeschäftsführer
    • director — Geschäftsführer
    • manager — Manager
    • sales_manager — Salesmanager
    • hr — HR
    • support — Support
    • custom — Beliebig
  • position_title — Name der beliebigen Position (für position = custom)
  • comment — Mitarbeiterbeschreibung
  • phones — eine Gruppe von Telefonnummern des Mitarbeiters. Jede Nummer enthält folgende Felder:
    • type — Art der Nummer. Mögliche Werte:
      • work — Arbeit
      • personal — Privat
    • phone — Telefonnummer
  • contacts — eine Gruppe von Mitarbeiterkontakten. Jeder Kontakt enthält folgende Felder:
    • type — Art des Kontakts. Mögliche Werte:
      • email_work — Arbeit e-mail
      • email_personal — Privat e-mail
      • skype
      • telegram
      • viber
      • whatsapp
    • value — Kontakt

Antwort

{
  "id": 23
}

wo:

  • id — ID des neuen Mitarbeiter

PUT /v1/zcrm/customers/<c_id>/employees/<e_id>

Aktualisiert einen vorhandenen Mitarbeiter mit der angegebenen ID.

Adressparameter

  • c_id — Kunden ID
  • e_id — Mitarbeiter ID

Parameter

  • employee — neue Mitarbeiterdaten. Struktur:
{
    "name": "John Smith",
    "position": "manager",
    "position_title": "",
    "comment": "",
    "phones": [
      {
        "type": "work",
        "phone": "+44123456789"
      }
    ],
    "contacts": [
      {
        "type": "email_work",
        "value": "john@example.com"
      }
    ]
}

wo:

  • name — Name des Mitarbeiters
  • position — Mitarbeiterposition. Mögliche Werte:
    • ceo — Hauptgeschäftsführer
    • director — Geschäftsführer
    • manager — Manager
    • sales_manager — Salesmanager
    • hr — HR
    • support — Support
    • custom — Beliebig
  • position_title — Name der beliebigen Position (für position = custom)
  • comment — Mitarbeiterbeschreibung
  • phones — eine Gruppe von Telefonnummern des Mitarbeiters. Jede Nummer enthält folgende Felder:
    • type — Art der Nummer. Mögliche Werte:
      • work — Arbeit
      • personal — Privat
    • phone — Telefonnummer
  • contacts — eine Gruppe von Mitarbeiterkontakten. Jeder Kontakt enthält folgende Felder:
    • type — Art des Kontakts. Mögliche Werte:
      • email_work — Arbeit e-mail
      • email_personal — Privat e-mail
      • skype
      • telegram
      • viber
      • whatsapp
    • value — Kontakt

DELETE /v1/zcrm/customers/<c_id>/employees/<e_id>

Löscht einen Mitarbeiter anhand seiner ID.

Adressparameter

  • c_id — Kunden ID
  • e_id — Mitarbeiter ID

GET /v1/zcrm/events

Gibt eine Liste von Aufgaben her.

Parameter

  • search (optional) - Suchzeile. Die Suche wird durchgeführt nach:
    • Aufgabentitel
    • Aufgabenbeschreibung
    • Kommentar zu erledigten Aufgaben
  • filter (optional) - Aufgabenfilter. Filterstruktur:
    {
        "responsible": 456,
        "createdBy": 456,
        "start": "2020-06-03 02:56:00",
        "end": "2020-06-12 02:56:00",
        "completed": 1
    }

    wo:

    • responsible — Verantwortlicher (Benutzer ID)
    • createdBy — Erstellt (Benutzer ID)
    • start — Aufgaben anzeigen, die nach der angegebenen Zeit beginnen (im Format `JJJJ-MM-TT hh: mm: ss`)
    • end — Aufgaben anzeigen, die vor der angegebenen Zeit beginnen (im Format `JJJJ-MM-TT hh: mm: ss`)
    • completed — auf 1 setzen, um auch die erledigte Aufgaben anzuzeigen
  • sort (optional) - Aufgaben sortieren. Parameterstruktur:
    {
        "attr": "start",
        "desc": 0
    }

    wo:

    • attr — Sortierfeld. Mögliche Werte:
      • responsible — Verantwortlicher Benutzer
      • title — Aufgabentitel
      • start — Startzeit der Aufgabe
      • end — Abschlusszeit der Aufgabe
    • desc — Sortierrichtung. Mögliche Werte:
      • 0 — Aufsteigend
      • 1 — Absteigend

Antwort

{
  "totalCount": 4,
  "events": [
    {
      "id": 40,
      "type": "task",
      "title": "Call to GoodCompany",
      "description": "",
      "start": "2020-05-26 09:00:00",
      "end": "2020-05-26 12:30:00",
      "allDay": false,
      "created_by": 234,
      "responsible_user": 234,
      "phone": "",
      "call_done": 0,
      "completed": 0,
      "completed_comment": "",
      "members": [234, 235],
      "customers": [
        {
          "id": 3486,
          "name": "GoodCompany",
          "status": "company",
          "type": "client",
          "lead_source": "manual",
          "lead_status": "not_processed",
          "contact_type": "customer"
        }
      ]
    }
  ]
}

wo

  • totalCount — Gesamtzahl der Aufgaben
  • events — eine Gruppe von Aufgaben. Jede Aufgabe enthält folgende Attribute:
    • id — Aufgaben ID
    • type — Art der Aufgabe. Mögliche Werte:
      • task — Aufgabe
      • call — Anruf
    • title — Aufgabentitel
    • description — Aufgabenbeschreibung (im Quill Delta-Format: https://quilljs.com/docs/delta/)
    • start — Datum und Uhrzeit des Starts der Aufgabe (im Format `JJJJ-MM-TT hh: mm: ss`)
    • end — Datum und Uhrzeit des Endes der Aufgabe (im Format `JJJJ-MM-TT hh: mm: ss`)
    • allDay — Aufgabe für den ganzen Tag (`true` oder `false`) — Das Datum wird durch den Parameter start bestimmt
    • created_by — Bentzer ID, der die Aufgabe erstellt hat
    • responsible_user — Bentzer ID, der für die Aufgabe verantwortlich ist
    • phone — Telefonnummer für den Anruf (wenn der Art der Aufgabe ein Anruf ist)
    • call_done — Zeigt an, ob der Anruf getätigt wurde
    • completed — Zeigt an, dass die Aufgabe als erledigt markiert ist
    • completed_comment — Kommentar zur abgeschlossenen Aufgabe
    • members — Eine Gruppe von Aufgabenteilnehmern (nur Benutzer-IDs)
    • customers — eine Gruppe von Kunden und Leads, die mit der Aufgabe verbunden sind. Jedes Element der Gruppe enthält folgende Felder:
      • id — Kunden- / Lead-ID
      • name — Name des Kunden / Lead
      • status — Kundenstatus. Mögliche Werte:
        • individual — Privatkunde
        • company — Firmenkunde
      • type — Art des Kunden. Mögliche Werte:
        • potential — potenzieller Kunde
        • client — Kunde
        • reseller — Wiederverkäufer
        • partner — Partner
      • lead_source — Lead Quelle. Mögliche Werte:
        • manual — manuell
        • call_incoming — eingehender Anruf
        • call_outgoing — ausgehender Anruf
        • form — Formular auf der Webseite
      • lead_status — Lead-Status. Mögliche Werte:
        • not_processed — Nicht bearbeitet
        • in_progress — In Bearbeitung
        • finished — Beendet
      • contact_type — Art des Kontakts. Mögliche Werte:
        • customer — Kunde
        • lead — Lead

GET /v1/zcrm/events/<event_id>

Gibt die Aufgabe anhand ihrer ID her.

Antwort

{
  "id": 40,
  "type": "task",
  "title": "Call to GoodCompany",
  "description": "",
  "start": "2020-05-26 09:00:00",
  "end": "2020-05-26 12:30:00",
  "allDay": false,
  "created_by": 234,
  "responsible_user": 234,
  "phone": "",
  "call_done": 0,
  "completed": 0,
  "completed_comment": "",
  "members": [234, 235],
  "customers": [
    {
      "id": 3486,
      "name": "GoodCompany",
      "status": "company",
      "type": "client",
      "lead_source": "manual",
      "lead_status": "not_processed",
      "contact_type": "customer"
    }
  ]
}

wo

  • id — Aufgaben ID
  • type — Art der Aufgabe. Mögliche Werte:
    • task — Aufgabe
    • call — Anruf
  • title — Aufgabentitel
  • description — Aufgabenbeschreibung (im Quill Delta-Format: https://quilljs.com/docs/delta/)
  • start — Datum und Uhrzeit des Starts der Aufgabe (im Format `JJJJ-MM-TT hh: mm: ss`)
  • end — Datum und Uhrzeit des Endes der Aufgabe (im Format `JJJJ-MM-TT hh: mm: ss`)
  • allDay — Aufgabe für den ganzen Tag (`true` oder `false`)
  • created_by —Bentzer ID, der die Aufgabe erstellt hat
  • responsible_user — Bentzer ID, der für die Aufgabe verantwortlich ist
  • phone — Telefonnummer für den Anruf (wenn der Art der Aufgabe ein Anruf ist)
  • call_done — Zeigt an, ob der Anruf getätigt wurde
  • completed — Zeigt an, dass die Aufgabe als erledigt markiert ist
  • completed_comment — Kommentar zur abgeschlossenen Aufgabe
  • members — Eine Gruppe von Aufgabenteilnehmern (nur Benutzer-IDs)
  • customers — eine Gruppe von Kunden und Leads, die mit der Aufgabe verbunden sind. Jedes Element der Gruppe enthält folgende Felder:
    • id — Kunden- / Lead-ID
    • name — Name des Kunden / Lead
    • status — Kundenstatus. Mögliche Werte:
      • individual — Privatkunde
      • company — Firmenkunde
    • type — Art des Kunden. Mögliche Werte:
      • potential — potenzieller Kunde
      • client — Kunde
      • reseller — Wiederverkäufer
      • partner — Partner
    • lead_source — Lead Quelle. Mögliche Werte:
      • manual — manuell
      • call_incoming — eingehender Anruf
      • call_outgoing — ausgehender Anruf
      • form — Formular auf der Webseite
    • lead_status — Lead-Status. Mögliche Werte:
      • not_processed — Nicht bearbeitet
      • in_progress — In Bearbeitung
      • finished — Beendet
    • contact_type — Art des Kontakts. Mögliche Werte:
      • customer — Kunde
      • lead — Lead

POST /v1/zcrm/events

Erstellt eine neue Aufgabe mit den angegebenen Daten.

Parameter

  • event — Daten der neuen Aufgabe. Struktur:
{
    "type": "task",
    "title": "Call to GoodCompany",
    "description": "",
    "start": "2020-05-26 09:00:00",
    "end": "2020-05-26 12:30:00",
    "allDay": false,
    "responsible_user": 234,
    "phone": "",
    "members": [234, 235],
    "customers": [3486, 3487]
}

wo

  • type — Art der Aufgabe. Mögliche Werte:
    • task — Aufgabe
    • call — Anruf
  • title — Aufgabentitel
  • description — Aufgabenbeschreibung (im Quill Delta-Format: https://quilljs.com/docs/delta/)
  • start — Datum und Uhrzeit des Starts der Aufgabe (im Format `JJJJ-MM-TT hh: mm: ss`)
  • end — Datum und Uhrzeit des Endes der Aufgabe (im Format `JJJJ-MM-TT hh: mm: ss`)
  • allDay — Aufgabe für den ganzen Tag (`true` oder `false`)
  • responsible_user — Bentzer ID, der für die Aufgabe verantwortlich ist
  • phone — Telefonnummer für den Anruf (wenn der Art der Aufgabe ein Anruf ist)
  • members — Eine Gruppe von Aufgabenteilnehmern (nur Benutzer-IDs)
  • customers — Eine Gruppe von Kunden und Leads, die mit der Aufgabe verbunden sind. (nur Kunden- und Lead-IDs)

Antwort

{
  "id": 7216
}

wo

  • id — ID der erstellten Aufgabe

PUT /v1/zcrm/events/<event_id>

Aktualisiert eine vorhandene Aufgabe mit der angegebenen ID.

>

Parameter

  • event — neue Aufgabendaten. Struktur:
{
    "title": "Call to GoodCompany",
    "description": "",
    "start": "2020-05-26 09:00:00",
    "end": "2020-05-26 12:30:00",
    "allDay": false,
    "created_by": 234,
    "responsible_user": 234,
    "phone": "",
    "members": [234, 235],
    "customers": [3486, 3487]
}

wo

  • title — Aufgabentitel
  • description — Aufgabenbeschreibung (im Quill Delta-Format: https://quilljs.com/docs/delta/)
  • start — Datum und Uhrzeit des Starts der Aufgabe (im Format `JJJJ-MM-TT hh: mm: ss`)
  • end — Datum und Uhrzeit des Endes der Aufgabe (im Format `JJJJ-MM-TT hh: mm: ss`)
  • allDay — Aufgabe für den ganzen Tag (`true` oder `false`)
  • responsible_user — Bentzer ID, der für die Aufgabe verantwortlich ist
  • phone — Telefonnummer für den Anruf (wenn der Art der Aufgabe ein Anruf ist)
  • members — Eine Gruppe von Aufgabenteilnehmern (nur Benutzer-IDs)
  • customers — Eine Gruppe von Kunden und Leads, die mit der Aufgabe verbunden sind. (nur Kunden- und Lead-IDs)

POST /v1/zcrm/events/<event_id>/close

Beendet (schließt) die Aufgabe.

Parameter

  • comment (optional) - Kommentar

DELETE /v1/zcrm/events/<event_id>

Löscht eine Aufgabe anhand ihrer ID.

Keine Parameter

GET /v1/zcrm/leads

Gibt die Liste der Leads her.

Parameter

  • search (optional) - Suchzeile. Die Suche wird durchgeführt nach:
    • Lead Name
    • Lead Telefonnummer
    • Lead Beschreibung
    • Adresse und Postleitzahl
    • Website
    • E-Mail-Adressen
    • Messengers
  • filter (optional) - Leads Filter. Filterstruktur:
    {
        "source": "call_incoming",
        "responsible": 32,
        "label": 12,
        "createdAfter": "2020-06-11 12:24:00",
        "createdBefore": "2020-06-26 12:24:00"
    }

wo

  • source — Lead Quelle. Mögliche Werte:
    • manual — manuell hinzugefügt
    • call_incoming — eingehender Anruf
    • call_outgoing — ausgehender Anruf
    • form — Formular auf der Webseite
  • responsible — verantwortlicher (Benutzer-ID). Der Parameter erlaubt auch spezielle Werte:
    • null — gibt alle Leads her, die jemandem zugewiesen wurden
    • –1 — gibt nicht zugewiesene Leads her
    • –2 — gibt alle Leads her (zugewiese und zugewiesene)
  • label — Tad (ID)
  • createdAfter — zeigt nur Leads an, die nach der angegebenen Zeit erstellt wurden (Format: `JJJJ-MM-TT hh: mm: ss`)
  • createdBefore — zeigt nur Leads an, die vor der angegebenen Zeit erstellt wurden (Format: `JJJJ-MM-TT hh: mm: ss`)
Jeder der Filterparameter kann weggelassen werden, d.h. ist kein Pflichtfeld.
  • sort (optional) - Leads Sortierung. Parameterstruktur:
    {
        "attr": "name",
        "desc": 0
    }

    wo

    • attr — Sortierfeld. Mögliche Werte:
      • name — Lead Name
      • lead_source — Lead Quelle
      • lead_status — Lead Status
      • responsible_user_id — Verantwortlicher Benutzer
      • lead_created_at — Lead-Erstellungszeit
    • desc — Sortierrichtung. Mögliche Werte:
      • 0 — Aufsteigend
      • 1 — Absteigend
  • take (zur Paginierung) - wie viele Leads hergegeben werden sollen (Standard ist 20)
  • skip (zur Paginierung) - wie viele Leads übersprungen werden sollen (Standard 0)

Antwort

{
  "totalCount": 100,
  "uncategorizedCount": 10,
  "leads": [
    {
      "id": 3486,
      "name": "GoodCompany",
      "responsible_user_id": 234,
      "employees_count": "50",
      "comment": "",
      "country": "GB",
      "city": "London",
      "address": "",
      "zip": "",
      "website": "",
      "lead_status": "not_processed",
      "lead_source": "manual",
      "lead_created_at": "2020-04-28 05:47:47",
      "lead_created_by": 234,
      "phones": [
        {
          "type": "work",
          "phone": "+44123456789"
        }
      ],
      "contacts": [
        {
          "type": "email_work",
          "value": "good_company@example.com"
        }
      ],
      "labels": [
        {
          "id": 22,
          "label": "Best clients"
        }
      ]
    }
  ]
}

wo

  • totalCount — Gesamtzahl der gefundenen Leads (einschließlich Suchzeile und Filter)
  • uncategorizedCount — Gesamtzahl der nicht zugewiesenen Leads (einschließlich Suche und Filter)
  • leads — eine Gruppe von Leads (unter Berücksichtigung der Paginierung). Jedes Element der Gruppe enthält folgende Parameter:
    • id — Lead ID
    • name — Lead Name
    • responsible_user_id —Verantwortlicher (Benutzer-ID)
    • employees_count — Anzahl der Mitarbeiter. Mögliche Werte:
      • 50 — weniger als 50
      • 50_250 — 50 – 250
      • 250_500 — 250 – 500
    • comment — Lead-Beschreibung
    • country — Land des Leads. Zwei-Buchstaben-Code (DE, CH usw.)
    • city — Stadt des Leads
    • address — Lead-Adresse
    • zip — Postleitzahl
    • website — Lead-Website
    • lead_status — Lead-Status. Mögliche Werte:
      • not_processed — Nicht bearbeitet
      • in_progress — In Bearbeitung
      • finished — Beendet
    • lead_source — Lead Quelle. Mögliche Werte:
      • manual — manuell
      • call_incoming — eingehender Anruf
      • call_outgoing — ausgehender Anruf
      • form — Formular auf der Webseite
    • lead_created_at — Datum und Uhrzeit der Lead-Erstellung (im Format `JJJJ-MM-TT HH: mm: ss`)
    • lead_created_by — wer hat den Lead erstellt (Benutzer-ID)
    • phones — eine Gruppe von Lead-Telefonnummern. Jede Nummer enthält folgende Felder:
      • type — Art der Nummer. Mögliche Werte:
        • work — Arbeit
        • personal — Privat
      • phone — Telefonnummer
    • contacts — eine Gruppe von Lead-Kontakten. Jeder Kontakt enthält folgende Felder:
      • type — Art des Kontakts. Mögliche Werte:
        • email_work — Arbeit e-mail
        • email_personal — Privat e-mail
        • skype
        • telegram
        • viber
        • whatsapp
      • value — Kontakt
    • labels — Eine Gruppe von Tags, die dem Lead zugewiesen sind. Jedes Tag enthält folgende Felder:
      • id — Tad ID
      • label — Tag

GET /v1/zcrm/leads/<lead_id>

Gibt einen Lead anhand seiner ID her.

Antwort

{
  "id": 3486,
  "name": "GoodCompany",
  "responsible_user_id": 234,
  "employees_count": "50",
  "comment": "",
  "country": "GB",
  "city": "London",
  "address": "",
  "zip": "",
  "website": "",
  "lead_status": "not_processed",
  "lead_source": "manual",
  "lead_created_at": "2020-04-28 05:47:47",
  "lead_created_by": 234,
  "phones": [
    {
      "type": "work",
      "phone": "+44123456789"
    }
  ],
  "contacts": [
    {
      "type": "email_work",
      "value": "good_company@example.com"
    }
  ],
  "labels": [
    {
      "id": 22,
      "label": "Best clients"
    }
  ],
  "custom_properties": [
    {
      "id": 12,
      "key": "loyalty",
      "title": "Loyalty",
      "value": "high"
    }
  ]
}

wo

  • id — Lead ID
  • name — Lead Name
  • responsible_user_id — Verantworticher (Benutzer ID)
  • employees_count — Anzahl der Mitarbeiter. Mögliche Werte:
    • 50 — weniger als 50
    • 50_250 — 50 – 250
    • 250_500 — 250 – 500
  • comment — Lead Beschreibung
  • country — Land des Leads. Zwei-Buchstaben-Code (DE, CH usw.)
  • city — Stadt des Leads
  • address — Lead-Adresse
  • zip — Postleitzahl
  • website — Lead-Website
  • lead_status — Lead-Status. Mögliche Werte:
    • not_processed — Nicht bearbeitet
    • in_progress — In Bearbeitung
    • finished — Beendet
  • lead_source — Lead Quelle. Mögliche Werte:
    • manual — manuell
    • call_incoming — eingehender Anruf
    • call_outgoing — ausgehender Anruf
    • form — Formular auf der Webseite
  • lead_created_at — Datum und Uhrzeit der Lead-Erstellung (im Format `JJJJ-MM-TT HH: mm: ss`)
  • lead_created_by — wer hat den Lead erstellt (Benutzer-ID)
  • phones — eine Gruppe von Lead-Telefonnummern. Jede Nummer enthält folgende Felder:
    • type — Art der Nummer. Mögliche Werte:
      • work — Arbeit
      • personal — Privat
    • phone — Telefonnummer
  • contacts — eine Gruppe von Lead-Kontakten. Jeder Kontakt enthält folgende Felder:
    • type — Art des Kontakts. Mögliche Werte:
      • email_work — Arbeit e-mail
      • email_personal — Privat e-mail
      • skype
      • telegram
      • viber
      • whatsapp
    • value — Kontakt
  • labels — Eine Gruppe von Tags, die dem Lead zugewiesen sind. Jedes Tag enthält folgende Felder:
    • id — Tag ID
    • label — Tag

POST /v1/zcrm/leads

Erstellt einen neuen Lead mit den angegebenen Daten.

Parameter

  • convert — Lead in Kunden umwandeln. Mögliche Werte:
    • 0 — nicht umwandeln, Lead erstellen
    • 1 — Kunde erstellen
    • 2 — schlechte Qualität (der Vorgang wird abgebrochen - weder der Lead noch der Kunde werden erstellt)
  • lead — Daten des neuen Lead. Lead Struktur:
    {
        "name": "GoodCompany",
        "responsible_user_id": 234,
        "employees_count": "50",
        "comment": "",
        "country": "RU",
        "city": "Москва",
        "address": "",
        "zip": "",
        "website": "",
        "lead_source": "manual",
        "lead_status": "in_progress",
        "phones": [
          {
            "type": "work",
            "phone": "+44123456789"
          }
        ],
        "contacts": [
          {
            "type": "email_work",
            "value": "good_company@example.com"
          }
        ],
        "labels": [
          { "id": 22 },
          { "id": 23 }
      ],
        "custom_properties": [
        {
            "id": 12,
            "value": "high"
          }
        ]
    }

    wo

    • name — Lead Name
    • responsible_user_id — Verantwortlicher (Benutzer ID)
    • employees_count — Anzahl der Mitarbeiter. Mögliche Werte:
      • 50 — weniger als 50
      • 50_250 — 50 – 250
      • 250_500 — 250 – 500
    • comment — Lead Beschreibung
    • country — Land des Leads. Zwei-Buchstaben-Code (DE, CH usw.)
    • city — Stadt des Leads
    • address — Lead-Adresse
    • zip — Postleitzahl
    • website — Lead-Website
    • lead_source — Lead Quelle. Mögliche Werte:
      • manual — manuell
      • call_incoming — eingehender Anruf
      • call_outgoing — ausgehender Anruf
      • form — Formular auf der Webseite
    • lead_status — Lead-Status. Mögliche Werte:
      • not_processed — Nicht bearbeitet
      • in_progress — In Bearbeitung
      • finished — Beendet
    • phones — eine Gruppe von Telefonnummern. Jede Nummer enthält folgende Felder:
      • type — Art der Nummer. Mögliche Werte:
        • work — Arbeit
        • personal — Privat
      • phone — Telefonnummern
    • contacts — eine Gruppe von Lead-Kontakten. Jeder Kontakt enthält folgende Felder:
      • type — Art des Kontakts. Mögliche Werte:
        • email_work — Arbeit e-mail
        • email_personal — Privat e-mail
        • skype
        • telegram
        • viber
        • whatsapp
      • value — Kontakt
    • labels — Eine Gruppe von Tags, die dem Lead zugewiesen sind. Jedes Element muss enthalten:
      • id — Tag ID
      • custom_properties — eine Gruppe zusätzlicher Eigenschaften. Jedes Element muss enthalten:
        • id — ID der zusätzlichen Eigenschaft:
        • key — eindeutiger Name der zusätzlichen Eigenschaft
        • value — Wert der zusätzlichen Eigenschaft

Antwort

{
  "id": 123
}

wo

  • id — ID des erstellten Leads

PUT /v1/zcrm/leads/<lead_id>

Aktualisiert einen vorhandenen Lead mit der angegebenen ID.

Parameter

  • convert — Lead in Kunden umwandeln. Mögliche Werte:
    • 0 — nicht umwandeln
    • 1 — Kunde erstellen
    • 2 — schlechte Qualität (Lead entfernen)
  • lead — neue Lead-Daten. Lead Struktur:
{
    "name": "GoodCompany",
    "responsible_user_id": 234,
    "employees_count": "50",
    "comment": "",
    "country": "GB",
    "city": "London",
    "address": "",
    "zip": "",
    "website": "",
    "lead_source": "manual",
    "lead_status": "in_progress",
    "phones": [
      {
        "type": "work",
        "phone": "+44123456789"
      }
    ],
    "contacts": [
      {
        "type": "email_work",
        "value": "good_company@example.com"
      }
    ],
    "labels": [
      { "id": 22 },
      { "id": 23 }
  ],
    "custom_properties": [
    {
        "id": 12,
        "value": "high"
      }
    ]
}

wo

  • name — Lead Name
  • responsible_user_id — Verantwortlicher (Benutzer ID)
  • employees_count — Anzahl der Mitarbeiter. Mögliche Werte:
    • 50 — weniger als 50
    • 50_250 — 50 – 250
    • 250_500 — 250 – 500
  • comment — Lead Beschreibung
  • country — Land des Leads. Zwei-Buchstaben-Code (DE, CH usw.)
  • city — Stadt des Leads
  • address — Lead-Adresse
  • zip — Postleitzahl
  • website — Lead-Website
  • lead_source — Lead Quelle. Mögliche Werte:
    • manual — manuell
    • call_incoming — eingehender Anruf
    • call_outgoing — ausgehender Anruf
    • form — Formular auf der Webseite
  • lead_status — статус лида. Допустимые значения:
    • lead_status — Lead-Status. Mögliche Werte:
      • not_processed — Nicht bearbeitet
      • in_progress — In Bearbeitung
      • finished — Beendet
    • phones — eine Gruppe von Telefonnummern. Jede Nummer enthält folgende Felder:
      • type — Art der Nummer. Mögliche Werte:
        • work — Arbeit
        • personal — Privat
      • phone — Telefonnummer
    • contacts — eine Gruppe von Lead-Kontakten. Jeder Kontakt enthält folgende Felder:
      • type — Art des Kontakts. Mögliche Werte:
        • email_work — Arbeit e-mail
        • email_personal — Privat e-mail
        • skype
        • telegram
        • viber
        • whatsapp
      • value — Kontakt
    • labels — Eine Gruppe von Tags, die dem Lead zugewiesen sind. Jedes Element muss enthalten:
      • id — Tag ID
    • custom_properties — eine Gruppe zusätzlicher Eigenschaften. Jedes Element muss enthalten:
      • id — ID der zusätzlichen Eigenschaft:
      • key — eindeutiger Name der zusätzlichen Eigenschaft
      • value — Wert der zusätzlichen Eigenschaft

DELETE /v1/zcrm/leads/<lead_id>

Löscht einen Lead anhand seiner ID.

Keine Parameter

GET /v1/zcrm/users

Gibt eine Liste der Benutzer her.

Antwort

{
  "totalCount": 2,
  "users": [
    {
      "id": 234,
      "email": "john_smith@example.com",
      "name": "John Smith",
      "group_id": 653,
      "is_superadmin": 1,
      "enabled": 1,
      "created_at": "2020-04-27 01:01:31",
      "avatar": 2457,
      "role": "",
      "status": "",
      "language": "en",
      "color": "220",
      "color_hex": "5678BD",
      "internal_number": "100",
      "timezone": "Europe/London",
      "first_day": 1,
      "device": "webphone",
      "phone_widget_location": "right",
      "phones": [
        {
          "phone": "+44123456789",
          "type": "work"
        }
      ],
      "contacts": [
        {
          "type": "email_work",
          "value": "smith@example.com"
        }
      ]
    }
  ]
}

wo

  • totalCount — Gesamtzahl der Benutzer
  • users — Eine Gruppe der Benutzer. Jedes Element der Gruppe enthält folgende Attribute:
    • id — Benutzer ID
    • email — Benutzerkonto E-Mail
    • name — Benutzername
    • group_id — ID der Benutzergruppe
    • is_superadmin — Zeigt an, ob der Benutzer ein Superadministrator ist (1 oder 0).
    • enabled — ob der Benutzer entsperrt ist (1 oder 0)
    • created_at — Datum und Uhrzeit der Benutzererstellung (im Format "JJJJ-MM-TT hh: mm: ss")
    • avatar — Benutzer-Avatar (Datei ID)
    • role — Benutzerposition
    • status — Benutzerstatus
    • language — Sprache der Benutzeroberfläche. Mögliche Varianten:
      • de — Deutsch
      • en — Englisch
      • es — Spanisch
      • pl — Polnisch
      • ru — Russisch
      • ua — Ukrainisch
    • color — Farbe der Aufgabe in der ZCRM-Oberfläche (nur Farbtonwert - von 0 bis 359)
    • color_hex — Farbe der Aufgabe in der ZCRM-Oberfläche (hex-Darstellung)
    • internal_number — Interne PBX-Nummer des Benutzers
    • timezone — Benutzerzeitzone
    • first_day — bestimmt, welcher Wochentag der Wochenanfang ist:
      • 0 — Sonntag
      • 1 — Montag
    • device — Was wird für Anrufe verwendet. Mögliche Werte:
      • webphone — Web-Phone
      • softphone — Drittanbieter-Softphone
    • phone_widget_location — Ort des Web-Phone-Widgets. Mögliche Werte:
      • left — Phone-Widget links platzieren
      • right — Phone-Widget rechts platzieren
    • phones — Eine Gruppe von Benutzer-Telefonnummern. Jede Nummer enthält folgende Felder:
      • phone — Telefonnummer
      • type — Art der Nummer. Mögliche Werte:
        • work — Arbeit
        • personal — Privat
    • contacts — Eine Gruppe von Benutzerkontakten. Jeder Kontakt enthält folgende Felder:
      • type — Art des Kontakts. Mögliche Werte:
        • email_work — Arbeit e-mail
        • email_personal — Privat e-mail
        • skype
        • telegram
        • viber
        • whatsapp
      • value — Kontakt

GET /v1/zcrm/users/<user_id>

Gibt den Benutzer anhand seiner ID her.

Antwort

{
  "id": 234,
  "email": "john_smith@example.com",
  "name": "John Smith",
  "group_id": 653,
  "is_superadmin": 1,
  "enabled": 1,
  "created_at": "2020-04-27 01:01:31",
  "avatar": 2457,
  "role": "",
  "status": "",
  "language": "ru",
  "color": "220",
  "color_hex": "5678BD",
  "internal_number": "100",
  "timezone": "Europe/London",
  "first_day": 1,
  "device": "webphone",
  "phone_widget_location": "right",
  "phones": [
    {
      "phone": "+44123456789",
      "type": "work"
    }
  ],
  "contacts": [
    {
      "type": "email_work",
      "value": "smith@example.com"
    }
  ],
  "pending_email_change_request": false
}

wo

  • id — Benutzer ID
  • email — Benutzerkonto E-Mail
  • name — Benutzername
  • group_id — ID der Benutzergruppe
  • is_superadmin — Zeigt an, ob der Benutzer ein Superadministrator ist (1 oder 0)
  • enabled — ob der Benutzer entsperrt ist (1 oder 0)
  • created_at — Datum und Uhrzeit der Benutzererstellung (im Format "JJJJ-MM-TT hh: mm: ss")
  • avatar — Benutzer-Avatar (Datei ID)
  • role — Benutzerposition
  • status — Benutzerstatus
  • language — Sprache der Benutzeroberfläche. Mögliche Varianten:
    • de — Deutsch
    • en — Englisch
    • es — Spanisch
    • pl — Polnisch
    • ru — Russisch
    • ua — Ukrainisch
  • color — Farbe der Aufgabe in der ZCRM-Oberfläche (nur Farbtonwert - von 0 bis 359)
  • color_hex — Farbe der Aufgabe in der ZCRM-Oberfläche (hex-Darstellung)
  • internal_number — Interne PBX-Nummer des Benutzers
  • timezone — Benutzerzeitzone
  • first_day — bestimmt, welcher Wochentag der Wochenanfang ist:
    • 0 — Sonntag
    • 1 — Montag
  • device — Was wird für Anrufe verwendet. Mögliche Werte:
    • webphone — Web-Phone
    • softphone — Drittanbieter-Softphone
  • phone_widget_location — Ort des Web-Phone-Widgets. Mögliche Werte:
    • left — Phone-Widget links platzieren
    • right — Phone-Widget rechts platzieren
  • phones — Eine Gruppe von Benutzer-Telefonnummern. Jede Nummer enthält folgende Felder:
    • phone — Telefonnummer
    • type — Art der Nummer. Mögliche Werte:
      • work — Arbeit
      • personal — Privat
  • contacts — Eine Gruppe von Benutzerkontakten. Jeder Kontakt enthält folgende Felder:
    • type — Art des Kontakts. Mögliche Werte:
      • email_work — Arbeit e-mail
      • email_personal — Privat e-mail
      • skype
      • telegram
      • viber
      • whatsapp
    • value — Kontakt
  • pending_email_change_request — Wenn eine Anfrage zur Änderung des Accounts-E-Mail gesendet wurde, die Anfrage jedoch noch nicht bestätigt wurde, wird dieser Parameter auf true gesetzt

GET /v1/zcrm/users/<user_id>/working-hours

Gibt die Geschäftszeiten des Benutzers her.

Antwort

{
  "schedulePeriod": 7,
  "scheduleWorkingHours": [
    {
      "time_start": "2020-06-15 09:00:00",
      "time_end": "2020-06-15 18:00:00"
    }
  ],
  "scheduleFixes": [
    {
      "index": 2,
      "repeat_index": 1,
      "time_start": "2020-06-24 09:00:00",
      "time_end": "2020-06-24 13:00:00",
      "deleted": 0
    }
  ],
  "customWorkingHours": [
    {
      "time_start": "2020-06-27 11:00:00",
      "time_end": "2020-06-27 15:00:00"
    }
  ]
}

wo

  • schedulePeriod — die Häufigkeit des Zeitplans, *wie oft* er wiederholt wird. Für eine normale Arbeitswoche sind dies 7 Tage, für einen Zeitplan "jeden zweiten Tag" sind dies 2 Tage usw.
  • scheduleWorkingHours — eine Gruppe von Arbeitsperioden. Jede Arbeitsperiode enthält folgende Attributen:
    • time_start — Beginn der Arbeitszeit im Format `JJJJ-MM-TT hh: mm: ss`
    • time_end — Ende der Arbeitszeit im Format `JJJJ-MM-TT hh: mm: ss`
  • scheduleFixes — Eine Gruppe von Änderungen an den Arbeitsperioden die im Parameter schedWorkingHours definiert wurden. Jedes Element der Gruppe enthält folgende Attributen:
    • index — Der Index des Elements in ScheduleWorkingHours, d. h. Welche Arbeitszeit wurden geändert?
    • repeat_index — Der Index der Zeitplanwiedergabe, in der sich die Arbeitsperiode ändert
    • time_start — ein neuer Arbeitsbeginn im Format `JJJJ-MM-TT hh: mm: ss`
    • time_end — das neue Ende der Arbeitszeit im Format `JJJJ-MM-TT hh: mm: ss`
    • deleted — Wenn gleich 1, wird die Arbeitsperiode vollständig gelöscht
  • customWorkingHours — eine Gruppe von benutzerdefinierten einzelnen Arbeitsperioden. Jede Arbeitsperiode enthält die folgenden Attribute:
    • time_start — Beginn der Arbeitszeit im Format `JJJJ-MM-TT hh: mm: ss`
    • time_end — Ende der Arbeitszeit im Format `JJJJ-MM-TT hh: mm: ss`

GET /v1/zcrm/users/groups

Gibt die Gruppen und Benutzerrechte der einzelnen Gruppen her.

Antwort

{
  "totalCount": 4,
  "groups": [
    {
      "id": 45,
      "type": "manager",
      "title": "",
      "permissions": {
        "customers_create": true,
        "customers_edit": true,
        "customers_delete": true,
        "customers_import_export": true,
        "customers_view_all": false,
        "calendar_other_users_access": false,
        "calls_other_users_access": false,
        "leads_view": false,
        "leads_edit": false,
        "leads_delete": false,
        "leads_import_export": false,
        "team_add": false,
        "team_edit": false
      }
    }
  ]
}

wo

  • totalCount — Gesamtzahl der Gruppen
  • groups — Eine Menge von Gruppen. Jede Gruppe enthält die folgenden Attribute:
    • id — Gruppen ID
    • type — Art der Gruppe. Mögliche Werte:
      • admin — Administratoren
      • manager — Managers
      • chat_operator — Fachkräfte
      • trainee — Praktikanten
      • custom — Benutzerdefiniert
    • title — Benutzergruppenname (für type = custom)
    • permissions — Benutzerrechte der Gruppe. Administratoren haben vollen Zugriff, daher ist dieses Objekt für Administratoren leer. Die verbleibenden Gruppen enthalten die folgenden Attribute (von denen jedes gleich `true` oder `false` sein kann):
      • customers_create — Die Erstellung von Kunden ist erlaubt
      • customers_edit — Das Bearbeiten von Kunden ist erlaubt
      • customers_delete — Die Löschung den Kunden ist erlaubt
      • customers_import_export — Kundenimport und -export ist erlaubt
      • customers_view_all —Darf alle Kunden ansehen, einschließlich Kunden die anderen Benutzern zugewiesenen sind
      • calendar_other_users_access — Darf Aufgaben anderer Benutzer ansehen
      • calls_other_users_access — Zugriff auf Anrufe anderer Benutzer erlaubt
      • leads_view — Darf Leads anderer Benutzer ansehen
      • leads_edit — Darf Leads anderer Benutzer bearbeiten
      • leads_delete — Darf Leads anderer Benutzer löschen
      • leads_import_export — Leadsimport und -export ist erlaubt
      • team_add — Darf Benutzer zum Team hinzufügen und einladen
      • team_edit — Benutzerbearbeitung erlaubt

GET /v1/zcrm/calls

Gibt dir Liste von Anrufen her.

Parameter

  • search (optional) - Suchzeile. Die Suche wird durchgeführt nach:
    • Telefonnummern
    • Kontaktnamen (Kunden, Mitarbeiter, Leads oder Benutzer)
  • filter (optional) - Filter aufrufen. Filterstruktur:
    {
        "user": 23,
        "type": "incoming",
        "status": "answer",
        "dateFrom": "2020-06-03 14:56:00",
        "dateTo": "2020-06-26 14:56:00"
    }

    wo

    • user — Benutzer (ID)
    • type — Art des Anrufs. Mögliche Werte:
      • incoming — eingehender Anruf
      • outgoing — ausgehender Anruf
    • status — Anrufstatus. Mögliche Werte:
      • answer — erfolgreicher Anruf
      • noanswer — keine Antwort
      • cancel — abgebrochen
      • busy — belegt
      • failed — fehlgeschlagen
    • dateFrom — Nur Anrufe anzeigen, die nach der angegebenen Zeit getätigt wurden (Format: `JJJJ-MM-TT hh: mm: ss`)
    • dateTo — Nur Anrufe anzeigen, die vor angegebenen Zeit getätigt wurden (Format: `JJJJ-MM-TT hh: mm: ss`)
Jeder der Filterparameter kann weggelassen werden, d.h. ist kein Pflichtfeld.
  • sort (optional) - Anrufe sortieren. Parameterstruktur:
      {
        "attr": "time",
        "desc": 0
      }

    wo

    • attr — Sortierfeld. Mögliche Werte:
      • phone — Telefonnummer
      • status — Anrufstatus
      • duration — Anrufdauer
      • time — Anrufzeit
    • desc — Sortierrichtung. Mögliche Werte
      • 0 — Aufsteigend
      • 1 — Absteigend
  • take (zur Paginierung) - wie viele Anrufe zurückgegeben werden sollen (Standard ist 20)
  • skip (zur Paginierung) - wie viele Anrufe übersprungen werden sollen (Standard 0)

Antwort

{
  "totalCount": 233,
  "calls": [
    {
      "id": 127,
      "type": "outgoing",
      "status": "answer",
      "phone": "+44123456789",
      "user_id": 179,
      "time": "2019-07-31 17:58:40",
      "duration": 9,
      "pbx_call_id": "out_807ghh1h7f09fa7a188dbf8a6998b1c9ghg4ij06",
      "record": 1,
      "record_url_till": "2020-07-24 20:08:10",
      "contact_type": "customer",
      "contact_name": "GoodCompany",
      "contact_customer_id": 3486,
      "contact_employee_id": null,
      "employee_customer_id": null,
      "contact_user_id": null,
      "is_lead": 1,
      "record_urls": [
        {
          "url": "https://api.zadarma.com/v1/pbx/record/download/[...]/[...]/[...].mp3"
        }
      ]
    }
  ]
}

wo

  • totalCount — Gesamtzahl der Anrufe (einschließlich Suchzeichenfolge und Filter)
  • calls — eine Gruppe von Anrufen (unter Berücksichtigung der Paginierung). Jedes Element der Gruppe enthält die folgenden Parameter:
    • id — Anruf-ID
    • type — Art des Anrufs. Mögliche Werte:
      • incoming — eingehender Anruf
      • outgoing — ausgehender Anruf
    • status — Anrufstatus. Mögliche Werte:
      • answer — erfolgreicher Anruf
      • noanswer — keine Antwort
      • cancel — abgebrochen
      • busy — belegt
      • failed — fehlgeschlagen
    • phone — Telefonnummer
    • user_id — der Benutzer, der den Anruf initiiert oder empfangen hat
    • time — Anrufzeit im Format `JJJJ-MM-TT hh: mm: ss`
    • duration — Anrufdauer in Sekunden
    • pbx_call_id — Anruf-ID in der Zadarma PBX
    • record — ob die Anrufaufnahme aktiviert ist
    • record_url_till — Die Zeit, bis zu der der Link zur Gesprächsaufzeichnung gültig ist
    • contact_type — Art des Kontakts. Mögliche Werte:
      • customer — Kunde oder Lead (siehe Parameter is_lead)
      • employee — Kundenmitarbeiter
      • user — Benutzer
    • contact_name — Kontaktname
    • contact_customer_id — Kunden- oder Lead-ID (wenn der Anruf einem Kunden zugeordnet ist)
    • contact_employee_id — Mitarbeiter-ID (wenn der Anruf dem Mitarbeiter zugeordnet ist)
    • employee_customer_id — ID der Primären Entität (wenn der Anruf einem Mitarbeiter zugeordnet ist)
    • contact_user_id — Benutzer-ID (wenn der Anruf dem Benutzer zugeordnet ist)
    • is_lead — Zeigt an, ob der Anruf mit einem Lead verbunden ist
    • record_urls — eine Gruppe von Gesprächsaufzeichnungen (kann fehlen, da dies speziell angefordert werden muss). Jedes Element der Gruppe ist ein Objekt mit folgendem Feld:
      • url — Link zur Gesprächsaufzeichnung

GET /v1/zcrm/contacts

Gibt eine Liste aller Kontakte (Kunden, Mitarbeiter, Leads, Benutzer) mit Telefonnummern her.

Parameter

  • search (optional) - Suchzeile. Die Suche wird durchgeführt nach:
    • Namen und Telefonnummern von Kunden, Leads, Mitarbeitern und Benutzern
    • Interne PBX-Nummern der Benutzer
  • take (zur Paginierung) - wie viele Kontakte hergegeben werden sollen (Standard ist 20)
  • skip (zur Paginierung) - wie viele Kontakte übersprungen werden sollen (Standard 0)

Antwort

{
  "totalCount": 128,
  "contacts": [
    {
      "contact_type": "customer",
      // clients attributes...
    },
    {
      "contact_type": "employee",
      // employee attributes...
    },
    {
      "contact_type": "lead",
      // leads attributes...
    },
    {
      "contact_type": "user",
      // users attributes...
    }
  ]
}

wo

  • totalCount — Gesamtzahl der Kontakte (einschließlich Suchzeile)
  • contacts — Gruppe von Kontakten. Jeder der Kontakte verfügt je nach Art (Kunde, Mitarbeiter, Lead, Benutzer) über eigene Attribute.

    Kunde

    {
        "contact_type": "customer",
        "id": 3486,
        "name": "GoodCompany",
        "status": "company",
        "type": "client",
        "phone": {
          "phone": "+44123456789",
          "type": "work"
        },
        "responsible": {
          "id": 234,
          "name": "John Smith",
          "ext_num": "100"
        }
    }

    wo

    • contact_type — Art des Kontakts:
      • customer — Kunde
    • id — KundenID
    • name — Kundenname
    • status — Kundenstatus. Mögliche Werte:
      • individual — Privatkunde
      • company — Firmenkunde
    • type — Art des Kunden. Mögliche Werte:
      • potential — Potenzieller Kunde
      • client — Kunde
      • reseller — Wiederverkäufer
      • partner — Partner
    • phone — Telefonnummer. Enthält folgende Felder:
      • phone — Telefonnummer
      • type — Art der Nummer. Mögliche Werte:
        • work — Arbeit
        • personal — Privat
    • responsible — Verantwortlicher Benutzer. Enthält folgende Felder:
      • id — Benutzer ID
      • name — Benutzername
      • ext_num — Interne PBX Nummer des Benutzers

    Kundenmitarbeiter

    {
            "contact_type": "employee",
            "id": 8,
            "name": "John Smith",
            "phone": {
              "phone": "+44123456789",
              "type": "work"
            },
            "position": {
              "position": "manager",
              "title": ""
            },
            "customer": {
              "id": 3486,
              "name": "GoodCompany"
            },
            "responsible": {
              "id": 234,
              "name": "John Smith",
              "ext_num": "100"
            }
    }

    wo

    • contact_type — Art des Kontakts.
      • employee — Mitarbeiter
    • id — Mitarbeiter ID
    • name — Mitarbeitername
    • phone — Telefonnummer. Enthält folgende Felder:
      • phone — Telefonnummer
      • type — Art der Nummer. Mögliche Werte:
        • work — Arbeit
        • personal — Privat
    • position — Mitarbeiterposition. Enthält folgende Felder:
      • position — Position. Mögliche Werte:
        • ceo — Hauptgeschäftsführer
        • director — Geschäftsführer
        • manager — Manager
        • sales_manager — Salesmanager
        • hr — HR
        • support — Support
        • custom — Beliebig
      • title — Name der beliebigen Position (für position = custom)
    • customer — Kunde, mit dem der Mitarbeiter verknüpft ist. Enthält folgende Felder:
      • id — Kunden ID
      • name — Kundenname
      • responsible — Benutzer, der für den übergeordneten Kunde verantwortlich ist. Enthält folgende Felder:
        • id — Benutzer ID
        • name — Benutzername
        • ext_num — Interne PBX Nummer des Benutzers

    Lead

    {
    "contact_type": "lead",
    "id": 3486,
    "name": "GoodCompany",
    "phone": {
      "phone": "+44123456789",
      "type": "work"
    },
    "responsible": {
      "id": 234,
      "name": "John Smith",
      "ext_num": "100"
    }
    }

    wo

    • contact_type — Art des Kontakts:
      • lead — Lead
    • id — Lead ID
    • name — Lead Name
    • phone — Telefonnummer. Enthält folgende Felder:
      • phone — Telefonnummer
      • type — Art der Nummer. Mögliche Werte:
        • work — Arbeit
        • personal — Privat
    • responsible — Verantwortlicher Benutzer. Enthält folgende Felder:
      • id — Benutzer ID
      • name — Benutzername
      • ext_num — nterne PBX Nummer des Benutzers

    Benutzer

    {
        "contact_type": "user",
        "id": 234,
        "name": "John Smith",
        "avatar": 2457,
        "role": "",
        "status": "",
        "phone": {
          "phone": "100",
          "type": "internal"
        },
        "group": {
          "type": "admin",
          "title": ""
        }
      }

    wo

    • contact_type — Art des Kontakts:
      • user — Benutzer
    • id — Benutzer ID
    • name — Benutzername
    • avatar — Benutzer-Avatar (Datei ID)
    • role — Benutzer-Rolle
    • status — Benutzerstatus
    • phone — Telefonnummer. Enthält folgende Felder:
      • phone — Telefonnummer
      • type — Art der Nummer. Mögliche Werte:
        • work — Arbeit
        • personal — Privat
        • internal — Interne PBX Nummer
    • group — Benutzergruppe. Enthält folgende Felder:
      • type — Art der Gruppe. Mögliche Werte:
        • admin — Administratoren
        • manager — Managers
        • chat_operator — Fachkräfte
        • trainee — Praktikanten
        • custom — Benutzerdefiniert
      • title — Name der Benutzergruppe (für Typ = Benutzerdefiniert)

GET /v1/zcrm/contacts/identify

Identifiziert den Kontakt (Kunde, Mitarbeiter, Lead, Benutzer) anhand der Telefonnummer.

Parameter

  • phone — Telefonnummer

Antwort

Die Antwort hängt von der Art des gefundenen Kontakts ab (Kunde, Mitarbeiter, Lead, Benutzer).

Kunde

{
  "contact_type": "customer",
  "id": 3486,
  "name": "GoodCompany",
  "status": "company",
  "type": "client",
  "phone": {
    "phone": "+44123456789",
    "type": "work"
  },
  "responsible": {
    "id": 234,
    "name": "Jim Beam",
    "ext_num": "100"
  }
}

wo

  • contact_type — Art des Kontakts:
    • customer — Kunde
  • id — Kunden ID
  • name — Kundenname
  • status — Kundenstatus. Mögliche Werte:
    • individual — Privatkunde
    • company — Firmenkunde
  • type — Art des Kunden. Mögliche Werte:
    • potential — potenzieller Kunde
    • client — Kunde
    • reseller — Wiederverkäufer
    • partner — Partner
  • phone — Telefonnummer. Enthält folgende Felder:
    • phone — Telefonnummer
    • type — Art der Nummer. Mögliche Werte:
      • work — Arbeit
      • personal — Privat
  • responsible — Verantwortlicher Benutzer. Enthält folgende Felder:
    • id — Benutzer ID
    • name — Benutzername
    • ext_num — Interne PBX Nummer des Benutzers

Kundenmitarbeiter

{
  "contact_type": "employee",
  "id": 8,
  "name": "John Smith",
  "phone": {
    "phone": "+44123456789",
    "type": "work"
  },
  "position": {
    "position": "manager",
    "title": ""
  },
  "customer": {
    "id": 3486,
    "name": "GoodCompany"
  },
  "responsible": {
    "id": 234,
    "name": "Jim Beam",
    "ext_num": "100"
  }
}

wo

  • contact_type — Art des Kontakts:
    • employee — Mitarbeiter
  • id — Mitarbeiter ID
  • name — Mitarbeitername
  • phone — Telefonnummer. Enthält folgende Felder:
    • phone — Telefonnummer
    • type — Art der Nummer. Mögliche Werte:
      • work — Arbeit
      • personal — Privat
  • position — Mitarbeiterposition. Enthält folgende Felder:
    • position — Position. Mögliche Werte
      • ceo — Hauptgeschäftsführer
      • director — Geschäftsführer
      • manager — Manager
      • sales_manager — Salesmanager
      • hr — HR
      • support — Support
      • custom — Beliebig
    • title — Name der beliebigen Position (für position = custom)
  • customer — Kunde, mit dem der Mitarbeiter verknüpft ist. Enthält folgende Felder:
    • id — Kunden ID
    • name — Kundenname
  • responsible — Der Benutzer, der für den übergeordneten Kunde verantwortlich ist. Enthält folgende Felder:
    • id — Benutzer ID
    • name — Benutzername
    • ext_num — Interne PBX Nummer des Benutzers

Lead

{
  "contact_type": "lead",
  "id": 3486,
  "name": "GoodCompany",
  "phone": {
    "phone": "+44123456789",
    "type": "work"
  },
  "responsible": {
    "id": 234,
    "name": "Jim Beam",
    "ext_num": "100"
  }
}

wo

  • contact_type — Art des Kontakts:
    • lead — Lead
  • id — Lead ID
  • name — Lead Name
  • phone — Telefonnummer. Enthält folgende Felder:
    • phone — Telefonnummer
    • type — Art der Nummer. Mögliche Werte:
      • work — Arbeit
      • personal — Privat
  • responsible — Verantwortlicher Benutzer. Enthält folgende Felder:
    • id — Benutzer ID
    • name — Benutzername
    • ext_num — Interne PBX Nummer des Benutzers

Benutzer

{
  "contact_type": "user",
  "id": 234,
  "name": "John Smith",
  "avatar": 2457,
  "role": "",
  "status": "",
  "phone": {
    "phone": "100",
    "type": "internal"
  },
  "group": {
    "type": "admin",
    "title": ""
  }
}

wo

  • contact_type — Art des Kontakts:
    • user — Benutzer
  • id — Benutzer ID
  • name — Benutzername
  • avatar — Benutzer-Avatar (Datei ID)
  • role — Benutzer-Rolle
  • status — Benutzerstatus
  • phone — Telefonnummer. Enthält folgende Felder:
    • phone — Telefonnummer
    • type — Art der Nummer. Mögliche Werte:
      • work — Arbeit
      • personal — Privat
      • internal — Interne PBX Nummer
  • group — Benutzergruppe. Enthält folgende Felder:
    • type — Art der Gruppe. Mögliche Werte:
      • admin — Administratoren
      • manager — Managers
      • chat_operator — Fachkräfte
      • trainee — Praktikanten
      • custom — Benutzerdefiniert
    • title — Name der Benutzergruppe (für Typ = Benutzerdefiniert)

GET /v1/zcrm/files/<file_id>

Gibt die Datei anhand ihrer ID her.

Keine Parameter

 

Benachrichtigungssystem über Anrufe: Webhook

Zadarma kann Ihnen die Informationen über jeden Anruf Ihrer PBX zusenden und abhängig von den Antwort, den Anruf auf richtige interne Nummer umleiten. Um dieses zu ermöglichen, müssen Sie einen Link mit offenem Zugang erstellen, der POST-Anfragen mit Information von Zadarma erhalten wird.

Verfügbare Optionen:

  • NOTIFY_START
    Beginn eines eingehenden Anrufes an die PBX.
  • NOTIFY_INTERNAL
    Beginn eines eingehenden Anrufes an interne PBX-Nummer.
  • NOTIFY_ANSWER
    Anrufannahme an interner oder externer Nummer.
  • NOTIFY_END
    Ende eines eingehenden Anrufes an interne PBX-Nummer.
  • NOTIFY_OUT_START
    Beginn eines ausgehenden Anrufes von der PBX.
  • NOTIFY_OUT_END
    Ende eines ausgehenden Anrufes von der PBX.
  • NOTIFY_RECORD
    Gesprächsaufnahme ist zum Herunterladen bereit.
  • NOTIFY_IVR
    Abonnentenantwort auf definierten Vorgang.
  • SPEECH_RECOGNITION
    Spracherkennungsergebnis.

Die Parameter die zum Benachrichtigung benötigt werden:

  • event – Vorgang (NOTIFY_START)
  • call_start – Anruf Anfangszeit;;
  • pbx_call_id – id des Anrufes;
  • caller_id – ummer den Anrufer;
  • called_did – Zielrufnummer.

Erstellung der Testunterschrift für die Benachrichtigung über Eingangsanrufe, Beispiel für PHP:

$signatureTest = base64_encode(hash_hmac('sha1', $_POST['caller_id'] . $_POST['called_did'] . $_POST['call_start'], API_SECRET));

Für die Anfragen NOTIFY_START und NOTIFY_IVR können Sie schnell das Szenario für laufende Anruf ändern in dem Sie eine Antwort auf eine der folgende Varianten absenden:

File Wiedergabe:

{
    "ivr_play": "ID"
}

где,

  • ivr_play – Der Wert aus der Spalte "ID" aus der Liste mit hochgeladene / vorgelesene Files für notwendigen File.

Einen gängigen Satz wiedergeben :

{
    "ivr_saypopular": 1,
    "language": "en"
}

где,

  • ivr_saypopular – Satznummer aus der Liste;

Die Zahlen wiedergeben:

{
    "ivr_saydigits": "12",
    "language": "en"
}

Eine Zahl wiedergeben (Mit Berücksichtigung den Regeln über Komplexe Zahlen):

{
    "ivr_saynumber": "123",
    "language": "en"
}

где,

  • language kann einen der folgende Werte annehmen: ru, en, es, pl;

Falls ivr_saydigits oder ivr_saynumber eingegeben wurde, in nächstem Vorgang NOTIFY_IVR wird Parameter eingefügt:

"ivr_saydigits": "COMPLETE" oder "ivr_saynumber": "COMPLETE"

In jeder eingegebener oben Anfrage kann eine Anfrage über Zahlenangabe von Abonnenten erscheinen:

{
    "wait_dtmf": {
        "timeout": TIMEOUT,
        "attempts": ATTEMPTS,
        "maxdigits": MAXDIGITS,
        "name": NAME,
        "default": DEFAULT,
    }
}

wo,

  • timeout - Wartezeit für Angabe in Sekunden;
  • attempts - Anzahl den Versuche für Zahlenangabe ;
  • maxdigits - Maximale Anzahl der Zahlen auf die gewartet wird;
  • name -Der Name für die Antwort;
  • default - Falls keine Zahl angegeben wurde, mögliche Werte:
    • id von Redirekt-Szenario (im Format 0-1, wo 0 - Sprachmenü-Nummer, 1 - Szenario-Nummer);
    • PBX-Menü im Format 0-main, wo 0 - id Menü;
    • Interne PBX-Nummer (Dreistellige Zahl);
    • hangup - Anruf beenden.

In nächstem Vorgang NOTIFY_IVR wird zusätzlich Parameter hinzugefügt:

{
  	"wait_dtmf": {
	    "name": NAME,
	    "digits": DIGITS,
	    "default_behaviour": "1"
    }
}

где,

  • name - Der Name aus letzte Antwort;
  • digits - Zahlen, die Abonnent angegeben hat;
  • default_behaviour - falls keinen Tastendruck erfolgt und Standardeinstellung eingeschaltet;

Anruf umleiten

{
    "redirect": ID,
    "return_timeout": TIMEOUT (kein Pflicht)
}

где,

  • redirect - id Redirekt-Szenario (im Format 0-1, wo 0 - Sprachmenü-Nummer, 1 - Szenario-Nummer); oder im Format 1, wo 1 - Szenario-Nummer Sprachmenü-Nummer ist in diesem Fall 0); oder PBX-Menü im Format 0-main, wo 0 - id Menü; oder interne PBX-Nummet (Dreistellige Zahl); oder "blacklist" - in diesem Fall wird der Anruf abgebrochen mit Belegzeichen;
  • return_timeout - Angabe in Sekunden. Mögliche Werte:
    • 0, Der Anruf kommt nicht zurück auf Menü;
    • >= 3 - Die Anruflänge auf Interne Nummer bevor der Anruf zurück auf Menü kommt

Anruf beenden:

{
    "hangup": 1
}

In jedem Antwort können Sie zusätzlich angeben:

Name für EingangsNummer definieren:

{
	"caller_name": NAME
}

где,

  • caller_name - Nummer-Name.

Liste den gängigen Sätzen (Nummerierung von 1):

Die Parameter die zum Benachrichtigung benötigt werden:

  • event – Vorgang (NOTIFY_INTERNAL)
  • call_start – Anruf Anfangszeit;
  • pbx_call_id – id des Anrufes;
  • caller_id – Nummer den Anrufer;
  • called_did – Zielrufnummer;
  • internal – (Optional) Interne Nummer.

Erstellung der Testunterschrift für die Benachrichtigung über Eingangsanrufe, Beispiel für PHP:

$signatureTest = base64_encode(hash_hmac('sha1', $_POST['caller_id'] . $_POST['called_did'] . $_POST['call_start'], API_SECRET));

Die Parameter die zum Benachrichtigung benötigt werden:

  • event – Vorgang (NOTIFY_ANSWER)
  • caller_id – Nummer den Anrufer;
  • destination – Zielrufnummer;
  • call_start – Anruf Anfangszeit;
  • pbx_call_id – id des Anrufes;
  • internal – (optional) interne Nummer .

Erstellung der Testunterschrift für die Benachrichtigung über Eingangsanrufe, Beispiel für PHP:

$signatureTest = base64_encode(hash_hmac('sha1', $_POST['caller_id'] . $_POST['destination'] . $_POST['call_start'], API_SECRET));

Die Parameter die zum Benachrichtigung benötigt werden:

  • event – Vorgang (NOTIFY_END)
  • call_start – Anruf Anfangszeit;
  • pbx_call_id – id des Anrufes;
  • caller_id – Nummer den Anrufer;
  • called_did – Zielrufnummer;
  • internal – (Optional) interne Nummer;
  • duration – Dauer in Sekunden;
  • disposition – Anrufstatus:
    • 'answered' – Gespräch,
    • 'busy' – Belegt,
    • 'cancel' - Abgebrochen,
    • 'no answer' - keine Antwort,
    • 'failed' - Fehlgeschlagen,
    • 'no money' - nicht genügender Betrag auf dem Konto, Limit überschritten,
    • 'unallocated number' - kein Anschluss unter dieser Nummer,
    • 'no limit' - Limit überschritten,
    • 'no day limit' - Tageslimit überschritten,
    • 'line limit' - Limit der Leitungen überschritten,
    • 'no money, no limit' - Limit überschritten;
  • last_internal – Interne Nummer, letzter Teilnehmer des Anrufs (nach Weiterleitung oder Call PickUp);
  • status_code – Statuscode des Anrufes Q.931;
  • is_recorded – 1 - Mit Gesprächsaufnahme, 0 - ohne Gesprächsaufnahme;
  • call_id_with_rec – id Des Anrufer mit Gesprächsaufnahme (Wir empfehlen den File mit Aufnahme nicht früher als in 40 Sekunden nach der Benachrichtigung runterzuladen da zu Speichern des Files bestimmte Zeit benötigt wird).

Erstellung der Testunterschrift für die Benachrichtigung über Eingangsanrufe, Beispiel für PHP:

$signatureTest = base64_encode(hash_hmac('sha1', $_POST['caller_id'] . $_POST['called_did'] . $_POST['call_start'], API_SECRET));

Die Parameter die zum Benachrichtigung benötigt werden:

  • event – Vorgang (NOTIFY_OUT_START)
  • call_start – Anruf Anfangszeit;
  • pbx_call_id – id des Anrufes;
  • destination – Zielrufnummer;
  • caller_id – Nummer, die an interner PBX-Nummer eingestellt ist oder in den Regeln für die Anrufe nach Zielrichtung. Falls keine Einstellungen dann 0;
  • internal – (optional) interne Nummer.

Erstellung der Testunterschrift für die Benachrichtigung über Eingangsanrufe, Beispiel für PHP:

$signatureTest = base64_encode(hash_hmac('sha1', $_POST['internal'] . $_POST['destination'] . $_POST['call_start'], API_SECRET));

Die Parameter die zum Benachrichtigung benötigt werden:

  • event – Vorgang (NOTIFY_OUT_END)
  • call_start – Anruf Anfangszeit;
  • pbx_call_id – id des Anrufes;
  • caller_id – Nummer, die an interner PBX-Nummer eingestellt ist oder in den Regeln für die Anrufe nach Zielrichtung. Falls keine Einstellungen dann 0;
  • destination – Zielrufnummer;
  • internal – (optional) interne Nummer;
  • duration – Dauer in Sekunden;
  • disposition – Anrufstatus:
    • 'answered' – Gespräch,
    • 'busy' – Belegt,
    • 'cancel' - Abgebrochen,
    • 'no answer' - keine Antwort,
    • 'failed' - Fehlgeschlagen,
    • 'no money' - nicht genügender Betrag auf dem Konto, Limit überschritten,
    • 'unallocated number' - kein Anschluss unter dieser Nummer,
    • 'no limit' - Limit überschritten,
    • 'no day limit' - Tageslimit überschritten,
    • 'line limit' - Limit der Leitungen überschritten,
    • 'no money, no limit' - Limit überschritten;
  • status_code – Statuscode des Anrufes Q.931;
  • is_recorded – 1 - Mit Gesprächsaufnahme, 0 - ohne Gesprächsaufnahme;
  • call_id_with_rec – id Des Anrufer mit Gesprächsaufnahme (Wir empfehlen den File mit Aufnahme nicht früher als in 40 Sekunden nach der Benachrichtigung runterzuladen da zu Speichern des Files bestimmte Zeit benötigt wird).

Erstellung der Testunterschrift für die Benachrichtigung über Eingangsanrufe, Beispiel für PHP:

$signatureTest = base64_encode(hash_hmac('sha1', $_POST['internal'] . $_POST['destination'] . $_POST['call_start'], API_SECRET));

Die Parameter die zum Benachrichtigung benötigt werden:

  • event – Vorgang (NOTIFY_RECORD)
  • call_id_with_rec – ID des Anrufes mit Gesprächsaufnahme;
  • pbx_call_id – Fix-ID des externen Anrufes an PBX (wird bei Durchgehen über die Szenarien, Sprachmenüs, Transfer usw. nicht geändert. Wird in Statistik und Benachrichtigungen angezeigt).

Erstellung der Testunterschrift für die Benachrichtigung über Eingangsanrufe, Beispiel für PHP:

$signatureTest = base64_encode(hash_hmac('sha1', $_POST['pbx_call_id'] . $_POST['call_id_with_rec'], API_SECRET));

Die Parameter die zum Benachrichtigung benötigt werden:

  • event – Vorgang (NOTIFY_IVR)
  • call_start – Anruf Anfangszeit;
  • pbx_call_id – id des Anrufes;
  • caller_id – Nummer den Anrufer;
  • called_did – Zielrufnummer.

Erstellung der Testunterschrift für die Benachrichtigung über Eingangsanrufe, Beispiel für PHP:

$signatureTest = base64_encode(hash_hmac('sha1', $_POST['caller_id'] . $_POST['called_did'] . $_POST['call_start'], API_SECRET));

Die mögliche Antworten sind ähnlich den Antworten NOTIFY_START

Parámetros que se envían al enlace de notificaciones:

  • event – Ereignis (SPEECH_RECOGNITION)
  • lang – Sprache;
  • result:
    • words - Gruppe:
      • result - Wortliste (Gruppe):
        • s - Wortstartzeit
        • e - Wortendzeit
        • w - Wort
      • channel - Kanal Nummer
    • phrases - Gruppe:
      • result - Phrase
      • channel - Kanal Nummer

Den Link für Benachrichtigungen können Sie in Menü-Punkt "API" definieren.

Damit das System Ihren Link annimmt, müssen Sie einen Prüfungscode am Anfang des Script hinzufügen.

Beispiel für PHP:

<?php if (isset($_GET['zd_echo'])) exit($_GET['zd_echo']); ?>

Für Ihre Sicherheit, empfehlen wir den Zugang zu Ihrem Link nur von IP 185.45.152.42 erlauben.

Auch wenn Sie API - Keys ausgestellt haben, bei jeder Anfrage werden Sie zusätzlichen Überschrift "Signature" erhalten, womit Sie genauso ihre Daten überprüfen können.

Ein Beispiel für Script können Sie hier ansehen.

Sonstige Benachrichtigungen:

Der Parameter "result" in diesen Benachrichtigungen ist im JSON-Format gespeichert. Da er ähnliche Aufgaben wie XML erfüllt, können Sie diese Meldungen im XML-Format erhalten, sobald Sie den Parameter eingegeben haben format=xml.

  • NUMBER_LOOKUP
    Bericht über Nummerprüfung.
  • CALL_TRACKING
    Auskunft über eingehende Anrufe auf die Nummern, die für Call-Tracking aktiviert sind.
  • SMS
    Information über empfangene SMS.

Die Parameter die zum Benachrichtigung benötigt werden:

  • event – Vorgang (NUMBER_LOOKUP)
  • success – Erfolgskennzeichen nach der Prüfung;
  • description – Textliche Beschreibung des Status einer vollständigen Prüfung;
  • result – Berichtsdaten ;
    • number – geprüfte Nummer;
    • mcc – Landesvorwahl für Mobilfunknetz;
    • mnc – Vorwahl für Mobilfunk;
    • ported – Merkmal für Wechsel des Anbieters;
    • roaming – Merkmal für Roaming;
    • error – Fehlerstatus;
    • errorDescription – Textliche Beschreibung des Fehlers;
    • mccName – Name eines Landes;
    • mncName – Name eines Anbieters;

Erstellung der Testunterschrift :

$signatureTest = base64_encode(hash_hmac('sha1', $_POST['result'], API_SECRET));

wird einmal pro 15 Minuten gesendet, beim Vorliegen neuer Anrufe.

Die Parameter die zum Benachrichtigung benötigt werden:

  • event – Vorgang (CALL_TRACKING)
  • result - Menge
    • tracker - ID-Tracker (können Sie auf der Webseite der Code-Einstellung nachsehen);
    • start - Anruf Anfangszeit; ;
    • duration - Gesprächsdauer in Sekunden;
    • caller_id - Nummer den Anrufer;
    • caller_did - Zielrufnummer;
    • country - (Optional) Land, aus welchem der Anruf kommt;
    • ga_id - (Optional) Benutzer-ID in Google Analytics;
    • metrika_id - (Optional) Benutzer-ID in Yandex Metrica;
    • url - Die Adresse der Seite, von der aus der Anruf getätigt wurde;
    • utm_source, utm_medium, utm_campaign, utm_term, utm_content - (optional, wenn beim Aufrufen der Site utm-Tags angegeben wurden) utm-Tags, mit denen der Besucher die Site zum letzten Mal besucht hat;
    • first_utm - (optional, wenn beim ersten Übergang zur Site utm-Tags angegeben wurden, die sich von denen unterscheiden, die bei der Übergang zuletzt angegeben wurden) Eine Gruppe mit den oben angegebenen utm-Tags, mit dem Besucher zum ersten Mal die Site besucht hat.

Erstellung der Testunterschrift für die Benachrichtigung:

$signatureTest = base64_encode(hash_hmac('sha1', $_POST['result'], API_SECRET));