API Сделки

Информация по работе с объектом Сделки (deals).

Справочники
GET /pipelines — Получение списка воронок сделок.
GET /stages — Получение списка этапов сделок.
GET /sources — Получение списка источников сделок.
GET /pays — Получение списка статусов оплат сделок.
GET /reasons — Получение списка причин провала сделок.
GET /custom_fields — Получение списка произвольных полей сделок.

Операции
GET / — Получение списка сделок.
GET /$id — Получение карточки сделки.
POST / — Добавление сделки.
PUT /$id — Обновление сделки.
DELETE /$id — Удаление сделки.
GET /positions — Получение списка позиций сделки.
POST /positions — Добавление позиции сделки.
PUT /positions/$id — Обновление позиции сделки.
DELETE /positions/$id — Удаление позиции сделки.

Поля
name — Название (Текст).
description — Описание (Текст).
price — Сумма (Число).
currency — Валюта (Идентификатор валюты).
d_close — Дата сделки (Дата).
account — Организация (Идентификатор организации).
contact — Контакт (Идентификатор контакта).
tender — Тендер (Идентификатор тендера).
people — Работник (Идентификатор работника).
stage — Этап (Идентификатор этапа).
type — Тип (Идентификатор типа).
source — Источник (Идентификатор источника).
pay — Статус оплаты (Идентификатор статуса оплаты).
reason — Причина провала (Идентификатор причины провала).
d_due — Срок оплаты (Дата).
d_pay — Дата оплаты (Дата).
address — Адрес (Текст).
reason_description — Описание причины провала (Текст).
site — Ссылка (Текст).
code — Номер (Текст).
user — Ответственный (Идентификатор пользователя).

Фильтры
id - Идентификатор или массив идентификаторов.
name — Название.
stage — Этап.
account — Организация.
contact — Контакт.
user — Ответственный.
code — Номер.
d_reg1 - Дата добавления (От).
d_reg2 - Дата добавления (До).
d_mod1 - Дата изменения (От).
d_mod2 - Дата изменения (До).


//Пример добавления сделки с указанием определенного этапа продажи на PHP
$apikey = "Ваш API-ключ";
//Получаем список этапов сделок
$url = "https://wirecrm.com/api/v1/deals/stages";
$headers = array("X-API-KEY:".$apikey);
$handle = curl_init();
curl_setopt($handle, CURLOPT_URL, $url);
curl_setopt($handle, CURLOPT_USERAGENT, "WireCRM Rest API");
curl_setopt($handle, CURLOPT_HTTPHEADER, $headers);
curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($handle, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($handle);
curl_close($handle);
$json = json_decode($data);
//Добавляем сделку с первым этапом из списка выше
$url = "https://wirecrm.com/api/v1/deals";
$headers = array("X-API-KEY:".$apikey);
$data = '{"name":"Сделка","description":"Описание сделки","stage":"'.$json->data[0]->id.'","currency":"1"}';
$handle = curl_init();
curl_setopt($handle, CURLOPT_URL, $url);
curl_setopt($handle, CURLOPT_USERAGENT, "WireCRM Rest API");
curl_setopt($handle, CURLOPT_HTTPHEADER, $headers);
curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($handle, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($handle, CURLOPT_POSTFIELDS, $data);
curl_setopt($handle, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($handle);
curl_close($handle);


//Пример фильтрации списка сделок по ответственному на PHP
//$url = "https://wirecrm.com/api/v1/deals?custom_fields[272]=Красный"; (Фильтр по одному произвольному полю)
//$url = "https://wirecrm.com/api/v1/deals?custom_fields[272]=Красный&custom_fields[273]=Синий"; (Фильтр по нескольким произвольным полям)
$url = "https://wirecrm.com/api/v1/deals?custom_fields[272]=Красный";
$apikey = "Ваш API-ключ";
$headers = array("X-API-KEY:".$apikey);
$handle = curl_init();
curl_setopt($handle, CURLOPT_URL, $url);
curl_setopt($handle, CURLOPT_USERAGENT, "WireCRM Rest API");
curl_setopt($handle, CURLOPT_HTTPHEADER, $headers);
curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($handle, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($handle);
curl_close($handle);


//Пример фильтрации списка сделок по периоду добавления на PHP
//https://wirecrm.com/api/v1/deals?d_reg1=2016-06-20 (Фильтр с указанной даты)
//https://wirecrm.com/api/v1/deals?d_reg2=2016-06-20 (Фильтр по указанную дату)
//https://wirecrm.com/api/v1/deals?d_reg1=2016-06-01&d_reg2=2016-06-20 (Фильтр за период)
$url = "https://wirecrm.com/api/v1/deals?d_reg1=2016-06-20";
$apikey = "Ваш API-ключ";
$headers = array("X-API-KEY:".$apikey);
$handle = curl_init();
curl_setopt($handle, CURLOPT_URL, $url);
curl_setopt($handle, CURLOPT_USERAGENT, "WireCRM Rest API");
curl_setopt($handle, CURLOPT_HTTPHEADER, $headers);
curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($handle, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($handle);
curl_close($handle);


//Пример фильтрации списка сделок по ответственному на PHP
$url = "https://wirecrm.com/api/v1/deals?user=1";
$apikey = "Ваш API-ключ";
$headers = array("X-API-KEY:".$apikey);
$handle = curl_init();
curl_setopt($handle, CURLOPT_URL, $url);
curl_setopt($handle, CURLOPT_USERAGENT, "WireCRM Rest API");
curl_setopt($handle, CURLOPT_HTTPHEADER, $headers);
curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($handle, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($handle);
curl_close($handle);


//Пример получения списка сделок с ограничением количества сделок на PHP
//Получаем 10 записей, начиная с третьей записи результата набора данных.
$url = "https://wirecrm.com/api/v1/deals?offset=2&limit=10";
$apikey = "Ваш API-ключ";
$headers = array("X-API-KEY:".$apikey);
$handle = curl_init();
curl_setopt($handle, CURLOPT_URL, $url);
curl_setopt($handle, CURLOPT_USERAGENT, "WireCRM Rest API");
curl_setopt($handle, CURLOPT_HTTPHEADER, $headers);
curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($handle, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($handle);
curl_close($handle);


//Пример отправки заказа в CRM, создается контакт и сделка
//Если контакт в базе уже есть, то сделка прикрепляется к существующему контакту по номеру телефона
//Это готовый пример для подключения обработчика формы на сайте
$apikey = '********************************';
$deal_name = 'Заказ';
$deal_description = 'Заказ с сайта';
$deal_stage = "3245234";
$contact_name = $_POST['name'];
$contact_phone = $_POST['phone'];
$contact_status = "43534534";
if($contact_name && $contact_phone){
//Поиск покупателя в базе по телефону
$url = "https://wirecrm.com/api/v1/contacts?phone=".$contact_phone;
$headers = array("X-API-KEY:".$apikey);
$handle = curl_init();
curl_setopt($handle, CURLOPT_URL, $url);
curl_setopt($handle, CURLOPT_USERAGENT, "WireCRM Rest API");
curl_setopt($handle, CURLOPT_HTTPHEADER, $headers);
curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($handle, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($handle);
$json = json_decode($data);
if($json->success == 'true'){
//Если найден, то добавляем покупателю сделку
$url = "https://wirecrm.com/api/v1/deals";
$headers = array("X-API-KEY:".$apikey);
$data = '{"name":"'.$deal_name.'","description":"'.$deal_description.'","stage":"'.$deal_stage.'","d_close":"'.date("Y-m-d").'","contact":"'.$json->data->rows[0]->id.'","currency":"1"}';
$handle = curl_init();
curl_setopt($handle, CURLOPT_URL, $url);
curl_setopt($handle, CURLOPT_USERAGENT, "WireCRM Rest API");
curl_setopt($handle, CURLOPT_HTTPHEADER, $headers);
curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($handle, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($handle, CURLOPT_POSTFIELDS, $data);
curl_setopt($handle, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($handle);
}else{
//Если не найден
//Добавляем покупателя
$url = "https://wirecrm.com/api/v1/contacts";
$headers = array("X-API-KEY:".$apikey);
$data = '{"name":"'.$contact_name.'","phone":"'.$contact_phone.'","status":"'.$contact_status.'"}';
$handle = curl_init();
curl_setopt($handle, CURLOPT_URL, $url);
curl_setopt($handle, CURLOPT_USERAGENT, "WireCRM Rest API");
curl_setopt($handle, CURLOPT_HTTPHEADER, $headers);
curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($handle, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($handle, CURLOPT_POSTFIELDS, $data);
curl_setopt($handle, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($handle);
$json = json_decode($data);
//Добавляем сделку
if($json->success == 'true' && $json->data > 0){
$url = "https://wirecrm.com/api/v1/deals";
$headers = array("X-API-KEY:".$apikey);
$data = '{"name":"'.$deal_name.'","description":"'.$deal_description.'","stage":"'.$deal_stage.'","d_close":"'.date("Y-m-d").'","contact":"'.$json->data.'","currency":"1"}';
$handle = curl_init();
curl_setopt($handle, CURLOPT_URL, $url);
curl_setopt($handle, CURLOPT_USERAGENT, "WireCRM Rest API");
curl_setopt($handle, CURLOPT_HTTPHEADER, $headers);
curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($handle, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($handle, CURLOPT_POSTFIELDS, $data);
curl_setopt($handle, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($handle);
}
}
}


//Пример вывода полного списка сделок без лимита в 100 записей
$apikey = '********************************';
$limit = 100;
$offset = 0;
$total = 0;
do {
if ($offset != 0) sleep(1);
$url = "https://wirecrm.com/api/v1/deals?limit=".$limit."&offset=".$offset;
$headers = array("X-API-KEY:".$apikey);
$ch = curl_init( $url );
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$content = curl_exec($ch);
$data = json_decode($content,true);
curl_close($ch);
$total = $data['data']['meta']['total'];
print_r($data['data']['rows']);
$offset += $limit;
} while ($offset < $total);
В WireCRM легко вести учет клиентов и продаж, работать с финансами и складом, создавать документы по шаблону. Первые 14 дней бесплатны для всех новых пользователей. Изучите возможности сервиса, ведите учет клиентов и пользуйтесь поддержкой наших специалистов!

Создать аккаунт