# Статистика (statistic)


## Метод “statistic”

Метод позволяет получать статистику по показателям за определенный период времени с детализацией по сотрудникам:

* просмотр общей статистики
* просмотр статистики по новым клиентам с детализацией по сотрудникам
* просмотр статистики по новым и закрытым сделкам с детализацией по сотрудникам
* просмотр статистики по выставленным и оплаченным счетам с детализацией по сотрудникам

<pre><code class="html">URL для вызова - http(s)://crm_url/developer/v2/statistic?параметр=значение</code></pre>

### Варианты парметра "period"

- **today** - сегодня (текущая дата), 
- **yestoday** - вчера,
- **week** - период за последние 7 дней,
- **calendarweek** - текущая календарная неделя
- **calendarweekprev** - предыдущая календарная неделя
- **month** - календарный месяц,
- **prevmonth** - предыдущий календарный месяц,
- **quart** - календарный квартал,
- **prevquart** - предыдущий календарный квартал,
- **year** - календарный год
- **yearprev** - предыдущий календарный год


> ### Примечание
> 
> Сгенерированное изображение диаграммы доступно по ссылке из ответа и актуально в течение 1 часа
> 

<a id="list"></a>
### Запрос “list”

Запрос позволяет получить статистические данные по основным показателям за выбранный период времени.

**Параметры запроса:**

- **period** – период данных
- **user** – login пользователя в SalesMan CRM
- **personal** - параметр, позволяющий выводить информацию только по руководителю, даже если у него есть подчиненные (yes | no - по умолчанию)

**Пример формирования запроса в PHP:**

<pre><code class="php">
$params = [
	"login"  => "vladislav@isaler.ru",
	"apikey" => "aMgiCQyj8bCToNc47BZZYrRICoWSIl",
	"action" => "list",
	"user"   => "marand@isaler.ru",
	"period" => "year",
	"personal" => "yes"
]

$urlparams = http_build_query($params);

</code></pre>

**Ответ:**

<pre><code class="json">
{
	"title":"Статистика",
	"period":"01.01.2018 по 31.12.2018",
    "periodStart":"2018-01-01",
    "periodEnd":"2018-12-31",
	"details":{
		"clients":2,
		"deals":{
			"new":{
				"count":1,
				"sum":55555555
			},
			"close":{
				"count":0,
				"sum":0
			}
		},
		"invoices":{
			"count":0,
			"sum":0
		},
		"payments":{
			"count":1,
			"sum":183816
		}
	}
}
</code></pre>


**Возможные ответы в случае ошибок:**

    400 – Не верный API key
    401 – Неизвестный пользователь
    402 – Неизвестный метод
    403 - Неверный период времени 
    405 - Отсутствует параметр - период для отчетности


<a id="clients"></a>
### Запрос “clients”

Запрос позволяет получить информацию о количестве новых клиентов за заданный период времени с детализацией по сотрудникам.

**Параметры запроса:**

- **period** – период отчетности(обязательное поле)
- **user** - логин сотрудника
- **diagram** - отметка для построения диаграммы("yes")
- **personal** - параметр, позволяющий выводить информацию только по руководителю, даже если у него есть подчиненные (yes | no - по умолчанию)

**Пример формирования запроса в PHP**:

<pre><code class="php">
$params = [
	"login"    => "vladislav@isaler.ru",
	"apikey"   => "aMgiCQyj8bCToNc47BZZYrRICoWSIl",
	"action"   => "clients",
	//"user"     => "marand@isaler.ru"
	"period"   => "month",
	"diagram"  => "yes",
	//"personal" => "yes"
];

$urlparams = http_build_query($params);

</code></pre>


**Ответ**:

<pre><code class="json">
{
	"title":"Новые клиенты",
	"period":"01.07.2018 по 31.07.2018",
    "periodStart":"2018-07-01",
    "periodEnd":"2018-07-31",
	"count":9,
	"details":[
		{	
			"user":"Боровиков Захар",
			"count":"7",
			"part":"77.78%"
		},
		{
			"user":"Андреев Владислав",
			"count":"2",
			"part":"22.22%"
		}
	],
	"url":"sm2018.crm\/files\/statistic\/diagram-1532680386.png"
}
</code></pre>


**Возможные ответы в случае ошибок:**

    400 – Не верный API key
    401 – Неизвестный пользователь
    402 – Неизвестный метод
    403 – Неверный период времени
    405 – Отсутствуют параметры - период для отчета


<a id="dealsNew"></a>
### Запрос “dealsNew”

Запрос позволяет получить информацию о количестве новых сделок за заданный период времени с детализацией по сотрудникам.

> ### Примечание
> 
> Данные выводятся по Автору сделки, а не по Ответственному
> 

**Параметры запроса:**

- **period**  – период отчетности(обязательное поле)
- **user**    - логин сотрудника
- **diagram** - отметка для построения диаграммы("yes")
- **personal** - параметр, позволяющий выводить информацию только по руководителю, даже если у него есть подчиненные (yes | no - по умолчанию)

**Пример формирования запроса в PHP**:

<pre><code class="php">
$params = [
	"login"    => "vladislav@isaler.ru",
	"apikey"   => "aMgiCQyj8bCToNc47BZZYrRICoWSIl",
	"action"   => "dealsNew",,
	"user"     => "vladislav@isaler.ru"
	"period"   => "year"
	"diagram"  => "yes"
];

$urlparams = http_build_query($params);

</code></pre>


**Ответ**:

<pre><code class="json">
{
	"title":"Новые сделки",
	"period":"01.01.2018 по 31.12.2018",
	"periodStart":"2018-01-01",
	"periodEnd":"2018-12-31",
	"count":1,
	"details":{
		"user":"Андреев Владислав",
		"count":"1",
		"summa":"55555555.00"
	}
}
</code></pre>


**Возможные ответы в случае ошибок:**

    400 – Не верный API key
    401 – Неизвестный пользователь
    402 – Неизвестный метод
    403 – Неверный период времени
    405 – Отсутствуют параметры - период для отчета


<a id="dealsClose"></a>
### Запрос “dealsClose”

Запрос позволяет получить информацию о количестве закрытых сделок за заданный период времени с детализацией по сотрудникам.


**Параметры запроса:**

- **period**  – период отчетности(обязательное поле)
- **user**    - логин сотрудника
- **diagram** - отметка для построения диаграммы("yes")
- **personal** - параметр, позволяющий выводить информацию только по руководителю, даже если у него есть подчиненные (yes | no - по умолчанию)

**Пример формирования запроса в PHP**:

<pre><code class="php">
$params = [
	"login"    => "vladislav@isaler.ru",
	"apikey"   => "aMgiCQyj8bCToNc47BZZYrRICoWSIl",
	"action"   => "dealsClose",
	"user"     => "marand@isaler.ru"
	"period"   => "year"
];

$urlparams = http_build_query($params);

</code></pre>

**Ответ**:

<pre><code class="json">
{
	"title":"Закрытые сделки",
	"period":"01.01.2018 по 31.12.2018",
    "periodStart":"2018-01-01",
    "periodEnd":"2018-12-31",
	"count":0,
	"details":"За этот период закрытых сделок не найдено"
}

</code></pre>


**Возможные ответы в случае ошибок:**

    400 – Не верный API key
    401 – Неизвестный пользователь
    402 – Неизвестный метод
    403 – Неверный период времени
    405 – Отсутствуют параметры - период для отчета

<a id="invoices"></a>
### Запрос “invoices”

Запрос позволяет получить информацию о количестве новых выставленных счетов за заданный период времени с детализацией по сотрудникам.

**Параметры запроса:**

- **period**  – период отчетности(обязательное поле)
- **user**    - логин сотрудника
- **diagram** - отметка для построения диаграммы("yes")
- **personal** - параметр, позволяющий выводить информацию только по руководителю, даже если у него есть подчиненные (yes | no - по умолчанию)

**Пример формирования запроса в PHP**:

<pre><code class="php">
$params = [
	"login"    => "vladislav@isaler.ru",
	"apikey"   => "aMgiCQyj8bCToNc47BZZYrRICoWSIl",
	"action"   => "invoices",
	"user"     => "marand@isaler.ru"
	"period"   => "year"
];

$urlparams = http_build_query($params);

</code></pre>

**Ответ**:

<pre><code class="json">
{
	"title":"Новые счета",
	"period":"01.12.2018 по 31.12.2018",
	"count":1,
	"details":{
		"user":"Боровиков Захар",
		"count":"1",
		"summa":"2820.12"
	}
]
}
</code></pre>

**Возможные ответы в случае ошибок:**

    400 – Не верный API key
    401 – Неизвестный пользователь
    402 – Неизвестный метод
    403 – Неверный период времени
    405 – Отсутствуют параметры - период для отчета

<a id="payments"></a>
### Запрос “payments”

Запрос позволяет получить информацию о количестве оплаченных счетов за заданный период времени с детализацией по сотрудникам.

**Параметры запроса:**

- **period**  – период отчетности(обязательное поле)
- **user**    - логин сотрудника
- **personal** - параметр, позволяющий выводить информацию только по руководителю, даже если у него есть подчиненные (yes | no - по умолчанию)
- **diagram** - отметка для построения диаграммы("yes")

**Пример формирования запроса в PHP**:

<pre><code class="php">
$params = [
	"login"    => "vladislav@isaler.ru",
	"apikey"   => "aMgiCQyj8bCToNc47BZZYrRICoWSIl",
	"action"   => "payments",
	"user"     => "marand@isaler.ru"
	"period"   => "week"
];

$urlparams = http_build_query($params);

</code></pre>

**Ответ**:

<pre><code class="json">
{
	"title":"Оплаченные счета",
	"period":"23.07.2018 по 29.07.2018",
    "periodStart":"2018-01-01",
    "periodEnd":"2018-12-31",
	"count":1,
	"details":{
		"user":"Андреев Владислав",
		"count":"2",
		"summa":"18380.00"
	}
}

</code></pre>

**Возможные ответы в случае ошибок:**

    400 – Не верный API key
    401 – Неизвестный пользователь
    402 – Неизвестный метод
    403 – Неверный период времени
    405 – Отсутствуют параметры - период для отчета