Minder dan een jaar geleden introduceerden we een gratis CRM-systeem geïntegreerd met een gratis PBX. Gedurende deze tijd hebben 14 bedrijven en 000 werknemers er gebruik van gemaakt.
Nu bieden we een open API-interface aan, waarin de meeste functies van ZCRM beschikbaar zijn. Met de API kunt u CRM gebruiken voor alle verkoopkanalen.
Hieronder beschrijven we kort het werk met de API en de beschikbare functionaliteit. Er wordt ook een simpel maar handig en werkend voorbeeld gegeven: een script voor het aanmaken van een lead vanuit een formulier op de site.
Kort over gratis CRM
Laten we niet uitleggen wat CRM is.
Wat betekent gratis? Er zijn geen ZCRM-tarieven of -diensten waarvoor u moet betalen. Het enige waar u voor hoeft te betalen zijn telefoongesprekken en nummers (volgens speciale tarieven is een maandelijks bedrag voor een nummer in Moskou bijvoorbeeld 95 roebel of Londen 1 euro). En als er bijna niet gebeld wordt? U hoeft bijna niet te betalen.
Gratis CRM is actief terwijl gratis PBX Zadarma actief is. Na registratie is de PBX 2 weken actief, in de toekomst is het nodig om het account 1 keer in 3 maanden voor elk bedrag aan te vullen. Het is moeilijk voor te stellen dat een kantoor CRM en PBX nodig heeft, maar er zijn helemaal geen nummers of oproepen nodig.
Waarom je een API nodig hebt voor gratis CRM
De ontwikkeling van ZCRM staat geen minuut stil, er zijn veel grote en kleine functies bijgekomen. Maar we begrijpen dat om een echt functioneel systeem te presenteren, en niet alleen een slimme notebook, telefonie-integratie niet genoeg is.
Hoe meer contacten met de cliënt, hoe beter, en contacten kunnen heel verschillend zijn. Dankzij de API kun je zonder problemen automatisch informatie over de klant/lead en taken invoeren (of juist ontvangen). Hierdoor wordt het mogelijk om alle communicatiekanalen met klanten en andere automatiseringssystemen te verbinden.
Dankzij de API kan gratis ZCRM op elke manier worden gebruikt, geheel of gedeeltelijk. Bijvoorbeeld als handige interface om met een zakelijk klantenbestand te werken, of als eenvoudige handige planner.
Hieronder ziet u een voorbeeld van zo'n kanaal dat verbinding maakt met CRM-leadformulieren op de site. Later op de site zullen we andere voorbeelden geven, bijvoorbeeld het aanmaken van een taak om de klant terug te bellen (uitgestelde oproep).
Basis ZCRM API-methoden
Aangezien er 37 methoden beschikbaar zijn in de ZCRM API, zullen we ze niet allemaal beschrijven, we zullen alleen hun hoofdgroepen beschrijven met voorbeelden.
Een volledige lijst met voorbeelden is beschikbaar op de website op
Het is mogelijk om met de volgende groepen methoden te werken:
- Klanten (algemene lijst, afzonderlijke selecties, bewerken, verwijderen)
- Tags en aanvullende eigenschappen van klanten
- Klantenfeed (inzien, bewerken, verwijderen van items in klantfeeds)
- Medewerkers van de klant (aangezien de klant meestal een rechtspersoon is, kan deze nogal wat werknemers hebben)
- Taken (alle functionaliteit voor het werken met taken)
- Leads (evenzo alle functies)
- CRM-gebruikers (weergave van een lijst met gebruikers, hun rechten, instellingen, contacten en werktijden)
- Oproepen (retourneert een lijst met oproepen)
Omdat de bestaande Zadarma API-structuur wordt gebruikt, zijn er al bibliotheken in PHP, C# en Python beschikbaar op Github.
Voorbeeld van API-gebruik
Het eenvoudigste maar meest bruikbare voorbeeld is het maken van een lead vanuit een formulier. Om de code tot een minimum te beperken, bevat dit voorbeeld alleen de basisleadgegevens. Een soortgelijk voorbeeld, maar met commentaar van de opdrachtgever (meestal aanwezig in elke vorm) is beschikbaar
Een voorbeeld van een html-formulier voor het aanmaken van een lead:
<form method="POST" action="/nl/zcrm_leads">
<label for="name">Name:</label>
<br>
<input type="text" id="name" name="name" value="">
<br>
<label for="phone">Phone:</label><br>
<input type="text" id="phone" name="phones[0][phone]" value="">
<br>
<label for="phone">Email:</label><br>
<input type="text" id="email" name="contacts[0][value]" value="">
<br>
<br>
<input type="submit" value="Submit">
</form>
Dit formulier is uiterst eenvoudig om het artikel niet te overbelasten. Het heeft geen ontwerp, geen captcha, geen commentaarveld. Een versie met een commentaarveld is beschikbaar op onze blog (het commentaar wordt toegevoegd aan de feed van de klant nadat de lead is aangemaakt).
En eigenlijk een PHP-voorbeeld voor het maken van een lead met gegevens uit het formulier:
<?php
$postData = $_POST;
if ($postData) {
if (isset($postData['phones'], $postData['phones'][0], $postData['phones'][0]['phone'])) {
$postData['phones'][0]['type'] = 'work';
}
if (isset($postData['contacts'], $postData['contacts'][0], $postData['contacts'][0]['value'])) {
$postData['contacts'][0]['type'] = 'email_work';
}
$params = ['lead' => $postData];
$params['lead']['lead_source'] = 'form';
$leadData = makePostRequest('/v1/zcrm/leads', $params);
var_dump($leadData);
}
exit();
function makePostRequest($method, $params)
{
// замените userKey и secret на ваши из личного кабинета
$userKey = '';
$secret = '';
$apiUrl = 'https://api.zadarma.com';
ksort($params);
$paramsStr = makeParamsStr($params);
$sign = makeSign($paramsStr, $method, $secret);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl . $method);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($curl, CURLOPT_POSTFIELDS, $paramsStr);
curl_setopt($curl, CURLOPT_HTTPHEADER, [
'Authorization: ' . $userKey . ':' . $sign
]);
$response = curl_exec($curl);
$error = curl_error($curl);
curl_close($curl);
if ($error) {
return null;
} else {
return json_decode($response, true);
}
}
/**
* @param array $params
* @return string
*/
function makeParamsStr($params)
{
return http_build_query($params, null, '&', PHP_QUERY_RFC1738);
}
/**
* @param string $paramsStr
* @param string $method
* @param string $secret
*
* @return string
*/
function makeSign($paramsStr, $method, $secret)
{
return base64_encode(
hash_hmac(
'sha1',
$method . $paramsStr . md5($paramsStr),
$secret
)
);
}
Zoals u kunt zien, is het werken met de API vrij eenvoudig, en er zijn voorbeelden van werken aan
ZCRM evolueert voortdurend en bijna alle nieuwe functies zullen beschikbaar zijn via de API.
We nodigen u ook uit om uw bestaande systeemsystemen te integreren met gratis CRM en PBX Zadarma.
Bron: www.habr.com