API-Navigation

Einführung


Das API-Interface ist komplett kostenlos und für alle Benutzerkonten bei Zadarma verfügbar

Link auf API
API-Version
v1
Endlink auf Methoden
https://api.zadarma.com/v1/METHOD/

Bibliotheken

Laden Sie vorgefertigte Klassen für die Arbeit mit dem API herunter

Im API sind alle Basisfunktionen vorhanden:

  • Telefonie und virtuelle Rufnummern
  • PBX und Teamsale CRM
  • SMS- und HLR-Abfragen
  • Calltracking
  • Spracherkennung

Anmeldung

Jede Anfrage, bei der eine Authentifizierung benötigt wird, wird von einem zusätzlichen Header in folgender Form begleitet:
"Authorization: Schlüssel_des_Benutzers: Signatur"

Die Autorisierungsschlüssel erhalten Sie in Ihrem Benutzerkonto.

Die Signatur wird wie folgt erstellt:

  • das Datenfeld aus den weiterzuleitenden Parametern (GET, POST, PUT, DELETE) wird gemäß dem Namen des Schlüssels alphabetisch sortiert;
  • aus dem erhaltenen Datenfeld wird die Anfragezeile erstellt (z.B. die Funktion http_build_query in PHP), Beispiel: "from=DATEFROM&to=DATETO…";
  • und anschließend gemäß dieser Formel verbunden: Zeile = Name_der_Methode Anfragezeile md5 (Anfragezeile), wobei "Name_der_Methode" eine Anfragezeile ist, beginnend don der Domäne (mit Angabe der API-Version) bis zur Aufzählung der Parameter, z.B. '/v1/sip/'
  • die erhaltene Zeile wird mithilfe des sha1-Algorithmus mit dem geheimen Schlüssel des Benutzers gehasht: Hash = hash (Zeile, geheimer_Schlüssel)
  • und dann wird der Hash in base64 kodiert Unterschrift = base64_encode( hash )

                                    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;

Eine bereite PHP-Klasse für die Arbeit mit dem API können Sie in GitHub herunterladen.

Formate der Antwort: JSON (standardmäßig) und XML.

Um eine Antwort vom API in XML-Datei zu bekommen, wird in der Anfragezeile der Parameter "format=xml" hinzugefügt.

Beschränkungen

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

In der Antwort sind auch Informationen über Beschränkungen und die aktuelle Anfrage enthalten, beispielsweise:

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

wo,

  • X-Zadarma-Method - aktuell aufgerufene Methode;
  • X-RateLimit-Remaining - Anzahl der Anfragen, die noch gesendet werden können, unter Berücksichtigung von Beschränkungen für die Methode und den Benutzer;
  • X-RateLimit-Limit - Anfragelimit pro Minute;
  • X-RateLimit-Reset - Zeit bis zur Zurücksetzung des Limits.

Allgemeine Beschränkungen: 100 Anfragen pro Minute, bei Methode für die Statistik 10 Anfragen pro Minute.

Im Falle einer Blockierung gibt die Methode eine Antwort mit dem Code 429 "You exceeded the rate limit" zurück.

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

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

Alle Antworten enthalten ebenfalls die entsprechenden HTTP-Header.

Bitte beachten: Wenn Sie stets eine aktuelle PBX-Statistik benötigen, dann bitte nicht jede Minute eine Anfrage schicken. Aktivieren Sie Webhook-Benachrichtigungen und erhalten Sie Informationen zu jedem Anruf, sobald er beginnt und endet.

Methoden

get /v1/info/balance/

Kontostand (Guthaben) des Benutzers

                                    {
    "status":"success", 
    "balance":10.34, 
    "currency":"USD"
}

get /v1/info/price/

Anrufkosten gemäß dem aktuellen Tarif des Benutzers

                                    {
    "status":"success",
    "info": {
        "prefix":"4420",
        "description":"United Kingdom, London",
        "price":"0.009",
        "currency":"USD",
    }
}

Parameter:

  • number – Rufnummer;
  • caller_id (optional) – Beim Anruf verwendete CallerID


get /v1/info/timezone/

Zeitzone des Benutzers

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

get /v1/tariff/

Informationen über den aktuellen Tarif

                                    {
    "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
    }
}

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 ;
  • used_seconds_speech_recognition – Anzahl der verwendeten Tarifsekunden für die Spracherkennung;
  • 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.

get /v1/request/callback/

Callback

                                    {
    "status":"success", 
    "from":442037691880, 
    "to":442037691881, 
    "time":1435573082
}

Parameter:

  • from – Ihre Telefonnummer oder SIP-Nummer, oder interne PBX-Nummer, oder Szenarionummer (im Format 0-1, wobei 0 die Sprachmenünummer ist, 1 die 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);

post /v1/sms/send/

SMS-Versand

                                    {
    "status":"success",
    "messages":1,
    "cost":0.24,
    "currency":"USD",
    "sms_detalization":[
        {
            "senderid":"xxxxxxxxxxx",
            "number":"1234567890",
            "cost":0.06
        }
    ],
    "denied_numbers":[
        {
            "number":"1234567890",
            "message":"The reason for the SMS not being sent to the number"
        }
    ]
}

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);
  • sender – (optional) SMS-Absender (virtuelle Nummer oder Text), die Liste der verfügbaren Werte kann mit der Methode GET /v1/sms/senderid/ erhaltet werden.
  • Beachten Sie bitte, dass SMS-Nachrichten können nur außerhalb der Russischen Föderation versandt werden.

get /v1/sms/templates/

Erhalt der Liste von Vorlagen für SMS

                                    {
"list": [
    {
        "cath_id":"1",
         "title":"The name of the template category",
        "templates": [
            {
                "id":"1",
                "text":"The template text with a variable {$var}"
            },
            {
                "id":"2",
                "text":"Second template text"
            },
        ]
    }
]
}

Parameter

  • skip – (optional) Anzahl an Vorlagen, die vor der Auswahl übersprungen werden sollen, standardmäßig 0;
  • limit – (optional) Anzahl an Vorlagen, die ausgegeben werden sollen (standardmäßig 25, maximal 1000);
  • language – (optional) Sprache der globalen SMS-Vorlagen. Wenn die Sprache nicht angegeben wird, dann wird die Sprache benutzt, die im Benutzerprofil ausgewählt ist.

get /v1/sms/senderid/

Liste der verfügbaren Sendernummern für SMS auf die angegebene Rufnummer

                                    {
    "senders": ["Teamsale", "1234567890"]
}

Parameter

  • phones – Rufnummer, für die die verfügbaren Sendernummern erhalten werden soll.

get /v1/request/checknumber/

Nummernbestätigung

                                    {
    "status":"success",
    "from":442037691880,
    "to":442037691881,
    "lang":"fr",
    "time":1612779278
}

Parameter

  • caller_id - die beim Anruf angezeigte Nummer, können nur bei Zadarma aktivierte Nummern verwendet werden,
  • to - die angerufene Telefonnummer oder SIP ,
  • code - der zu spielende Code. Nur Zahlen und nicht länger als 20 Zeichen,
  • lang - Sprache des Textes. Wenn nicht festgelegt, wird die Sprache des Kundenkontos übernommen und auf das Vorhandensein bei Systemsprachen überprüft.

post /v1/info/number_lookup/

Kontakte aktualisieren

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:

(Antwort 1)

                                    Antwort 1:
{ "status":"success", "info":{ "mcc":"24702", "mnc":"02", "mccName":"Latvia", "mncName":"Tele2", "ported":false, "roaming":false, "errorDescription":"No Error" } }

Beispielantwort auf mehrere Nummern:

(Antwort 2)

                                    Antwort 2:
{ "status":"success" }

Beispielergebnis, die auf die angegebene Adresse gesendet wurde:

(Antwort 3)

                                    Antwort 3:
{ "success":true, "description":"Success", "result": [ { "mcc":"24702", "mnc":"02", "ported":false, "roaming":false, "errorDescription":"No Error", "mccName":"Latvia", "mncName":"Tele2", "number":"3712812858", }, ... ] }

get /v1/info/lists/currencies/

Liste der Währungen

                                    {
    "status": "success",
    "currencies": [
        "USD",
        "EUR",
        "GBP",
        "PLN"
    ]
}

get /v1/info/lists/languages/

Liste der verfügbaren Sprachen im Account

                                    {
    "status": "success",
    "languages": [
        "en",
        "es",
        "de",
        "pl",
        "ru",
        "ua",
        "fr"
    ]
}

get /v1/info/lists/tariffs/

Liste der Tarife

                                    {
    "status": "success",
    "currency": "EUR",
    "tariffs": [
        {
            "tariff_id": 5,
            "name": "Standard",
            "cost": 0,
            "days": "30"
        },
        ...
    ],
    "package_tariffs": [
        {
            "id": 1,
            "name": "EU",
            "tariffs": [
                {
                    "tariff_id": 23,
                    "name": "Office",
                    "cost": 22,
                    "cost_annual": 216
                },
                ...
            ]
        },
        ...
    ]
}

Parameter:

  • currency – Währung

SIP

get /v1/sip/

alle SIP-Nummern des Benutzers

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

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).

get /v1/sip/<SIP>/status/

SIP-Nummern des Benutzers in On-Line Status

                                    {
    "status":"success",
    "sip":"00001",
    "is_online":"false"
}

put /v1/sip/callerid/

CallerID ändern

                                    {
    "status":"success",
    "sip":"00001",
    "new_caller_id":"442037691880"
}

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).

get /v1/sip/redirection/

Aktuelle Anrufweiterleitungen nach SIP-Nummern des Benutzers

                                    {
    "status":"success",
    "info": [
        {
            "sip_id":"00001",
            "status":"on",
            "condition":"always",
            "destination":"phone",
            "destination_value":"442037691880"
        },
    ...
    ]
}

Parameter:

  • id – (optional) Auswahl der bestimmte SIP.

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.

put /v1/sip/redirection/

Weiterleitung nach SIP: an / aus

                                    {
    "status":"success",
    "sip":"00001",
    "current_status":"on"
}

Parameter:

  • id – SIP id;
  • status –Status der Weiterleitung auf definierte SIP-Nummer.

put /v1/sip/redirection/

Änderung den Parametern

                                    {
    "status":"success",
    "sip":"00001",
    "destination":"442037691880"
}

Parameter:

  • id – SIP id;
  • type – Typ der Weiterleitung: phone – Auf Telefon;
  • number – Telefonnummer;
  • condition – optionaler Parameter, Bedingung der Anrufweiterleitung (always - immer, unavailable - falls der Anruf auf dem Softphone, dem jeweiligen Gerät über die SIP-Verbindung nicht angenommen werden kann).

post /v1/sip/create/

Erstellung einer SIP-Nummer

                                    {
    "status": "success",
    "sip": "123456"
}

Parameter

  • name - angezeigter Name;
  • password - Passwort;
  • callerid - Nummer für die CallerID;
  • redirect_to_phone - optionaler Parameter, Anrufweiterleitung über SIP auf eine Telefonnummer;
  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.

put /v1/sip/<SIP>/password/

Passwortänderung für SIP

Parameter

                                    {
    "status":"success",
    "sip":$sip,
}

  • value - neues Passwort;
  • user_id - optionaler Parameter, der nur von Händlern und nur für die Benutzer, die von ihnen erstellt wurden, verwendet werden kann.

Statistik

get /v1/statistics/

Allgemeine Statistik erhalten

(Antwort 1)

                                    Antwort 1:
{ "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" }, … ] }

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.

?type=cost_only:

(Antwort 2)

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

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,
    • 'call 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.

get /v1/statistics/pbx/

PBX-Statistik

Achtung: Wenn Sie Ihre PBX-Statistiken auf dem neuesten Stand halten wollen, müssen Sie die Methode statistics/pbx/ nicht jede Minute abfragen. Aktivieren Sie Webhook-Benachrichtigungen und erhalten Sie Informationen über jeden Anruf, sobald er beginnt und endet.

                                    {
    "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"
        },
        …
    ]
}

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.

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,
    • 'call 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.

get /v1/statistics/callback_widget/

Callback-Statistik (Widget)

                                    {
    "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"
                }
            ]
        },
        ...
    ]
}

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.

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').

get /v1/statistics/incoming-calls/

Allgemeine Statistiken über eingehende Anrufe erhalten.

                                    {
    "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,
            "billseconds":0,
            "disposition":"busy",
            "description":"United Kingdom, London"
        },
        …
    ]
}

Parameter

  • start - Anfangsdatum der Anzeige der Statistik (Format - YYYY-MM-DD HH:MM:SS);
  • end - Enddatum der Anzeige der Statistik (Format - YYYY-MM-DD HH:MM:SS);
  • sip (Optional) - Filter nach bestimmten SIP-Login;
  • skip (optional - wird nicht berücksichtigt, wenn der Parameter cost_only festgelegt ist) - Anzahl der Zeilen, die bei der Auswahl übersprungen werden sollen, die Ausgabe beginnt mit dem skip + 1 (wird für die Paginierung zusammen mit dem Parameter limit verwendet, standardmäßig gleich 0);
  • limit (optional - wird nicht berücksichtigt, wenn der Parameter cost_only festgelegt ist) - Begrenzung für die Anzahl der Ausgabezeilen (wird für die Paginierung zusammen mit dem Parameter skip verwendet, maximaler Wert ist 1000, standardmäßig - 1000).

Der maximale Zeitraum für den Abruf von Statistiken ist ein Monat. Im Falle einer Limitüberschreitung in der Anfrage - wird die Frist automatisch auf 30 Tage reduziert. Wenn kein Startdatum angegeben wird, wird der Anfang des aktuellen Monats gewählt. Wenn kein Enddatum angegeben wird, wird die Erfassung durch das aktuelle Datum und die aktuelle Uhrzeit begrenzt.

Die maximale Anzahl der ausgegebenen Zeilen дfür eine Anfrage beträgt 1000. Verwenden Sie skip und limit Parameter für die Paginierung.

Wo:

  • start – Anfangsdatum der Anzeige der Statistik;
  • end – Enddatum der Anzeige der Statistik;
  • id – Anruf ID;
  • sip – SIP-Login;
  • callstart – Anrufstartzeit;
  • from – Von welcher Nummer aus wurde der Anruf getätigt;
  • to – An welche Nummer wurde der Anruf getätigt;
  • billseconds – Gesprächsdauer in Sekunden;
  • disposition – Anrufstatus:
    • 'answered' – Gespräch,
    • 'busy' – Belegt,
    • 'cancel' - Abgebrochen,
    • 'no answer' - Keine Antwort ,
    • 'failed' - Fehlgeschlagen,
    • 'no money' - keine Guthaben, Limit überschritten,
    • 'unallocated number' - Die Nummer existiert nicht,
    • 'no limit' - Limit überschritten,
    • 'no day limit' - Tageslimit überschritten,
    • 'line limit' - Leitungslimit überschritten,
    • 'no money, no limit' - Limit überschritten;
  • description – Aufrufrichtungsbeschreibung.

PBX

post /v1/pbx/redirection/

Änderung von Parametern für die Anrufweiterleitung auf einer internen Nummer der PBX

                                    {
    "status":"success",
    "current_status":"on",
    "pbx_id":"1234",
    "pbx_name":"100",
    "type":"phone",
    "destination":"79123456789",
    "condition":"noanswer"
}

Parameter:

Für die Aktivierung und Einrichtung einer Anrufweiterleitung:

  • pbx_number – interne Nummer in der PBX, beispielsweise 100;
  • status – on;
  • type – Typ der Weiterleitung: voicemail oder phone;
  • destination – Rufnummer oder E-Mail-Adresse, in Abhängigkeit des vorherigen Parameters;
  • condition – Bedingung der Weiterleitung, mögliche Werte: always oder noanswer;
  • voicemail_greeting – Benachrichtigung über die Anrufweiterleitung, mögliche Werte: no, standart, own. Wir nur bei type = voicemail angegeben;
  • greeting_file – Audiodatei für die Begrüßung im Format mp3 oder wav bis 5 MB. Wir nur beim Typ type = voicemail und voicemail_greeting = own angegeben;

Für die Deaktivierung einer Anrufweiterleitung:

  • pbx_number – interne Nummer in der PBX, beispielsweise 100;
  • status – off;

get /v1/pbx/redirection/

Erhalt der Parameter für die Anrufweiterleitung auf einer internen Nummer der PBX

                                    {
    "status":"success",
    "current_status":"on",
    "pbx_id":"1234",
    "pbx_name":"100",
    "type":"phone",
    "destination":"79123456789",
    "condition":"noanswer",
}

Parameter:

  • pbx_number – interne Nummer in der PBX, beispielsweise 100;

get /v1/pbx/record/request/

Anfrage über die Aufnahmedatei

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.

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

(Antwort 1)

                                    Antwort 1:
{ "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:

(Antwort 2)

                                    Antwort 2:
{ "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" }

Parameter:

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

post /v1/pbx/waitmelody/upload

Hochladen der Wartemelodie

Parameter

  • file - die Datei

put /v1/pbx/waitmelody/switch

Wartemelodie der PBX ein-/ausschalten

Parameter

  • state - Zustand (on - eingeschalten, off - ausgeschalten);
  • melody - Typ der Melodie (none - standardgemäß ohne Melodie, mymelody - Vorher hochgeladene Melodie des Benutzers).

delete /v1/pbx/waitmelody/delete

Wartemelodie löschen

get /v1/pbx/callinfo/

Anzeige der Einstellungen aus pbx call info

                                    {
    "status": "success",
    "url": "",
    "notifications": {
        "notify_start": "true",
        "notify_internal": "false",
        "notify_end": "true",
        "notify_out_start": "false",
        "notify_out_end": "false",
        "notify_answer": "false"
    }
}

Parameter:

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.

post /v1/pbx/callinfo/url/

Änderung der URL für pbx call info

                                    {
    "status": "success",
    "url": ""
}

Параметры:

  • url - Link;
  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.

post /v1/pbx/callinfo/notifications/

Änderung der Reaktion auf NOTIFY_*-Anfragen für pbx call info

                                    {
    "status": "success",
    "notifications": {
        "notify_start": "true",
        "notify_internal": "false",
        "notify_end": "true",
        "notify_out_start": "false",
        "notify_out_end": "false",
        "notify_answer": "false"
    }
}

Parameter:

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden;
  • notify_start - "true" oder "false", optionaler Parameter;
  • notify_internal - "true" oder "false", optionaler Parameter;
  • notify_end - "true" oder "false", optionaler Parameter;
  • notify_out_start - "true" oder "false", optionaler Parameter;
  • notify_out_end - "true" oder "false", optionaler Parameter;
  • notify_answer - "true" oder "false", optionaler Parameter.

delete /v1/pbx/callinfo/url/

Löschung der URL für pbx call info

                                    {
    "status": "success",
    "url": ""
}

Parameter:

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.

post /v1/pbx/create/

Erstellung der PBX

                                    {
    "status": "success",
    "stop_datetime": "2021-12-31 23:59:59"
}

Parameter:

  • sip_id - SIP-Nummer zum Anschluss der PBX, falls dieser Parameter nicht angegeben, dann wird eine freie SIP-Nummer gewählt (optionaler Parameter);
  • password - Passwort für die erste interne Nummer der PBX (100);
  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.

get /v1/pbx/webhooks/

Einstellungen für pbx webhooks erhalten

                                    {
    "status": "success",
    "url": "",
    "hooks": {
        "number_lookup": "true",
        "call_tracking": "false",
        "sms": "true",
        "speech_recognition": "true"
    }
}

Parameter:

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.

post /v1/pbx/webhooks/url/

Änderung der URL für pbx webhooks

                                    {
    "status": "success",
    "url": ""
}

Parameter:

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden;
  • url - Link.

post /v1/pbx/webhooks/hooks/

Änderung der Reaktion auf Ereignisse für pbx webhooks

                                    {
    "status": "success",
    "hooks": {
        "number_lookup": "true",
        "call_tracking": "false",
        "sms": "true",
        "speech_recognition": "true"
    }
}

Parameter:

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden;
  • number_lookup - "true" oder "false", optionaler Parameter;
  • call_tracking - "true" oder "false", optionaler Parameter;
  • sms - "true" oder "false", optionaler Parameter;
  • speech_recognition - "true" oder "false", optionaler Parameter;

delete /v1/pbx/webhooks/url/

Löschung der URL für pbx webhooks

                                    {
    "status": "success",
    "url": ""
}

Parameter:

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.

PBX (interne Nummern)

get /v1/pbx/internal/

Anzeige der internen PBX-Nummern

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

wo

  • pbx_id – ID der Benutzer-PBX;
  • numbers – Liste der internen Nummern.

get /v1/pbx/internal/<PBXSIP>/status/

Interne PBX-Nummer mit On-Line Status

                                    {
    "status":"success",
    "pbx_id":1234,
    "number":100,
    "is_online":"false"
}

wo

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

get /v1/pbx/internal/<PBXSIP>/info/

Informationen über die interne PBX-Nummer

                                    {
    "status": "success",
    "pbx_id": 12345,
    "number": 100,
    "name": "Extension 100",
    "caller_id": "+44000000000",
    "caller_id_app_change": "true",
    "caller_id_by_direction": "false",
    "lines": "3",
    "ip_restriction": "1.1.1.1",
    "record_store": "For automatic speech recognition",
    "record_email": "email@server.com",
    "supervisor_status": 1
}

Wo:

  • pbx_id – PBX-id;
  • number – Interne PBX-Nummer;
  • name – Anzeigename;
  • caller_id – CallerID;
  • caller_id_app_change – Änderung der CallerID aus der Anwendung (true|false);
  • caller_id_by_direction – CallerID nach Anrufrichtung (true|false);
  • lines – Anzahl der Leitungen;
  • ip_restriction – ip-Zugriffsbeschränkung (false, wenn nicht aktiviert);
  • record_store – Gesprächsaufzeichnung in der Cloud (Without recognition|For manual recognition|For automatic speech recognition|false);
  • record_email – E-Mail für das Senden von Gesprächsaufzeichnungen (false, wenn nicht aktiviert).

put /v1/pbx/internal/recording/

Gesprächsaufnahme auf interner PBX-Nummer aktivieren

                                    {
    "status":"success",
    "internal_number":100,
    "recording":"on",
    "email":"test@test.com",
    "speech_recognition":"all"
}

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;
  • speech_recognition – (optional) Änderung der Spracherkennungseinstellungen: "all" - alle erkennen, "optional" - selektiv in Statistiken erkennen, "off" - deaktivieren.

post /v1/pbx/internal/create/

Erstellung von internen Nummer der PBX

                                    {
    "status": "success",
    "numbers": [
        {
            "number": 200,
            "password": "PASSWORD"
        },
        {
            "number": 201,
            "password": "PASSWORD"
        }
    ]
}

Parameter:

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.
  • start_number - Nummer von 100 bis 999, von der die Erstellung begonnen werden soll oder "any", falls die erste Nummer zufällig von 100 bis 999 zufällig gewählt werden soll;
  • quantity - Anzahl an zu erstellenden internen Nummern;
  • return_password - optionaler Parameter, falls 'true' angegeben wird, dann werden in der Antwort die Passwörter der neu erstellten internen Nummern angegeben.

get /v1/pbx/internal/<SIP>/password/

Anfrage des Passworts der internen Nummer der PBX, das Passwort ist nur zeitlich begrenzt sichtbar

Parameter:

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.

Beispiel einer Antwort:

                                    {
    "status": "success",
    "pbx_id": 114,
    "number": 200,
    "password": "PASSWORD"
}

где

  • password - kann als "hidden" angezeigt werden, falls das Passwort nicht mehr sichtbar ist

put /v1/pbx/internal/<SIP>/password/

Änderung des Passworts einer internen Nummer

                                    {
    "status": "success",
    "pbx_id": 114,
    "number": 200
}

Parameter:

  • value - neues Passwort;
  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.

put /v1/pbx/internal/<SIP>/edit/

Änderung einer internen Nummer in der PBX

Parameter

  • supervisor_status - Superisor-Status, 0 - deaktiviert, 1 - aktiviert;
  • user_id - optionaler Parameter, verfügbar für Dealer und Benutzer, die von Dealern erstellt wurden.

PBX (IVR-Menüs)

get /v1/pbx/ivr/sounds/list

Liste der Dateien im Speicher der PBX

post /v1/pbx/ivr/sounds/upload

Datei hochladen

Parameter:

  • name - Name der Datei,
  • file - die Datei selbst.

delete /v1/pbx/ivr/sounds/delete

Löschung einer Datei gemäß der ID

Parameter:

  • id - ID der Datei

get /v1/pbx/ivr/

Auflistung der IVR_Menüs

                                    {
    "status": "success",
    "pbx_id": 114,
    "ivrs": [
        {
            "menu_id": "0",
            "title": "",
            "type": "file",
            "status": "on",
            "waitexten": 5,
            "auto_responder": {
                "status": "on",
                "waitexten": 1,
                "working_days": [
                    {
                        "day": "mon",
                        "is_active": true,
                        "begin": {
                            "hour": 9,
                            "minute": 0
                        },
                        "end": {
                            "hour": 18,
                            "minute": 0
                        }
                    },
                    {
                        "day": "tue",
                        "is_active": true,
                        "begin": {
                            "hour": 9,
                            "minute": 0
                        },
                        "end": {
                            "hour": 18,
                            "minute": 0
                        }
                    },
                    ...
                    {
                        "day": "sun",
                        "is_active": false
                    }
                ]
            },
            "dinner_status": "on",
            "dinner_time": {
                "begin": {
                    "hour": 12,
                    "minute": 0
                },
                "end": {
                    "hour": 13,
                    "minute": 0
                }
            }
        },
        {
            "menu_id": "1",
            "title": "Menu 1",
            "type": "readtext",
            "status": "off",
            "waitexten": 5,
            "auto_responder": {
                "status": "off",
                "waitexten": 1
            }
        },
        ...
    ]
}

Parameter:

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.

post /v1/pbx/ivr/create/

IVR-Menü erstellen

                                    {
    "status": "success",
    "menu_id": 2
}

Parameter:

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.
  • buy - 'true' - kostenpflichtige Erstellung eines Menüs.

delete /v1/pbx/ivr/delete/

IVR-Menü löschen

                                    {
    "status": "success"
}

Parameter:

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden;
  • menu_id - muss größer als 0 sein.

get /v1/pbx/ivr/scenario/

Auflistung der IVR-Szenarien

                                    {
    "status": "success",
    "scenarios": [
        {
            "id": "132",
            "title": "-1",
            "push_button": -1,
            "first_sips": [
                "102"
            ],
            "second_sips": [],
            "second_sips_delay": 10,
            "third_sips": [],
            "third_sips_delay": 20
        },
        ...
    ]
}

Parameter:

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden;
  • menu_id - ID des IVR-Menüs.

post /v1/pbx/ivr/scenario/create/

Erstellung eines IVR-Szenarios

                                    {
    "status": "success",
    "menu_id": 0,
    "scenario_id": 2
}

Parameter:

  • push_button - Szenario-Aktivierung bei Tastendruck: wenn der Anrufer keine Tasten drückt, wird das Szenario "Ohne Tastendruck" aktiviert. Knopf 0-9 - Tasten, 10 - Voicemail, 11-30 - Zusatzszenarien;
  • title - Name des Szenarios;
  • extension - interne Nummer, Nummer nach Leerzeichen oder "fax";
  • menu_id - ID des IVR-Menüs;
  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.
  • trigger_to_did_ext_lines - optionaler Parameter . Es gibt an, während Anrufen zu welchen Nummern das Szenario ausgelöst wird. Es kann eine einzelne Nummer oder eine Liste von Nummern sein, die durch Leerzeichen getrennt sind.
  • trigger_from_clid_numbers - optionaler Parameter. Es gibt an, von welchen Nummern das Szenario während Anrufen ausgelöst wird. Es kann eine einzelne Nummer oder eine Liste von Nummern sein, die durch Leerzeichen getrennt sind

put /v1/pbx/ivr/scenario/edit/

Änderung des IVR-Szenarios

Körper der PUT-Anfrage:

(Antwort 1)

                                    Antwort 1:
[ "id": "630cb6b3dc666e947503a77a", "title": "Scenario 1", "queue_strategy": "off", "queue_announce_position": 0, "numbers": [ [ "number": 100, "delay": 0, "duration": 20 ], [ "number": 101, "delay": 20, "duration": 20 ], [ "number": 102, "delay": 40, "duration": 20 ], ] ]

Beschreibung:

  • id - ID des Szenarios;
  • title - Name;
  • queue_strategy - Strategie für die Verteilung von Anrufen zwischen den internen Nummern in der Warteschlange (off, random, roundrobin, leastrecent, rrmemory, fewestcalls)
  • queue_announce_position - Platz in der Warteschlange mitteilen
  • numbers - Block aller internen Nummern
    • Einstellungen für die Verzögerung und Dauer des Anrufs auf interne Nummern:
    • number - interne Nummer oder „fax“;
    • delay - Verzögerung des Anrufs in Sekunden
    • duration - Dauer des Anrufs in Sekunden

Beschreibung der Strategien für die Verteilung von Anrufen zwischen den internen Nummern in der Warteschlange:

  • off - Warteschlange nicht aktiviert
  • random - Anrufe werden im Zufallsprinzip verteilt
  • roundrobin - Anrufe werden gleichmäßig verteilt, Priorität für Mitarbeiter, die lange nicht gesprochen haben, alle Anrufe werden berücksichtigt
  • leastrecent - Anrufe werden gleichmäßig verteilt, Priorität für Mitarbeiter, die lange nicht gesprochen haben, nur beantwortete Anrufe werden berücksichtigt
  • rrmemory - Anrufe werden gleichmäßig verteilt, Priorität für Mitarbeiter, die wenig sprechen, alle Anrufe werden berücksichtigt
  • fewestcalls - Anrufe werden gleichmäßig verteilt, Priorität für Mitarbeiter, die wenig sprechen, nur beantwortete Anrufe werden berücksichtigt

Die Parameter für die Verzögerung und Dauer von Anrufen auf interne Nummer werden nur berücksichtigt, wenn die Warteschlange aktiviert ist (queue_strategy : "off").

Antwort: (Antwort 2)

                                    Antwort 2:
{"status": "success"}

Fehler: (Antwort 3)

                                    Antwort 3:
{"status": "error","message": "Wrong parameters!"}

delete /v1/pbx/ivr/scenario/delete/

Löschung eines IVR-Szenarios

                                    {
    "status": "success"
}

Parameter:

  • scenario_id - ID des Szenarios;
  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.

Spracherkennung

get /v1/speech_recognition/

Ergebnisse der Spracherkennung erhalten

                                    {        
    "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
        }
    ]
}

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).

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

put /v1/speech_recognition/

Einführung der Spracherkennung in der PBX-Statistik, die selektive Spracherkennung muss zunächst in den Einstellungen der internen Nummeraktiviert werden

                                    {
    "status":"success"
}

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).

Virtuelle Nummern

get /v1/direct_numbers/

Informationen über direkte Nummern des Benutzers

                                    {
    "status":"success",
    "info": [
        {
            "number":"442030000000",
            "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"
        },
    ...
    ]
}

Parameter:

In Abhängigkeit des Nummerntyps kann sich die Zusammensetzung der Felder unterscheiden. Beschreibung der Felder:

  • number – Angeschlossene Rufnummer des Benutzers;
  • status – Status der Rufnummer;
    • on – Rufnummer aktiv;
    • parking – Die Rufnummer ist deaktiviert (wurde nicht bezahlt), doch bleibt im Account innerhalb von 7 Tagen reserviert und kann nach Aufladung des Guthabens wiederhergestellt werden;
    • checking – Die Rufnummer wurde bestellt, bezahlt, alle benötigten Dokumente wurden hochgeladen und ihre Aktivierung wird erwartet;
    • checking_upload – Die Rufnummer wurde bestellt, bezahlt, alle benötigten Dokumente wurden hochgeladen;
    • reserved_on – Die Rufnummer wurde vor der Bezahlung reserviert;
    • reserved_checking – Die Rufnummer wurde vor der Bezahlung reserviert, alle benötigten Dokumente wurden hochgeladen;
    • reserved_checking_upload – Die Rufnummer wurde vor der Bezahlung reserviert, die Hochladung von Dokumenten wird erwartet;
  • country – Land (für "common" und "revenue");
  • description – Beschreibung: Stadt oder Typ (für "common" und "revenue");
  • number_name – "Name" der virtuellen Nummer (vom Benutzer festgelegt);
  • sip – SIP, der mit Nummer verknüpft ist;
  • sip_name – „Name“ der SIP-Nummer, 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 Nummernverlängerung: aktiv/inaktiv (für "common", "revenue", "rufree");
  • is_on_test – Nummer in Testmodus;
  • type – Art der Rufnummer: common (virtuelle Rufnummer), order (bestellte oder nicht angeschlossene Rufnummer)

get /v1/direct_numbers/number/

Informationen zur gekauften Rufnummer

                                    {
    "status": "success",
    "info": {
    "number": "35924913550",
        "status": "on",
        "country": "Bulgaria",
        "description": "Sofia",
        "number_name": "TT",
        "sip": "00004",
        "sip_name": "SIP",
        "start_date": "2016-06-08 14:32:17",
        "stop_date": "2016-06-29 10:52:18",
        "monthly_fee": 2,
        "currency": "USD",
        "channels": "2",
        "autorenew": "true",
        "receive_sms": null,
        "is_on_test": "false"
    }
}

Parameter

  • type - kann einen von 3 Werten haben:
    • 'revenue' - Rufnummer im internationalen Format;
    • 'common' - Übliche Rufnummer, alle anderen;
  • number - Rufnummer.

get /v1/direct_numbers/autoprolongation/

Status der automatischen Verlängerung

                                    {
    "status": "success",
    "number": "35924913550",
    "autoprolongation": "on"
}

Parameter

  • type - kann einen von 2 Werten haben:
    • 'revenue' - Rufnummer im internationalen Format;
    • 'common' - Übliche Rufnummer, alle anderen;
  • number - Rufnummer.

get /v1/direct_numbers/checking-wrongs/

Erhalt von Informationen über Fehler bei der Überprüfung von Dokumenten oder der Adresse

                                    {
   "status":"success",
   "info":{
      "wrong_document":{
         "document_type":"contract",
         "message":"The passport has expired. It is considered invalid."
      },
      "wrong_address":{
         "message":"Invalid address"
      }
   }
}

Parameter

  • group_id - ID der Dokumentengruppe.

put /v1/direct_numbers/autoprolongation/

Status der automatischen Verlängerung ändern

                                    {
    "status": "success",
    "number": "35924913550",
    "autoprolongation": "off"
}

Parameter

  • type - kann einen von 2 Werten haben:
    • 'revenue' - Rufnummer im internationalen Format;
    • 'common' - Übliche Rufnummer, alle anderen;
  • number - Rufnummer;
  • value - neuer Status für die automatische Verlängerung, ein oder aus.

get /v1/direct_numbers/countries/

Liste der Länder, in denen Sie eine Nummer aktivieren können

                                    {
    "status": "success",
    "info": [
        {
            "countryCode": "61",
            "countryCodeIso": "AU",
            "name": "Australia"
        },
        ...
    ]
}

Parameter

  • language - Optional, falls nicht angegeben, wird es in der Sprache des persönlichen Kontos angezeigt.

get /v1/direct_numbers/country/

Liste aller Ziele im Land, in denen Sie eine Telefonnummer bestellen können

                                    {
    "status": "success",
    "info": [
        {
            "id": "3753",
            "countryCode": "49",
            "areaCode": "800",
            "name": "800 number (Toll-free)",
            "connect_fee": 0,
            "monthly_fee": 15,
            "currency": "USD",
            "restrictions": {
                "upload": [
                    "Certificate of registration copy or passport or ID copy (both sides)",
                    "Proof of address (a copy of utility bill no older than of 6 months) - 
                    your current address (city, street, number and postal code). 
                    The address must be located in the country of ordered phone number"
                ]
            },
            "receive_sms": "false",
            "is_toll": "true",
            "feature": "Available from all networks"
            "connect_time": "0"
        },
        {
            "id": "3766",
            "countryCode": "49",
            "areaCode": "821",
            "name": "Augsburg",
            "connect_fee": 3,
            "monthly_fee": 3,
            "currency": "USD",
            "restrictions": {
                "upload": [
                    "Passport or ID copy (both sides)"
                ],
                "specify": [
                    "You current address (city, street, number and postal code). 
                    The address must be located in the region of the city 
                    where you ordered the phone number"
                ]
            },
            "receive_sms": "false",
            "is_toll": "false",
            "feature": null,
            "connect_time": "0"
        },
        ...
    ]
}

Parameter

  • language - Optional, falls nicht angegeben, wird es in der Sprache des persönlichen Kontos angezeigt;
  • country - ISO-Ländercode (ISO 3166-1 Alpha-2).

put /v1/direct_numbers/set_caller_name/

Name der Rufnummer einstellen (Buchstaben und Ziffern, bis zu 30 Zeichen)

                                    {
    "status": "success",
    "number": "+44000000000",
    "caller_name": "test"
}

Parameter

  • type - kann einen von 2 Werten haben:
    • 'revenue' - Rufnummer im internationalen Format;
    • 'common' - Übliche Rufnummer, alle anderen;
  • number - Rufnummer;
  • caller_name - leeres Feld angeben, falls die Angabe gelöscht werden soll.

put /v1/direct_numbers/set_sip_id/

Verknüpfung einer Rufnummer mit einem SIP oder Aktivierung des Testmodus

                                    {
    "status": "success",
    "number": "+44000000000",
    "sip_id": "00001"
}

Parameter

  • type - kann einen von 2 Werten haben:
    • 'revenue' - Rufnummer im internationalen Format;
    • 'common' - Übliche Rufnummer, alle anderen;
  • number - Rufnummer;
  • sip_id - SIP-Login oder externe Serveradresse (SIP-URI);
  • test_mode - optional, (ein|aus) - zur Aktivierung des Testmodus.

get /v1/direct_numbers/available/<DIRECTION_ID>/

Zur Bestellung verfügbare Nummern

                                    {
    'status': 'success',
    'numbers': [
        {
            'id': 1712p0D1643D0t42r198658,
            'direction_id': 13755,
            'number': '+44000000001'
        },
        {
            'id': 184bdf85006c3f1676be200,
            'direction_id': 13755,
            'number': '+44000000000'
        },
        ...
    ]
}

Parameter:

  • DIRECTION_ID - ID des Anrufziels;
  • mask - Optionaler Parameter zur Suche von übereinstimmenden Nummern.

post /v1/direct_numbers/order/

Bestellung/Kauf einer Nummer

                                    {
    'status': 'success',
    'number': '+44000000000',
    'is_reserved': 'false',
    'is_activated': 'true'
}

Parameter:

  • number_id - ID der bestellten Nummer, die mit der Methode GET /v1/direct_numbers/available/<DIRECTION_ID>/ ermittelt wurde, zum Beispiel: 1712p0D1643D0t42r198658 (wenn keine Nummernauswahl vorhanden ist, wird der Parameter nicht verwendet);
  • direction_id - ID des Anrufziels/der Stadt;
  • documents_group_id - ID der Dokumentengruppe des Benutzers;
  • purpose - Beschreibung des Nutzungsziel der Nummer in Textform (falls dies benötigt wird);
  • receive_sms - 1 - SMS-Empfang aktivieren (nur wenn die Nummer den Empfang von SMS unterstützt);
  • period - 'month' - ein Monat, '3month' - drei Monate (optionaler Parameter, SMS-Empfang kann nur für die Nummern aktiviert, die für mindestens 3 Monate verlängert sind);
  • autorenew_period - ein optionaler Parameter, Verlängerungszeitraum (Jahr, Monat), beeinflusst die Abogebühr; standardmäßig month;
  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.

post /v1/direct_numbers/prolong/

Verlängerung von Nummern um eine beliebige Anzahl an Monaten

                                    {
    'status': 'success',
    'number': '+44000000000',
    'stop_date': '2021-05-01 12:00:00',
    'total_paid': {
        'amount': 2,
        'currency': 'USD'
    }
}

Parameter:

  • number - zu verlängernde Nummer;
  • months - Anzahl an Monaten;
  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.

put /v1/direct_numbers/receive_sms/

Aktivierung des SMS-Empfangs (nur für Rufnummern, die SMS empfangen können)

                                    {
    "status": "success", 
    "number": "", 
    "receive_sms": "on"
}

Parameter:

  • number - Rufnummer;
  • value - Wert (kann "on" oder "off" sein);
  • documents_group_id - optionaler Parameter, ID der Dokumentengruppe im Benutzerkonto;
  • user_id - optionaler Parameter, verfügbar nur für Dealer und für Benutzer, die von einem Dealer erstellt wurden.

Dokumentengruppe

get /v1/documents/files

List der Daten/Dokumente in einer Dokumentengruppe

                                    {
    "status": "success",
    "documents": [
        {
            "type": "passport",
            "is_verified": "true",
            "source": "upload",
            "name": "file1.jpg"
        },
        {
            "type": "receipt",
            "is_verified": "false",
            "source": "upload",
            "name": "file2.jpg"
        }
    ]
}

Parameter:

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden;
  • group_id - optionaler Parameter, ID der Dokumentengruppe, (0 oder nicht angegeben: Hauptdokumentengruppe.

get /v1/documents/groups/list/

Liste der Dokumentengruppen

                                    {
    "status": "success",
    "groups": [
        {
            "id": 0,
            "email": "email@server.com",
            "salutation": 'MR',
            "nationality": null,
            "first_name": "John",
            "middle_name": "Richard",
            "last_name": "Smith",
            "organization": "Company",
            "organization_description": null,
            "organization_reg_number": null,
            "country": "DE",
            "region": "",
            "city": "Berlin",
            "address": "Brudden Strasse 8, 76611",
            "zip_code": '76611',
            "street": 'Brudden Strasse',
            "street_code": null,
            "municipality_code": null,
            "building_number": "8",
            "building_letter": null,
            "phone": "4900000000",
            "type_of_id": "",
            "id_number": "123000099",
            "issuing_authority": null,
            "issuing_date": null,
            "is_readonly": true
        }
    ]
}

Parameter:

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden..

get /v1/documents/groups/get/<ID>/

Angaben für eine konkrete Gruppe

                                    {
    "status": "success",
    "group": {
        "id": 0,
        "email": "email@server.com",
        "salutation": 'MR',
        "nationality": null,
        "first_name": "John",
        "middle_name": "Richard",
        "last_name": "Smith",
        "organization": "Company",
        "organization_description": null,
        "organization_reg_number": null,
        "country": "DE",
        "region": "",
        "city": "Berlin",
        "address": "Brudden Strasse 8, 76611",
        "zip_code": '76611',
        "street": 'Brudden Strasse',
        "street_code": null,
        "municipality_code": null,
        "building_number": "8",
        "building_letter": null,
        "phone": "4900000000",
        "type_of_id": "",
        "id_number": "123000099",
        "issuing_authority": null,
        "issuing_date": null,
        "is_readonly": true
    }            
}

Parameter:

  • ID - ID der Gruppe, 0: Hauptdokumentengruppe;
  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.

get /v1/documents/groups/valid/<ID>/

Überprüfung: Kontrolliert, ob die Dokumentengruppe für eine Nummer einer bestimmten Stadt oder Region genutzt werden kann

                                    {
    "status": "success",
    "is_information_match": "true",
    "is_documents_uploaded": "true",
    "is_documents_verified": "true",
    "is_address_match": "true"
}

Parameter:

  • ID - ID der Gruppe, 0: Hauptdokumentengruppe;
  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.
  • direction_id - ID der Region/Stadt

post /v1/documents/groups/create/

Erstellung einer neuen Dokumentengruppe

                                    {
    "status": "success",
    "group": {
        "id": 0,
        "email": "email@server.com",
        "salutation": 'MR',
        "nationality": null,
        "first_name": "John",
        "middle_name": "Richard",
        "last_name": "Smith",
        "organization": "Company",
        "organization_description": null,
        "organization_reg_number": null,
        "country": "DE",
        "region": "",
        "city": "Berlin",
        "address": "Brudden Strasse 8, 76611",
        "zip_code": '76611',
        "street": 'Brudden Strasse',
        "street_code": null,
        "municipality_code": null,
        "building_number": "8",
        "building_letter": null,
        "phone": "4900000000",
        "type_of_id": "",
        "id_number": "123000099",
        "issuing_authority": null,
        "issuing_date": null,
        "is_readonly": true
    }            
}

Parameter:

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.
  • email - E-Mail-Adresse;
  • salutation - Anrede "Hr.", "Fr.", "Firma";
  • nationality - Nationalität, Länderkennzahl gemäß ISO2;
  • first_name - Vornahme;
  • middle_name - optionaler Parameter, Mittelname;
  • last_name - Nachname;
  • date_of_birth - optionaler Parameter, Geburtsdatum;
  • organization - optionaler Parameter, Name der Organisation/Firma;
  • organization_description - optionaler Parameter, Beschreibung der Geschäftstätigkeit;
  • organization_reg_number - optionaler Parameter, Registernummer (z.B. Ust-IdNr.) der Firma;
  • country - Land, Länderkennzahl gemäß ISO2;
  • region - optionaler Parameter, Bundesland/Region;
  • city - Stadt;
  • address - vollständige Adresse;
  • zip_code - Postleitzahl;
  • street - Straße;
  • street_code - optionaler Parameter, Kennnummer der Straße, nur verfügbar in Dänemark;
  • municipality_code - optionaler Parameter, Kennnummer der Gemeinde, nur verfügbar in Dänemark;
  • building_number - Straßennummer;
  • building_letter - optionaler Parameter, Buchstabe in der Straßennummer;
  • phone - Kontakttelefonnummer;
  • type_of_id - optionaler Parameter, : "PASSPORT", "DNI", "NIE", "RESIDENCE_PERMIT", "NATIONAL_ID_CARD", "BUSINESS_REGISTRATION";
  • id_number - optionaler Parameter, Nummer des Ausweisdokuments;
  • issuing_authority - optionaler Parameter, Ausstellungsorgan des Dokuments;
  • issuing_date - optionaler Parameter, Ausstellungsdatum des Dokuments;
  • direction_id - optionaler Parameter, ID der Region/Stadt zu Überprüfungszwecken.

put /v1/documents/groups/update/<GROUPID>/

Aktualisierung der Angaben in einer Dokumentengruppe

                                    {
    "status": "success",
    "group": {
        "id": 0,
        "email": "email@server.com",
        "salutation": 'MR',
        "nationality": null,
        "first_name": "John",
        "middle_name": "Richard",
        "last_name": "Smith",
        "organization": "Company",
        "organization_description": null,
        "organization_reg_number": null,
        "country": "DE",
        "region": "",
        "city": "Berlin",
        "address": "Brudden Strasse 8, 76611",
        "zip_code": '76611',
        "street": 'Brudden Strasse',
        "street_code": null,
        "municipality_code": null,
        "building_number": "8",
        "building_letter": null,
        "phone": "4900000000",
        "type_of_id": "",
        "id_number": "123000099",
        "issuing_authority": null,
        "issuing_date": null,
        "is_readonly": true
    }            
}

Parameter:

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.
  • email - E-Mail-Adresse;
  • salutation - Anrede "Hr.", "Fr.", "Firma";
  • nationality - Nationalität, Länderkennzahl gemäß ISO2;
  • first_name - Vornahme;
  • middle_name - optionaler Parameter, Mittelname;
  • last_name - Nachname;
  • date_of_birth - optionaler Parameter, Geburtsdatum;
  • organization - optionaler Parameter, Name der Organisation/Firma;
  • organization_description - optionaler Parameter, Beschreibung der Geschäftstätigkeit;
  • organization_reg_number - optionaler Parameter, Registernummer (z.B. Ust-IdNr.) der Firma;
  • country - Land, Länderkennzahl gemäß ISO2;
  • region - optionaler Parameter, Bundesland/Region;
  • city - Stadt;
  • address - vollständige Adresse;
  • zip_code - Postleitzahl;
  • street - Straße;
  • street_code - optionaler Parameter, Kennnummer der Straße, nur verfügbar in Dänemark;
  • municipality_code - optionaler Parameter, Kennnummer der Gemeinde, nur verfügbar in Dänemark;
  • building_number - Straßennummer;
  • building_letter - optionaler Parameter, Buchstabe in der Straßennummer;
  • phone - Kontakttelefonnummer;
  • type_of_id - optionaler Parameter, : "PASSPORT", "DNI", "NIE", "RESIDENCE_PERMIT", "NATIONAL_ID_CARD", "BUSINESS_REGISTRATION";
  • id_number - optionaler Parameter, Nummer des Ausweisdokuments;
  • issuing_authority - optionaler Parameter, Ausstellungsorgan des Dokuments;
  • issuing_date - optionaler Parameter, Ausstellungsdatum des Dokuments;
  • direction_id - optionaler Parameter, ID der Region/Stadt zu Überprüfungszwecken.

post /v1/documents/upload/

Hochladen einer Datei für eine Dokumentengruppe

Parameter:

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.
  • group_id - ID der Dokumentengruppe, 0: Hauptdokumentengruppe
  • document_type - Art des Dokuments: 'certificate', 'contract', 'company_letter', 'inn_ua', passport', 'phone_bill', 'photo_with_doc', 'photo_with_passport', 'receipt', 'driver_id_us_ca', 'driver_id_other';
  • file - hochgeladene Datei.

Beispiel einer Anfrage:

                                    $zd = new \Zadarma_API_Test\Api(KEY, SECRET);
$zd->request(
    'documents/upload',
    [
        'group_id' => 0,
        'document_type' => 'passport',
        'file' => new CURLFile('passport.jpg', 'image/jpeg', 'passport.jpg')
    ],
    'post'
);

Beispiel einer Antwort:

                                    {
    "status": "success",
    "message": "The File passport.jpg has been successfully uploaded to the website.",
    "doc_name": "passport.jpg"
}

Dealer

get /v1/reseller/account/info/

Informationen über das Konto des Dealers

                                    {
    "status": "success",
    "balance": 123,
    "credit": 0,
    "currency": "USD",
    "reseller_fee": 10,
    "user_fee": 10
}

post /v1/reseller/account/money_transfer/

Überweisung vom Konto des Dealers auf das Konto des verbundenen Accounts und umgekehrt

                                    {
    "status": "success",
    "user": {
        "balance": "62.0000",
        "currency": "EUR"
    },
    "reseller": {
        "balance": "94.825",
        "currency": "USD"
    }
}

Parameter

  • amount - Summe;
  • currency - Währung;
  • type - Richtung der Überweisen: "to_reseller" oder "to_user".

get /v1/reseller/users/phones/

Auflistung der Kontakttelefonnummern des Benutzers

                                    {
    "status": "success",
    "list": [
        {
            "id": 0,
            "number": "49025000897",
            "is_proved": false
        }
    ]
}

Parameter

  • user_id - ID des Benutzers;

post /v1/reseller/users/phones/add/

Hinzufügen einer Kontakttelefonnummer des Benutzers

                                    {
    "status": "success",
    "id": 98,
    "number": "359000000001",
    "is_proved": true
}

Parameter

  • user_id - ID des Benutzers;
  • number - Nummer.

post /v1/reseller/users/phones/update/

Änderung einer Kontakttelefonnummer des Benutzers

                                    {
    "status": "success",
    "id": 99,
    "number": "359000000002",
    "is_proved": false
}

Parameter

  • user_id - ID des Benutzers;
  • id - ID der Nummer, 0: Hauptkontakttelefonnummer im Nutzerprofil;
  • number - Nummer.

post /v1/reseller/users/phones/prove_by_sms

Bestätigungsanfrage einer Kontakttelefonnummer des Benutzers

                                    {
    "number": "359000000002",
    "status": "success",
    "message": "You were sent an SMS message with a code. Code is valid for 1 hour."
}

Parameter

  • user_id - ID des Benutzers;
  • number - Nummer;
  • confirm_number_reuse - Bestätigung der Nummer, die in einem anderen Account benutzt wird (optionaler Parameter).

post /v1/reseller/users/phones/prove_by_callback

Anfrage der Bestätigung der Kontaktnummer eines Benutzers (es wird ein Anruf getätigt und der Benutzer hört den Bestätigungscode)

                                    {
    "number": "359000000002",
    "status": "success",
    "message": "You were sent an SMS message with a code. Code is valid for 1 hour."
}

Parameter:

  • user_id - Pflichtparameter, ID des Benutzers;
  • number - Pflichtparameter, die zu bestätigende Rufnummer (im internationalen Format);
  • caller_id - Rufnummer, die beim Anruf angezeigt wird. Es können nur im System angeschlossene Rufnummern angezeigt werden;
  • language - Sprache der Audionachricht (Bestätigungscode);
  • sip_id - optionaler Parameter. Falls nicht angegeben, dann wird die erste verfügbare SIP-Nummer des Dealers benutzt;
  • confirm_number_reuse - optionaler Parameter. Bestätigung einer Rufnummer, die in einem anderen Account benutzt wird.

post /v1/reseller/users/phones/confirm

Bestätigung der Kontakttelefonnummer mithilfe des Bestätigungscode in der SMS

                                    {
    "status": "success",
    "message": "Your number confirmed!",
    "number": "35900000019"
}

Parameter

  • user_id - ID des Benutzers;
  • number - Nummer;
  • code - Bestätigungscode.

post /v1/reseller/users/registration/new/

Registrierung eines Benutzers

                                    {
    "status": "success",
    "user_id": 12345,
    "message": "You registered a new user in the system."
},{
    "status": "success",
    "message": "You registered a new user in the system. A registration confirmation link was sent to the email address you provided. To activate the account the user needs to click on that link, after which they can log in on the website."
},{
    "status": "success",
    "message": "You registered a new user in the system. A registration confirmation code was sent to the email address you provided. To activate the account the user needs to send code to you, after which you can confirm registration using API."
}

Parameter

  • email - E-Mail-Adresse des Kunden;
  • first_name - Vorname des Kunden;
  • last_name - optionaler Parameter;
  • middle_name - optionaler Parameter;
  • organization - optionaler Parameter;
  • country - Ländercode im Format ISO2;
  • city - Stadt des Kunden;
  • address - optionaler Parameter;
  • phone - optionaler Parameter;
  • password - optionaler Parameter;
  • tariff - ID des Tarifs (ID kann mit Methode GET /v1/info/lists/tariffs/ erhalten werden);
  • tariff_period - optionaler Parameter, Anschlussdauer des Tarifs - Monat/Jahr;
  • language - optionaler Parameter, Code der Sprache, en;
  • currency - optionaler Parameter, Code der Währung, USD;
  • promocode - optionaler Parameter, Promocode;
  • gmt - optionaler Parameter, GMT;
  • id_card - optionaler Parameter, Nummer des Ausweisdokuments (ID-Karte, Ausweis).

post /v1/reseller/users/registration/confirm/

Bestätigung der Registierung des Benutzers

                                    {
    "status": "success",
    "user_id": 12345
}

Parameter

  • code - Registrierungsbestätigungscode aus der Email die an die E-Mail des Benutzers gesendet wurde;
  • email - E-Mail-Adresse.

get /v1/reseller/users/list/

Auflistung der Benutzer des Dealers auf einer Seite (bis zu 50)

                                    {
    "status": "success",
    "total": 205,
    "total_pages": 5,
    "page": 1,
    "users": [
        {
            "id": "1234",
            "email": "test@domain.com",
            "first_name": "Test",
            "last_name": "Test",
            "organization": "",
            "phone": "+44000000001",
            "created": "2021-01-26 14:21:04",
            "last_login": "2021-01-30 09:46:31",
            "balance": "0.4000",
            "currency": "GBP",
            "sips_count": "1",
            "is_active": true,
            "allow_topup": true,
            "allow_api_requests": true
        },
        ...
    ]
}

Parameter

  • page.

get /v1/reseller/users/find/

Suche eines Account mittels Kriterien (eine der IDs, E-Mail-Adresse, SIP-Nummer)

                                    {
    "status": "success",
    "user": {
        "id": "1234",
        "email": "test@domain.com",
        "first_name": "Test",
        "last_name": "Test",
        "organization": "",
        "phone": "+44000000001",
        "created": "2021-01-26 14:21:04",
        "last_login": "2021-01-30 09:46:31",
        "balance": "0.4000",
        "currency": "GBP",
        "sips_count": "1",
        "is_active": true,
        "allow_topup": true,
        "allow_api_requests": true
    }
}

Parameter

  • id - optionaler Parameter;
  • sip - optionaler Parameter;
  • email - optionaler Parameter;

post /v1/reseller/users/topup/

Überweisung vom Konto des Dealers auf das Konto eines Benutzers

                                    {
    "status": "success",
    "user_topup": {
        "amount": 10,
        "currency": "GBP"
    },
    "reseller_withdraw": {
        "amount": 10,
        "currency": "GBP"
    }
}

Parameter

  • user_id - ID des Benutzers;
  • amount - Summe;
  • currency - Währung.

get /v1/reseller/users/api_key/

Erhalt der jetzigen API-Zugangschlüssel eines Benutzers

                                    {
    "status": "success",
    "user_id": 1234,
    "last_request_datetime": "2021-02-18 10:45:01",
    "allow_reset": true,
    "key": "hidden",
    "secret": "hidden"
},{
    "status": "success",
    "user_id": 1234,
    "last_request_datetime": "2021-02-26 15:59:50",
    "allow_reset": false,
    "key": "abscd",
    "secret": "12345"
}

Parameter

  • user_id - ID des Benutzers.

post /v1/reseller/users/api_key/

Erhalt von neuen API-Zugangsschlüsseln eines Benutzers

                                    {
    "status": "success",
    "user_id": 1234,
    "key": "abscd",
    "secret": "12345"
}

Parameter

  • user_id - ID des Benutzers.

Integration des WebRTC-Widgets

get /v1/webrtc/get_key/

Schlüssel für das WebRTC-Widget erhalten. Gültigkeitsdauer des Schlüssels: 72 Stunden

                                    {
    "status":"success",
    "key": YOUR_KEY
}

Parameter:

  • sip – Login des SIP-Account oder der internen Nummer in der virtuellen Telefonanlage

post /v1/webrtc/create/

Erstellung einer Intregrierung mit dem WebRTC-Widget

                                    {
    "status": "success"
}

Parameter

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.
  • domain - Domänenname.

put /v1/webrtc/

Änderung der Integrationseinstellungen des WebRTC-Widgets

                                    {
    "status": "success"
}

Parameter

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.
  • shape - Widget-Formular, zulässige Werte: 'square', 'rounded';
  • position - Position des Widgets, zulässige Werte: 'top_left', 'top_right', 'bottom_right', 'bottom_left'.

get /v1/webrtc/

Angaben der Integration des WebRTC-Widgets

                                    {
    "status": "success",
    "is_exists": true,
    "domains": [
        "test.domain.com"
    ],
    "settings": {
        "shape": "square",
        "position": "top_right"
    }
}

Parameter

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden.

post /v1/webrtc/domain/

Hinzufügung einer Domäne für die Integrierung des WebRTC-Widgets

                                    {
   "status": "success"
}

Parameter

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden;
  • domain - Domänenname.

delete /v1/webrtc/domain/

Löschung einer Domäne aus der Integrierung des WebRTC-Widgets

                                    {
   "status": "success"
}

Parameter

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden;
  • domain - Domänenname.

delete /v1/webrtc/

Löschung der Integrierung des WebRTC-Widgets

                                    {
   "status": "success"
}

Parameter

  • user_id - optionaler Parameter, nur für den Dealer und Benutzer verfügbar, die vom Dealer erstellt wurden;
  • domain - Domänenname.

get /v1/esim/devices/

Liste der unterstützten Geräte für eSIM

Beschreibung der erfolgreichen Antwort (Antwort 1)

                                    Antwort 1:
{ "status": "success", "devices": { "acer": [ "ACER Swift 3", "ACER Swift 7" ], "asus": [ "ASUS Mini Transformer T103HAF", "ASUS NovaGo TP370QL", "ASUS Vivobook Flip 14 TP401NA" ], "xiaomi": [ "Xiaomi 12T Pro", "Xiaomi 13 Lite" ] } }

  • devices (оbject[]) — Liste der Geräte, gruppiert nach Marken

Beschreibung der Antwort im Falle eines internen Fehlers (Antwort 2)

                                    Antwort 2:
{ "status": "error", "message": "Getting devices internal error" }

  • message (string) — Fehlermeldung

get /v1/esim/packages/

Liste aller verfügbaren Pakete

Beschreibung der erfolgreichen Antwort (Antwort 1)

                                    Antwort 1:
{ "status": "success", "packages": [ { "duration": 7, "countries": [ { "iso2": "cn", "name": "China", "aliases": [] } ], "networks": [ { "iso2": "CN", "network": "China Unicom", "type": "LTE" } ], "region": null, "id": "1-cn-7days-1gb", "price": 5, "data": 1, "duration_unit": "days", "data_unit": "GB", "top_up": true, "kyc_verify": false, "activation_policy": "first-usage", "activation_limit_days": null, "price_multi_currency": { "eur": 5, "usd": 5, "gbp": 4, "pln": 19, "kzt": 2000, "uah": 200 }, } ] }

  • packages (object[]) — enthält eine Liste der verfügbaren Pakete
  • packages.*.duration (integer) — Gültigkeitsdauer der eSIM. Die Einheit dieses Werts ist im Parameter duration_unitenthalten
  • packages.*.countries (object[]) — Liste der Länder, in denen die eSIM funktioniert
  • packages.*.networks (object[]) — Liste der Länder, in denen der mobile Internetzugang der eSIM verfügbar ist
  • packages.*.region (null|string, europe|america|latin-america|asia|caribbean-islands|africa|south-africa|middle-east|oceania|iberica|scandinavia|eastern-europe) — Region, in der die eSIM funktioniert
  • packages.*.id (string) — Interne ID der eSIM
  • packages.*.price (float) — Preis der eSIM
  • packages.*.data (integer) — Verfügbares Datenvolumen. Die Einheit dieses Werts ist im Parameter data_unitenthalten
  • packages.*.duration_unit (string, days) — Einheit der Gültigkeitsdauer, basierend auf dem Parameter duration
  • packages.*.data_unit (string, GB|KB|MB) — Einheit des Datenvolumens, basierend auf dem Parameter data
  • packages.*.top_up (boolean) — Wert ist true, wenn die eSIM für Aufladungen verfügbar ist
  • packages.*.kyc_verify (boolean) — Kennzeichen, ob eine Dokumentenprüfung für den Kauf der eSIM erforderlich ist
  • packages.*.activation_policy (null|string, first-usage|installation) — Aktivierungspolitik. Wenn der Wert "first-usage" ist, wird die eSIM bei der ersten Nutzung aktiviert. Wenn der Wert "installation" ist, wird die eSIM bei der Installation im Gerät aktiviert. Wenn der Wert null ist, gibt es keine Aktivierungspolitik.
  • packages.*.price_multi_currency (object) — Preisobjekt in jeder Währung
  • packages.*.activation_limit_days (null|integer) — Kann die Anzahl der Tage enthalten, innerhalb der die eSIM nach der Aktivierung aktiviert werden muss. Wenn null, gibt es keine solche Einschränkung

Beschreibung der Antwort im Falle eines internen Fehlers (Antwort 2)

                                    Antwort 2:
{ "status": "error", "message": "Getting packages error" }

  • message (string) — Fehlermeldung

get /v1/esim/order/

Liste der angeschlossenen Pakete

Parameter

  • user_id (integer)
    Optionales Feld
    Die ID des angeforderten Benutzers. Ist nur für Händler verfügbar und nur für Benutzer, die von diesen erstellt wurden. Standardmäßig wird die aktuelle Benutzer-ID verwendet.

Beschreibung der erfolgreichen Antwort (Antwort 1)

                                    Antwort 1:
{ "status": "success", "orders": [ { "iccid": "8937204017175532566", "status": "inactive", "packages": [ { "iccid": "8937204017175532566", "price": 4.5, "currency": "USD", "countries": [ { "iso2": "al", "name": "Albania", "aliases": [] } ], "duration": 30, "data": 1, "region": null, "id": "3-al-30days-1gb", "data_remaining": 1, "top_up": true, "created_at": 1730978058, "auto_prolong": false, "activated_at": null, "expired_at": null, "reference_id": "672ca10a84a28e977c0cfe39" } ], "title": null, "msisdn": null, "activation_code": "LPA:1$smdp.io$K2-2627GZ-1UM3Z3Y", "created_at": 1730978058 } ] }

  • orders (оbject[]) — Liste der aktivierten Pakete. Eine detaillierte Beschreibung der Paketdaten finden Sie in der Methode /v1/esim/order/<iccid>/

Beschreibung der Antwort im Falle einer ungültigen user_id (Antwort 2)

                                    Antwort 2:
{ "status": "error", "message": "You are not a reseller of the requested user" }

  • message (string) —enthält die Fehlermeldung

get /v1/esim/order/<iccid>/

Informationen zum angeschlossenen Paket anhand der iccid

Parameter

  • iccid (string)
    Erforderliches Feld
    Der angeforderte ICCID
  • user_id (integer)
    Optionales Feld
    Die ID des angeforderten Benutzers. Ist nur für Händler verfügbar und nur für Benutzer, die von diesen erstellt wurden. Standardmäßig wird die aktuelle Benutzer-ID verwendet

Beschreibung der erfolgreichen Antwort (Antwort 1)

                                    Antwort 1:
{ "status": "success", "order": { "iccid": "8937204017175532566", "status": "inactive", "packages": [ { "iccid": "8937204017175532566", "price": 4.5, "currency": "USD", "countries": [ { "iso2": "al", "name": "Albania", "aliases": [] } ], "duration": 30, "data": 1, "type": "one-off", "region": null, "id": "3-al-30days-1gb", "data_remaining": 1, "top_up": true, "created_at": 1730978058, "auto_prolong": false, "activated_at": null, "expired_at": null, "reference_id": "672ca10a84a28e977c0cfe39" } ], "title": null, "msisdn": null, "activation_code": "LPA:1$smdp.io$K2-2627GZ-1UM3Z3Y", "created_at": 1730978058 } }

  • order.iccid (string) — ICCID des eSIM-Pakets
  • order.status (string, active|inactive|archived|blocked) — Status des Pakets — aktiviert, nicht aktiviert, archiviert oder blockiert
  • order.packages (object[]) — Aktivierte Pakete. Die Daten dazu sind in der Methode /v1/esim/esim/packagesbeschrieben.
  • order.packages.*.data_remaining (float) — Verfügbares Datenvolumen. Die Einheit dieses Werts ist im Parameter order.packages.*.data_unitenthalten
  • order.packages.*.expired_at (null|integer) —Timestamp, falls die eSIM abgelaufen ist
  • order.title (null|string) — Benutzerdefinierter Name der gekauften eSIM
  • order.msisdn (null|string) — MSISDN, falls vorhanden
  • order.activation_code (string) — Schlüssel zur Generierung des QR-Codes oder für die manuelle Einrichtung
  • order.created_at (integer) — Timestamp der Aktivierung der eSIM

Beschreibung der Fehlermeldung bei Verwendung einer nicht existierenden ICCID (Antwort 2)

                                    Antwort 2:
{ "status": "error", "message": "Not found" }

  • message (string) — Fehlermeldung

post /v1/esim/order/create/

Paket anschließen

Parameter

  • package_id (string)
    Erforderliches Feld
    des Pakets für die Aktivierung, packages.*.id aus der Methode /v1/esim/packages/
  • user_id (integer)
    Optionales Feld
    die Benutzer-ID für die Aktivierung. Ist nur für Händler verfügbar und nur für Benutzer, die von diesen erstellt wurden. Standardmäßig wird die aktuelle Benutzer-ID verwendet

Beschreibung der erfolgreichen Antwort (Antwort 1)

                                    Antwort 1:
{ "status": "success", "order": { "iccid": "8937204016150824154", "activation_code": "LPA:1$smdp.io$K2-1UYQA7-Z8B3BF", "status": "inactive", "packages": [ { "iccid": "8937204016150824154", "price": 11.01, "currency": "EUR", "countries": [ { "iso2": "us", "name": "США", "aliases": [] } ], "duration": 30, "data": 0, "data_remaining": 0, "top_up": true, "type": "one-off", "region": "change", "created_at": 1720700977, "auto_prolong": false, "activated_at": null, "expired_at": null, "reference_id": null, "id": "3-change-30days-0gb" } ], "created_at": 1720700977, "title": null, "msisdn": null } }

  • order (оbject) — Informationen zum aktivierten Paket. Eine detaillierte Beschreibung finden Sie in der Methode /v1/esim/order/<iccid>/

Beschreibung der Fehlermeldung bei unzureichendem Guthaben (Antwort 2)

                                    Antwort 2:
{ "status": "error", "message": "Not enough money on your account" }

  • message (string) —enthält die Fehlermeldung

Teamsale CRM-Methoden

Kunden

get /v1/zcrm/customers

Gibt die Kundenliste her

Parameter

  • search (optional) - Suchzeile. Die Suche wird 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. Filterstruktur:

(Antwort 1)

                                    Antwort 1:
{ "status": "company", "type": "client", "country": "GB", "city": "London", "label": 12, "utm": 19, "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:

(Antwort 2)

                                    Antwort 2:
{ "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

(Antwort 3)

                                    Antwort 3:
{ "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" } ], "utms": [ { "id": 19, "param": "utm_source", "value": "google", "display_value": "Google" } ] } ] }

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"
    }
  ],
  "utms": [
    {
      "id": 19,
      "param": "utm_source",
      "value": "google",
      "display_value": "Google"
    }
  ],
  "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

Parameter

  • customer — neue Kundendaten. Kundenstruktur:

(Antwort 1)

                                    Antwort 1:
{ "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 } ], "utms": [ { "id": 19 }, { "id": 20 } ], "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:

json_1

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 }
    ],
    "utms": [
      { "id": 19 },
      { "id": 20 }
    ],
    "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

Quellenmarker

get /v1/zcrm/customers/utms

Gibt einen Datensatz mit allen UTM-Parametern und einer Statistik für sie wider

Antwort

                                    [
  {
    "id": 78,
    "param": "utm_source",
    "value": "google",
    "display_value": "Google",
    "count": 1267
  }
]

Wobei jeder UTM-Parameter folgende Felder enthält:

  • id — ID des UTM-Parameters
  • param — Typ des UTM-Parameters. Mögliche Angaben:
    • utm_source
    • utm_medium
    • utm_campaign
    • utm_content
    • phone — Telefonnummer
    • custom — Wahlweise
  • value — Faktischer Wert des UTM-Parameters
  • display_value — Angezeigter Wert des UTM-Parameters
  • count — Anzahl von Kunden und Leads, die diesen UTM-Parameter nutzen

post /v1/zcrm/customers/utms

Neuen UTM-Parameter erstellen

Parameter

  • utm — Daten des neuen UTM-Parameters. Struktur des Parameters:

(Antwort 1)

                                    Antwort 1:
{ "param": "utm_source", "value": "google", "display_value": "Google" }

Wobei:

  • id — ID des UTM-Parameters
  • param — Typ des UTM-Parameters. Mögliche Angaben:
    • utm_source
    • utm_medium
    • utm_campaign
    • utm_content
    • phone — Telefonnummer
    • custom — Wahlweise
  • value — Faktischer Wert des UTM-Parameters
  • display_value (optional) — Angezeigter Wert des UTM-Parameters

Antwort

(Antwort 2)

                                    Antwort 2:
{ "id": 78 }

Wobei:

  • id — ID des erstellten UTM-Parameters

put /v1/zcrm/customers/utms/<utm_id>

Aktualisiert einen bestehenden UTM-Parameter mit der angegebenen ID

Parameter der Adresse

  • utm_id — ID des UTM-Parameters

Parameter

  • utm — Neue Daten des UTM-Parameters. Struktur des UTM-Parameters:

                                    {
  "param": "utm_source",
  "value": "google",
  "display_value": "Google"
}

Wobei:

  • param — Typ des UTM-Parameters. Mögliche Angaben:
    • utm_source
    • utm_medium
    • utm_campaign
    • utm_content
    • phone — Telefonnummer
    • custom — Wahlweise
    • value — Faktischer Wert des UTM-Parameters
    • display_value (optional) — Angezeigter Wert des UTM-Parameters

delete /v1/zcrm/customers/utms/<utm_id>

Löscht einen UTM-Parameter aus dem System gemäß seiner ID

Parameter der Adresse

  • utm_id — ID des UTM-Parameters

Tags

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": "Very 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

Zusätzlichen Eigenschaften

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

Kunden-Aktivitätenliste

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 the client",
      "time": "2020-06-08 06:55:02",
      "user_id": 20,
      "user_name": "John Beam",
      "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": "document.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 the client",
  "time": "2020-06-08 06:55:02",
  "user_id": 20,
  "user_name": "John Beam",
  "attached_files": [
    {
      "file_id": 576,
      "original_filename": "document.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

Mitarbeiter

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": "Steven Knight",
      "position": "manager",
      "position_title": "",
      "comment": "",
      "phones": [
        {
          "type": "work",
          "phone": "+44123456789"
        }
      ],
      "contacts": [
        {
          "type": "email_work",
          "value": "s.knight@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": "Steven Knight",
  "position": "manager",
  "position_title": "",
  "comment": "",
  "phones": [
    {
      "type": "work",
      "phone": "+44123456789"
    }
  ],
  "contacts": [
    {
      "type": "email_work",
      "value": "s.knight@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:

(Antwort 1)

                                    Antwort 1:
{ "name": "Steven Knight", "position": "manager", "position_title": "", "comment": "", "phones": [ { "type": "work", "phone": "+44123456789" } ], "contacts": [ { "type": "email_work", "value": "s.knight@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

(Antwort 2)

                                    Antwort 2:
{ "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": "Steven Knight",
    "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

Leads

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:

(Antwort 1)

                                    Antwort 1:
{ "source": "call_incoming", "responsible": 32, "label": 12, "utm": 19, "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:

(Antwort 2)

                                    Antwort 2:
{ "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

(Antwort 3)

                                    Antwort 3:
{ "totalCount": 100, "uncategorizedCount": 10, "leads": [ { "id": 3486, "name": "Good Company", "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" } ], "utms": [ { "id": 19, "param": "utm_source", "value": "google", "display_value": "Google" } ] } ] }

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 wieder

Ответ

                                    {
  "id": 3486,
  "name": "Good Company",
  "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": "Лучшие клиенты"
    }
  ],
  "utms": [
    {
      "id": 19,
      "param": "utm_source",
      "value": "google",
      "display_value": "Google"
    }
  ],
  "custom_properties": [
    {
      "id": 12,
      "key": "loyalty",
      "title": "Лояльность",
      "value": "high"
    }
  ]
}

wo

  • id — ID des Leads;
  • name — Name des Leads
  • responsible_user_id — Verantwortlicher (ID des Benutzers);
  • employees_count — Anzahl der Mitarbeiter. Mögliche Werte:
    • 50 — weniger als 50
    • 50_250 — 50 – 250
    • 250_500 — 250 – 500
  • comment — Beschreibung des Leads;
  • country — Land des Leads. Ländercode mit zwei Buchstaben (DE, CH usw.)
  • city — Stadt des Leads;
  • address — Adresse des Leads;
  • zip — Postleitzahl;
  • website — Webseite des Leads;
  • lead_status — Status des Leads. Mögliche Werte:
    • not_processed — Nicht bearbeitet;
    • in_progress — In Bearbeitung;
    • finished — Beendet;
  • lead_source — Quelle des Leads. 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 — Benutzer, von dem der Lead erstellt wurde (ID des Benutzers);
  • phones — Datenfeld mit Rufnummern des Leads. Jede Rufnummer enthält folgende Felder:
    • type — Art der Rufnummer. Mögliche Werte:
      • work — Arbeitsnummer
      • personal — Privatnummer
    • phone — Rufnummer;
  • contacts — Datenfeld mit 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 — Wert des Kontakts
  • labels — Datenfeld mit Tags, die dem Lead gegeben wurden. Jeder Tag enthält folgende Felder:
    • id — ID des Tags
    • label — Tag
  • utms — Datenfeld der Quellenmarker. Jeder Marker enthält folgende Felder:
    • id — ID des Markers;
    • param — Typ des Markers. Mögliche Werte:
      • utm_source
      • utm_medium
      • utm_campaign
      • utm_content
      • phone — Rufnummer
      • custom — beliebig
    • value — faktischer Wert des Markers;
    • display_value — angezeigter Wert des Markers.

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:

(Antwort 1)

                                    Antwort 1:
{ "name": "Good Company", "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 } ], "utms": [ { "id": 19 }, { "id": 20 } ], "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

(Antwort 2)

                                    Antwort 2:
{ "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": "Good Company",
    "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 }
    ],
    "utms": [
      { "id": 19 },
      { "id": 20 }
    ],
    "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 — 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

Benutzer

get /v1/zcrm/users

Gibt eine Liste der Benutzer her

Antwort

                                    {
  "totalCount": 2,
  "users": [
    {
      "id": 234,
      "email": "john@example.com",
      "name": "John Beam",
      "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": "ivanov@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 Teamsale CRM-Oberfläche (nur Farbtonwert - von 0 bis 359)
    • color_hex — Farbe der Aufgabe in der Teamsale CRM-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@example.com",
  "name": "John Beam",
  "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": "simpson@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 Teamsale CRM-Oberfläche (nur Farbtonwert - von 0 bis 359)
  • color_hex — Farbe der Aufgabe in der Teamsale CRM-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

Zusammengefasste Kontakte

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

(Antwort 1)

                                    Antwort 1:
{ "totalCount": 128, "contacts": [ { "contact_type": "customer", }, { "contact_type": "employee", }, { "contact_type": "lead", }, { "contact_type": "user", } ] }

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

(Antwort 2)

                                    Antwort 2:
{ "contact_type": "customer", "id": 3486, "name": "Good Company", "status": "company", "type": "client", "phone": { "phone": "+44123456789", "type": "work" }, "responsible": { "id": 234, "name": "John Beam", "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

(Antwort 3)

                                    Antwort 3:
{ "contact_type": "employee", "id": 8, "name": "Michael Simpson", "phone": { "phone": "+44123456789", "type": "work" }, "position": { "position": "manager", "title": "" }, "customer": { "id": 3486, "name": "Good Company" }, "responsible": { "id": 234, "name": "John 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 — 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

(Antwort 4)

                                    Antwort 4:
{ "contact_type": "lead", "id": 3486, "name": "Good Company", "phone": { "phone": "+44123456789", "type": "work" }, "responsible": { "id": 234, "name": "John 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 — nterne PBX Nummer des Benutzers

Benutzer

(Antwort 5)

                                    Antwort 5:
{ "contact_type": "user", "id": 234, "name": "John Beam", "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

(Antwort 1)

                                    Antwort 1:
{ "contact_type": "customer", "id": 3486, "name": "Good Company", "status": "company", "type": "client", "phone": { "phone": "+44123456789", "type": "work" }, "responsible": { "id": 234, "name": "John 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

(Antwort 2)

                                    Antwort 2:
{ "contact_type": "employee", "id": 8, "name": "Michael Simpson", "phone": { "phone": "+44123456789", "type": "work" }, "position": { "position": "manager", "title": "" }, "customer": { "id": 3486, "name": "Good Company" }, "responsible": { "id": 234, "name": "John 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

(Antwort 3)

                                    Antwort 3:
{ "contact_type": "lead", "id": 3486, "name": "Good Company", "phone": { "phone": "+44123456789", "type": "work" }, "responsible": { "id": 234, "name": "John 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

(Antwort 4)

                                    Antwort 4:
{ "contact_type": "user", "id": 234, "name": "John Beam", "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)

Deals

get /v1/zcrm/deals

Gibt eine Liste von Deals wider

Parameter

  • search (optional) — Suchzeile. Die Suche von Deals wird gemäß Ihrer Bezeichnung durchgeführt.

  • filter (optional) — Filter für Deals. Struktur des Filters:

(Antwort 1)

                                    Antwort 1:
{ "currency": "USD", "responsible_user": 20, "status": "new" }

Wobei:

  • currency — Währung des Deals. Code aus drei Buchstaben gemäß ISO 4217: USD, EUR usw.
  • responsible_user — Verantwortlicher (Bezeichnung des Benutzers)
  • status — Status des Deals. Verfügbare Angaben:

    • new — Neuer Deal
    • in_progress — Wird verarbeitet
    • decision — Entscheidung wird getroffen
    • payment — Zahlung wird erwartet
    • success — Deal erfolgreich
    • canceled — Deal abgebrochen

    Die Parameter für den Filter können nicht angegeben werden, da es sich um optionale Parameter handelt.

  • sort (optional) — Sortierung von Deals. Struktur des Parameters:

(Antwort 2)

                                    Antwort 2:
{ "attr": "name", "desc": 0 }

Wo:

  • attr — Feld der Sortierung. Verfügbare Angaben:
    • title — Name des Deals
    • budget — Budget des Deals
    • status — Status des Deals
    • created_at — Erstellungsdatum des Deals
  • desc — Richtung der Sortierung. Verfügbare angaben:
    • 0 — ansteigend
    • 1 — sinkend
  • take (für die Ausgabe auf separaten Seiten) — Anzahl von angezeigten Deals (standardmäßig werden 20 angezeigt)

  • skip (für die Ausgabe auf separaten Seiten) — Anzahl an übersprungenen Deals (standarmäßig 0)

Antwort

(Antwort 3)

                                    Antwort 3:
{ "totalCount": 82, "deals": [ { "id": 83, "title": "Good deal", "budget": 990.00, "currency": "USD", "status": "new", "responsible_user": 20, "created_at": "2021-10-05 12:40:10", "created_by": 20, "customer_id": 65, "customer_is_lead": 0, "customer_name": "Good company", "customer_responsible_user": 20 } ] }

Wo:

  • totalCount — gesamte Anzahl von Deals (in Einbetracht der Suchzeile und des Filters)
  • deals — Datenfeld für Deals (die seitenweise Ausgabe wird beachtet). Jedes Element des Datenfelds enthält folgende Parameter:
    • id — ID des Deals
    • title — Name des Deals
    • budget — Budget des Deals
    • currency — Code aus drei Buchstaben gemäß ISO 4217: USD, EUR usw.
    • status — Status des Deals. Mögliche Angabe:
    • new — Neuer Deal
    • in_progress — Wird verarbeitet
    • decision — Entscheidung wird getroffen
    • payment — Zahlung wird erwartet
    • success — Deal erfolgreich
    • canceled — Deal abgebrochen
    • responsible_user — Verantwortlicher (Bezeichnung des Benutzers)
    • created_at — Datum und Uhrzeit der Erstellung des Deals (im Format YYYY-MM-DD HH:mm:ss)
    • created_by — Angabe bezüglich des Mitarbeiters, der den Deal erstellt hat (ID des Benutzers)
    • customer_id — ID des Benutzers, der mit dem Deal verknüpft ist
    • customer_is_lead — Marker, der angibt, ob es sich beim Kunden um einen Lead handelt
    • customer_name — Name des Kunden, der mit dem Deal verknüpft ist
    • customer_responsible_user — Verantwortlicher für den Kunden (ID des Benutzers)

get /v1/zcrm/deals/<deal_id>

Gibt einen Deal gemäß Ihrer ID wider

Parameter der Adresse

  • deal_id — ID des Deals

Antwort

                                    {
  "id": 83,
  "title": "Good deal",
  "budget": 990.00,
  "currency": "USD",
  "status": "new",
  "responsible_user": 20,
  "created_at": "2021-10-05 12:40:10",
  "created_by": 20,
  "customer_id": 65,
  "customer_is_lead": 0,
  "customer_name": "Good company",
  "customer_responsible_user": 20
}

Wobei:

  • id — ID des Deals
  • title — Name des Deals
  • budget — Budget des Deals
  • currency — Währung des Deals. Code aus drei Buchstaben gemäß ISO 4217: USD, EUR usw.
    • status — Status des Deals. Verfügbare Angaben:
    • new — Neuer Deal
    • in_progress — Wird verarbeitet
    • decision — Entscheidung wird getroffen
    • payment — Zahlung wird erwartet
    • success — Deal erfolgreich
    • canceled — Deal abgebrochen
  • responsible_user — Verantwortlicher (ID des Benutzers)
  • created_at — Datum und Uhrzeit der Erstellung des Deals (im Format YYYY-MM-DD HH:mm:ss)
  • created_by — Ersteller des Deals (ID des Benutzers)
  • customer_id — ID des Kunden, der mit dem Deal verknüpft ist
  • customer_is_lead — Marker, der angibt, ob es sich beim Kunden um einen Lead handelt
  • customer_name — Name des Kunden, der mit dem Deal verknüpft ist
  • customer_responsible_user — Verantwortlicher für den Kunden (ID des Benutzers)

post /v1/zcrm/deals

Erstellt einen neuen Deal mit den angegebenen Daten

Parameter

  • deal — Daten des neuen Deals. Struktur des Deals:

(Antwort 1)

                                    Antwort 1:
{ "title": "Good deal", "budget": 990.00, "currency": "USD", "status": "new", "responsible_user": 20, "customer_id": 65 }

Wobei:

  • title — Name des Deals
  • budget — Budget des Deals
  • currency — Währung des Deals. Code aus drei Buchstaben gemäß ISO 4217: USD, EUR usw.
    • status — Status des Deals. Verfügbare Angaben:
    • new — Neuer Deal
    • in_progress — Wird verarbeitet
    • decision — Entscheidung wird getroffen
    • payment — Zahlung wird erwartet
    • success — Deal erfolgreich
    • canceled — Deal abgebrochen
  • responsible_user — Verantwortlicher (ID des Benutzers)
  • customer_id — ID des Kunden, der mit dem Deal verknüpft ist

Antwort

(Antwort 2)

                                    Antwort 2:
{ "id": 83 }

Wobei:

  • id — ID des erstellten Deals

put /v1/zcrm/deals/<deal_id>

Aktualisiert einen bestehenden Deals mit der angegebenen ID

Parameter der Adresse

  • deal_id — ID des Deals

Parameter

  • deal — neue Daten des Deals. Struktur des Deals:

                                    {
  "title": "Good deal",
  "budget": 990.00,
  "currency": "USD",
  "status": "new",
  "responsible_user": 20
}

Wobei:

  • title — Name des Deals
  • budget — Budget des Deals
  • currency — Währung des Deals. Code aus drei Buchstaben gemäß ISO 4217: USD, EUR usw.
  • status — Status des Deals. Verfügbare Angaben:
    • new — Neuer Deal
    • in_progress — Wird verarbeitet
    • decision — Entscheidung wird getroffen
    • payment — Zahlung wird erwartet
    • success — Deal erfolgreich
    • canceled — Deal abgebrochen
  • responsible_user — Verantwortlicher (ID des Benutzers)

delete /v1/zcrm/deals/<deal_id>

Löscht einen Deal in Abhängigkeit ihrer ID

Parameter der Adresse

  • deal_id — ID des Deals

Oberfläche für Deals

get /v1/zcrm/deals/<deal_id>/feed

Gibt Einträge aus der Oberfläche für Deals wider

Parameter der Adresse

  • deal_id — ID des Deals

Ответ

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

Wobei:

  • totalCount — Gesamtanzahl an Einträgen
  • items — Datenfeld für Einträge. Jeder Eintrag enthält folgende Attribute:
    • id — ID des Eintrags
    • type — Typ des Eintrags. Mögliche Angaben:
      • event — Event
      • note — Notiz
    • content — Inhalt des Eintrags. Wenn es sich beim Eintrag um eine Notiz handelt, dann enthält dieses Attribut den Textinhalt der Notiz. Wenn es sich beim Eintrag um ein Event handelt, dann enthält dieses Attribut die ID des Events, beispielsweise:
      • DEAL_CREATED — Event der Erstellung eines Deals
      • DEAL_STATUS_CHANGED: success — Event bei der Änderung des Status eines Deals: Der Deal war erfolgreich
    • time — Uhrzeit und Datum des Eintrags im Format YYYY-MM-DD hh:mm:ss
    • user_id — ID des Benutzers, der den Eintrag erstellt hat
    • user_name — Name des Benutzers, der den Eintrag erstellt hat;
    • attached_files — Datenfeld für beigelegte Dateien in einer Notiz (wenn es sich beim Eintrag um eine Notiz handelt). Jedes Element des Datenfelds enthält folgende Attribute:
      • file_id — ID der Datei
      • original_filename — Originaler Name der Datei

post /v1/zcrm/deals/<deal_id>/feed

Fügt in der Oberfläche für Deals eine Notiz hinzu, bei der Sie eine Datei anhängen können

Parameter der Adresse

  • deal_id — ID des Deals

Parameter

  • content — Textinhalt der Notiz
  • files — Datenfeld für beigelegte Dateien

Antwort

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

Wobei:

  • id — ID des Eintrags
  • type — Typ des Eintrags. In diesem Fall handelt es sich um:
    • note — Notiz
    • content — Textinhalt der Notiz
    • time — Uhrzeit und Datum des Eintrags im Format YYYY-MM-DD hh:mm:ss
    • user_id — ID des Benutzer, der den Eintrag erstellt hat
    • user_name — Name des Benutzers, der den Eintrag erstellt hat;
    • attached_files — Datenfeld für beigelegte Dateien in einer Notiz (wenn es sich beim Eintrag um eine Notiz handelt). Jedes Element des Datenfelds enthält folgende Attribute:
    • file_id — ID der Datei
    • original_filename — Originaler Name der Datei

put /v1/zcrm/deals/<deal_id>/feed/<i_id>

Aktualisiert den Inhalt einer existierenden Notiz in Abhängigkeit ihrer ID

Parameter der Adresse

  • deal_id — ID des Deals
  • i_id — ID der Notiz

Parameter

  • content — Neuer Text der Notiz

delete /v1/zcrm/deals/<deal_id>/feed/<i_id>

Löscht eine Notiz in der Oberfläche für Deals in Abhängigkeit ihrer ID

Parameter der Adresse

  • deal_id — ID des Deals
  • i_id — ID der Notiz

Aufgaben

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:

(Antwort 1)

                                    Antwort 1:
{ "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:

(Antwort 1)

                                    Antwort 1:
{ "responsible": 456, "createdBy": 456, "start": "2020-06-03 02:56:00", "end": "2020-06-12 02:56:00", "completed": 1 }

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

(Antwort 3)

                                    Antwort 3:
{ "totalCount": 4, "events": [ { "id": 40, "type": "task", "title": "Create text for Good Company", "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": "Good Company", "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)
    • 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": "Create text for Good Company",
  "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": "Good Company",
      "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)
  • 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:

(Antwort 1)

                                    Antwort 1:
{ "type": "task", "title": "Create text for Good Company", "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)
  • 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

(Antwort 2)

                                    Antwort 2:
{ "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": "Create text for Good Company",
    "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)
  • 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

Anrufe

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:
  • 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 1)

                                    Antwort 1:
{ "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:

(Antwort 2)

                                    Antwort 2:
{ "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

Antwort

(Antwort 3)

                                    Antwort 3:
{ "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": "Good Company", "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

Dateien

get /v1/zcrm/files/<file_id>

Gibt die Datei anhand ihrer ID her

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.

NOTIFY_START

Beginn eines eingehenden Anrufes in die PBX

Parameter, die auf den Link für Benachrichtigungen geschickt werden:

  • event – Event (NOTIFY_START);
  • call_start – Uhrzeit des Anrufbeginns;
  • pbx_call_id – ID des Anrufs;
  • caller_id – Rufnummer des Anrufenden;
  • called_did – Zielrufnummer.

Erstellung des Prüfungssignatur für Benachrichtigung über eingehende Anrufe, Beispiel in 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 das für den jetzigen Anruf das Szenario einfach und schnell ändern. Schicken Sie hierfür eine Antwort auf den Webhook in einer der folgenden Varianten:

1. Anruf weiterleiten:

(Antwort 1)

                                    Antwort 1:
{ "redirect": ID, "return_timeout": TIMEOUT (необязательное) }

wo,

  • redirect - ID des Szenarios für die Weiterleitung (im Format 0-1, wobei 0 die Nummer des Menüs ist, 1 die Nummer des Szenarios); oder im Format 1, wobei 1 die Nummer des Szenarios ist (in diesem Fall wird angenommen, dass das Menü 0 ist); oder das Menü der PBX im Format 0-main, wobei 0 die ID des Menüs ist; oder eine interne Nummer der PBX (Nummer mit der Ziffern); oder „blacklist“ - in diesem Fall wird der Anruf mit einem Signalton abgelehnt;
  • return_timeout - Angabe in Sekunden. Mögliche Angaben:
    • 0, Anrufe wird in das Menü zurückgeleitet;
    • >= 3 - Dauer des Anrufs auf eine interne Nummer, bis der Anruf auf das Menü zurückgeleitet wird;
  • rewrite_forward_number - Weiterleitung auf eine Telefonnummer. Nicht benötigter Parameter, ist nur zusammen mit dem Parameter redirect verfügbar. Wird benötigt, um die Telefonnummer für die Weiterleitung in den Einstellungen der virtuellen Telefonanlage angegeben ist, „im Fluge“ zu ändern.

2. Anruf tätigen:

(Antwort 2)

                                    Antwort 2:
{ "hangup": 1 }

3. Name für die eingehende Nummer angeben

Sie können einen Namen für die eingehende Nummer (SIP-Feld CallerName) angeben und ihn bei eingehenden Anrufen in der App anzeigen lassen. So können Sie den Namen des Anrufenden angenehm weiterleiten, falls seine Nummer in Ihrem System bekannt ist.

(Antwort 3)

                                    Antwort 3:
{ "caller_name": NAME }

wo:

  • caller_name - Name der Rufnummer.

In allen folgenden Varianten unten (Ziffern 4-7) kann es eine Antwort vom Abonnenten in Form von Ziffern geben. Parameter für die Eingabe der Ziffern:

(Antwort 4)

                                    Antwort 4:
{ "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 (beachten Sie, dass für die Verarbeitung eines Befehls eine Audiodatei mit dem Befehl ivr_play abgespielt werden muss, gemäß Punkt 4 unten). 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.

4. Audiodatei wiedergeben:

(Antwort 5)

                                    Antwort 5:
{ "ivr_play": "ID" }

wo,

  • ivr_play – Wert für die Audiodatei aus der Liste von IDs der hochgeladenen/vorgelesenen Audiodateien.

5. Beliebte Phrase wiedergeben:

(Antwort 6)

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

wo,

  • ivr_saypopular – Nummer der Phrase aus der Liste;

  • Hallo

  • Guten Tag

  • Anrufumleitung

  • Anruf von der Webseite

  • Herzlich willkommen

  • Testnachricht

  • Bitte nicht auflegen

  • Sie rufen uns außerhalb der Geschäftszeiten an

  • Zurzeit sind alle Mitarbeiter belegt, wir werden Sie mit dem ersten freien Mitarbeiter verbinden.

  • Bitte die interne Nummer eingeben

  • Bitte die interne Nummer des Mitarbeiters eingeben

  • Bitte Extension eingeben

  • Bitte warten Sie

  • Bitte geben Sie eine interne Nummer ein oder warten Sie auf Anruf eines unseren Mitarbeiter

  • Bitte hinterlassen Sie eine Nachricht

  • Bitte hinterlassen Sie eine Nachricht nach dem Signalton

  • Bitte rufen Sie uns währen der Geschäftszeiten zurück

  • Wir bedanken uns für Ihren Anruf

  • Danke für Ihren Anruf

  • Bitte warten Sie auf eine Antwort

  • Ihr Anruf ist sehr wichtig für uns

  • Das Gespräch wird aufgenommen

  • Derzeit ist niemand im Büro, der Ihren Anruf entgegennehmen kann

  • Wir rufen Sie so bald wie möglich zurück

  • Heute ist bei uns keine Arbeitstag

  • name - Der Name aus letzte Antwort;

  • digits - Zahlen, die Abonnent angegeben hat;

  • default_behaviour - falls keinen Tastendruck erfolgt und Standardeinstellung eingeschaltet;

6. Ziffern wiedergeben:

(Antwort 7)

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

wo,

  • 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:

(Antwort 8)

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

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

Name für EingangsNummer definieren:

(Antwort 9)

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

wo,

  • caller_name - Nummer-Name.

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

NOTIFY_INTERNAL

Beginn eines eingehenden Anrufes an interne PBX-Nummer

Parameter, die auf den Link für Benachrichtigungen geschickt werden:

  • event – Event (NOTIFY_INTERNAL)
  • call_start – Uhrzeit des Anrufbeginns;
  • pbx_call_id – ID des Anrufs;
  • caller_id – Rufnummer des Anrufenden;
  • called_did – Zielrufnummer;
  • internal – (optional) interne Nummer;
  • transfer_from – (optional) Initiator der Weiterleitung, interne Nummer;
  • transfer_type – (option) Typ der Weiterleitung.

Erstellung des Prüfungssignatur für Benachrichtigung über eingehende Anrufe, Beispiel in PHP:

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

NOTIFY_ANSWER

Anrufannahme an interner oder externer Nummer

Parameter, die auf den Link für Benachrichtigungen geschickt werden:

  • event – Event (NOTIFY_INTERNAL)
  • caller_id – Rufnummer des Anrufenden;
  • destination – Zielrufnummer;
  • call_start – Uhrzeit des Anrufbeginns;
  • pbx_call_id – ID des Anrufs;
  • internal – (optional) interne Nummer;
  • transfer_from – (optional) Initiator der Weiterleitung, interne Nummer;
  • transfer_type – (option) Typ der Weiterleitung.

Erstellung des Prüfungssignatur für Benachrichtigung über eingehende Anrufe, Beispiel in PHP:

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

NOTIFY_END

Ende eines eingehenden Anrufes an interne PBX-Nummer

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));

NOTIFY_OUT_START

Beginn eines ausgehenden Anrufes von der PBX

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));

NOTIFY_OUT_END

Ende eines ausgehenden Anrufes von der PBX

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));

NOTIFY_RECORD

Gesprächsaufnahme ist zum Herunterladen bereit

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));

NOTIFY_IVR

Abonnentenantwort auf definierten Vorgang

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

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

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));

CALL_TRACKING

Informationen über Anrufe auf Nummern, die im Calltracking angeschlossen sind

Wird alle 8 Minuten versendet, falls neue Anrufe vorliegen.

Parameter, die auf den Link für Benachrichtigungen versendet werden:

  • event – Event (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;
    • pbx_call_id - id des Anrufes (außer Toll Free).

Erstellung der Testunterschrift für die Benachrichtigung:

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

SMS

Information über empfangene SMS

Parameter, die an den Link für Benachrichtigung gesendet werden:

  • event – Ereignis (SMS)
  • result – Gruppe;
    • caller_id – Absendernummer;
    • caller_did – Empfängernummer;
    • text – Nachrichtentext.

Erstellung einer Testsignatur:

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

SPEECH_RECOGNITION

Spracherkennungsergebnis

Die Parameter die zum Benachrichtigung benötigt werden:

  • event – Ereignis (SPEECH_RECOGNITION)
  • lang – Sprache;
  • call_id – eindeutige Anruf-ID, diese ID wird im Namen der Datei mit Gesprächaufnahme angegeben;
  • pbx_call_id – Fix-ID des externen Anrufes an PBX;
  • result:
    • words - Gruppe:
      • result - Wortliste (Gruppe):
        • s - Wortstartzeit
        • e - Wortendzeit
        • w - Wort
      • channel - Kanal Nummer
    • phrases - Gruppe:
      • result - Phrase
      • channel - Kanal Nummer