# Welcome!

API-интерфейс предназначен для обмена данными между сервисами FreshOffice и внешними клиентами.

Доступ к API осуществляется по протоколу Open Data Protocol. OData — это стандартизованный протокол, специально предназначенный для использования в системах API.&#x20;

Приведённые в описании примеры иллюстрируют некоторые полезные возможности OData в части выборки и представления данных, однако сами по себе эти примеры не являются достаточными для полного понимания принципов работы OData.

В большинстве случаев FreshOffice API соответствует протоколу OData, за исключением следующих моментов:

* Вывод данных осуществляется только в формате JSON, форматы XML и ATOM не поддерживаются;
* Поля метаданных ("\_\_metadata") и связанных сущностей ("\_\_deferred") не выводятся;

{% hint style="success" %}
**Внимание:** документация описывает устройство новой версии API, расположенного по адресу [**do.freshoffice.ru**](https://do.freshoffice.ru/welcome) &#x20;
{% endhint %}

{% hint style="warning" %}
Если вы используете предыдущею версию API  api.myfreshcloud.com, документация здесь <https://freshofficeapi.docs.apiary.io/#>
{% endhint %}


# Quick Start

{% hint style="info" %}
**Обратите внимание:**  для работы с новой версией API, необходимо использовать новые токены. Прежний ключ от предыдущей версии здесь работать не будет.
{% endhint %}

## Получить токен доступа

Для получения токена доступа, вам необходимо перейти в Настройка - API&#x20;

{% hint style="info" %}
**Возьмите на заметку:** необходимо обладать правами доступа к разделу API. Каждый сформированный токен хранится в специальном реестре. Если что-то подойдёт не так, в любой момент можно выключить токен, и весь трафик с его использования будет остановлен.&#x20;
{% endhint %}

## Метод авторизации <a href="#authentication" id="authentication"></a>

**Bearer Token** *⚡️ Content-Type  :  application/json*

{% tabs %}
{% tab title="cURL" %}

```
--header 'Authorization: Bearer XXXXXXX.XXXXXXXX.XXXXXXX'
```

{% endtab %}

{% tab title="PHP" %}

```
 CURLOPT_HTTPHEADER => array(
    'Authorization: Bearer XXXXXXX.XXXXXX.XXXXXXXXX'
  )
```

{% endtab %}

{% tab title="Node (Request)" %}

```
'headers': {
    'Authorization': 'Bearer XXXXXXX.XXXXXXX.XXXXXXX'
  }

```

{% endtab %}

{% tab title="TypeScript" %}

```
// Some code
 constructor(private http: HttpClient) { }
  
// Some code
 public GetWelcome() : Observable<any>
 {
      var token = "XXXXXX.XXXXXX.XXXXXX";
      return this.http.get("https://do.myfreshcloud.com/welcome",
      { headers:
        {"Authorization" : `Bearer ${token}`}
      });
 }
 
```

{% endtab %}
{% endtabs %}

## Первый запрос и первый ответ

{% hint style="info" %}
**Обратите внимание:** для проверки запросов можно использовать [PostMan](https://www.postman.com/) или другой удобный для вас инструмент работы с API
{% endhint %}

Для начала давайте получим ответ Welcome!  ⚡️Это запрос должен содержать токен авторизации

## Welcome!&#x20;

<mark style="color:blue;">`GET`</mark> `https://do.freshoffice.ru/welcome/`

#### Headers

| Name                                            | Type   | Description              |
| ----------------------------------------------- | ------ | ------------------------ |
| Content-Type                                    | String | application/json         |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer XXXXX.XXXXX.XXXXX |

{% tabs %}
{% tab title="200: OK Объект стандартного ответа внутри" %}

```javascript
{
    "status": "success",
    "error": null,
    "code": null,
    "rows": 1,
    "pages": 1,
    "page": 1,
    "value": "Welcome! And let's continue: https://apidoc.myfreshcloud.com/"
}
```

{% endtab %}

{% tab title="401: Unauthorized Ошибка авторизации" %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="cURL" %}

```
curl --location --request GET 'https://do.freshoffice.ru/welcome/first' \
--header 'Authorization: Bearer XXXXXXX.XXXXXXX.XXXXXX'
```

{% endtab %}

{% tab title="PHP" %}

```
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://do.myfreshcloud.com/welcome/first',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'GET',
  CURLOPT_HTTPHEADER => array(
    'Authorization: Bearer XXXXXX.XXXXXXX.XXXXXX'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
```

{% endtab %}

{% tab title="Node (Request)" %}

```
var request = require('request');
var options = {
  'method': 'GET',
  'url': 'https://do.myfreshcloud.com/welcome/first',
  'headers': {
    'Authorization': 'Bearer XXXXXX.XXXXXXX.XXXXXX'
  }
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});
```

{% endtab %}

{% tab title="TypeScript" %}

```javascript
// Some code
 constructor(private http: HttpClient) { }
  
// Some code
 public GetWelcome() : Observable<any>
 {
      var token = "XXXXXX-XXXXX-XXXXX";
      
      return this.http.get("https://do.myfreshcloud.com/welcome/first",
      { headers:
        {"Authorization" : `Bearer ${token}`}
      });
 }

```

{% endtab %}
{% endtabs %}

## Объект ответа&#x20;

```

{
    "status": "success",
    "error": null,
    "code": null,
    "rows": 1,
    "pages": 1,
    "page": 1,
    "value": "Welcome! And let's continue: https://apidoc.myfreshcloud.com/"
}

//  status - статус выполнения [success] [error]
//  error - текст ошибки, при наличии
//  code - код ошибки при наличии
//  rows - количество строк 
//  pages - количество страниц
//  page - текущая страница
//  value - запрошенные данные, обычно в формате JSON

```


# Контрагенты

* Компании
* Физические лица
* Контактные лица внутри компаний
* Телефоны&#x20;
* E-mail адреса
* Платежные реквизиты

<br>


# Список

{% hint style="info" %}
**Нужно помнить:** позиции в списке будут выданы согласно уровня доступа собственника токена.&#x20;

О правах <https://help.myfreshcloud.com/settings/users/access-rights>
{% endhint %}

## Список контрагентов с постраничной выдачей

<mark style="color:green;">`POST`</mark> <https://do.freshoffice.ru/common/list/paging/1?columns=id,name>

{% hint style="danger" %}
myfreshcloud.com - домен API для  подписок которые еще не успели мигрировать \
\
[https://do.myfreshcloud.com/common/list/paging/1?columns=id,name](https://do.freshoffice.ru/common/list/paging/1?columns=id,name)

{% endhint %}

#### Path Parameters

| Name                                 | Type | Description |
| ------------------------------------ | ---- | ----------- |
| /1<mark style="color:red;">\*</mark> | Int  | Код модуля  |

#### Query Parameters

| Name                                      | Type   | Description                          |
| ----------------------------------------- | ------ | ------------------------------------ |
| sorting\_direction                        | Int    | Сортировка 0 Asc 1 Desc              |
| sorting\_column                           | String | Колонка сортировки                   |
| page                                      | int    | Номер страницы                       |
| records\_onpage                           | Int    | Записей на странице, но не более 500 |
| columns<mark style="color:red;">\*</mark> | String | Список колонок                       |

#### Headers

| Name                                            | Type   | Description                |
| ----------------------------------------------- | ------ | -------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer XXXXX-XXXXXXX-XXXXX |
| Content-Type                                    | String | application/json           |

{% tabs %}
{% tab title="200: OK Стандартный объект ответа" %}

```
{
  "status": "success",
  "error": "",
  "code": null,
  "rows": 1,
  "pages": 1,
  "page": 1,
  "value": "[
       {"id":1,"name":"Apple"}
  ]"
```

{% endtab %}

{% tab title="401: Unauthorized " %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}

## Пример

{% tabs %}
{% tab title="cURL" %}

```
curl --location --request 
POST 'https://do.myfreshcloud.com/common/list/paging/1
?columns=id,name
&records_onpage=1000
&sorting_direction=0
&sorting_column=id
&user_ids=37' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer XXXXXX.XXXXXXX.XXXXXX' \
--data-raw ''
```

{% endtab %}

{% tab title="PHP" %}

```
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://do.myfreshcloud.com/common/list/paging/1
  ?columns=id,name
  &records_onpage=1000
  &sorting_direction=0
  &sorting_column=id&user_ids=37',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer XXXXX.XXXXX.XXXXX'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
```

{% endtab %}

{% tab title="NodeJs(Request)" %}

```
var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://do.myfreshcloud.com/common/list/paging/1
  ?columns=id,name
  &records_onpage=1000
  &sorting_direction=0
  &sorting_column=id
  &user_ids=37',
  'headers': {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer XXXXXX.XXXXXX.XXXXXX'
  }
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
})
```

{% endtab %}
{% endtabs %}

## Columns

<table><thead><tr><th width="378">Имя</th><th>Описание</th></tr></thead><tbody><tr><td><strong>id</strong></td><td>Идентификатор контрагента</td></tr><tr><td><strong>name</strong></td><td>Наименование. Наименование контрагента</td></tr><tr><td><strong>address</strong></td><td>Адрес. Адрес контрагента</td></tr><tr><td><strong>create</strong>d</td><td>Дата и время внесения. Дата и время добавления контрагента</td></tr><tr><td><strong>city</strong></td><td>Город. Город контрагента</td></tr><tr><td><strong>region</strong></td><td>Регион. Регион контрагента</td></tr><tr><td><strong>country</strong></td><td>Страна. Страна контрагента</td></tr><tr><td><strong>activity_type</strong></td><td>Деятельность. Вид деятельности контрагента</td></tr><tr><td><strong>property_form</strong></td><td>Форма собственности. Форма собственности контрагента</td></tr><tr><td><strong>type_id</strong></td><td>Идентификатор типа контрагента</td></tr><tr><td><strong>type</strong></td><td></td></tr><tr><td><strong>created_by</strong></td><td>Имя пользователя или способ добавления контрагента</td></tr><tr><td><strong>info_source</strong></td><td>Источник. Регион контрагента</td></tr><tr><td><strong>first_name</strong></td><td>Имя (физического лица)</td></tr><tr><td><strong>middle_name</strong></td><td>Отчество (физического лица)</td></tr><tr><td><strong>last_name</strong></td><td>Фамилия (физическое лица)</td></tr><tr><td><strong>url</strong></td><td>Сайт. Вебсайт контрагента</td></tr><tr><td><strong>user_id</strong></td><td>Ответственный. Идентификатор ответственного пользователя</td></tr><tr><td><strong>user_name</strong></td><td>Ответственный. Имя ответственного пользователя</td></tr><tr><td><strong>person</strong></td><td>Признак ЮР/ФИЗ</td></tr><tr><td><strong>note</strong></td><td>Примечание</td></tr><tr><td><strong>external_code</strong></td><td>Код 1С</td></tr><tr><td><strong>category_id</strong></td><td>Идентификатор категории контрагента</td></tr><tr><td><strong>category</strong></td><td>Категория контрагента</td></tr><tr><td><strong>status_id</strong></td><td>Идентификатор статуса контрагента</td></tr><tr><td><strong>status</strong></td><td>Статус контрагента</td></tr><tr><td><strong>agent_id</strong></td><td>Идентификатор агента</td></tr><tr><td><strong>agent</strong></td><td>Аген</td></tr><tr><td><strong>tax_id</strong></td><td>Код налогоплательщика по списку реквизитов компании</td></tr><tr><td><strong>which_site_source</strong></td><td>Web сайт источник лида</td></tr><tr><td><strong>which_host_source</strong></td><td>Web хост источник лида</td></tr><tr><td><strong>which_link_source</strong></td><td>Полная web ссылка источник лида </td></tr><tr><td><strong>utm_campaign</strong></td><td>UTM campaign</td></tr><tr><td><strong>utm_source</strong></td><td>UTM source</td></tr><tr><td><strong>utm_medium</strong></td><td>UTM medium</td></tr><tr><td><strong>utm_content</strong></td><td>UTM content</td></tr><tr><td><strong>utm_term</strong></td><td>UTM term</td></tr><tr><td><strong>ADD_</strong>{name}</td><td> Дополнительные поля</td></tr></tbody></table>

{% content-ref url="/pages/fZsjhP1J1Ge2uwFxY6jU" %}
[Добавленные поля](/reference/dobavlennye-polya)
{% endcontent-ref %}

## Фильтрация

{% hint style="info" %}
**На заметку:** можно использовать 2 метода фильтрации. Стандартная фильтрация по колонкам. По ID готового фильтра, который был создан внутри приложения, подробней: <https://help.myfreshcloud.com/settings/filters> ⚡️
{% endhint %}

### Колонки фильтрации

```

?id=1
?name=apple
?email=xxx@gmail.com
?phone=+1 890 745 66 89
?tax_id=7811505326
?user_ids=1 or ?user_ids=1,3,4
?page=1 - Номер страницы которую нужно получить

// id - Код компании 
// name - Наименование, поиск по совпадению части символов
// email - Почта контрагента или контактных лиц
// phone - Телефон контрагента или контактных лиц
// tax_id - Код налогоплатильщика по списку реквизитов компании
// user_ids - Код отвественного за контрагента
// page - Номер страницы которую нужно получить

```

> ⚡️ **tax\_id**  \
> В списке реквизитов компании должна быть выбрана позиция по умолчанию: <https://help.myfreshcloud.com/attachment/crm/forms-company>

> **⚡️ user\_ids**   \
> Коды пользователей можно найти в раздели - пользоватли

{% content-ref url="/pages/AZqUPlTdpl1jAyZMvODJ" %}
[Пользователи](/reference/users)
{% endcontent-ref %}

### Готовые пользовательские фильтры

```
?user_filter_ids = 1
or
?user_filter_ids=1,2

// user_filter_ids - ID пользовательского фильтра

```

> **⚡️ user\_filter\_ids**
>
> &#x20;  Коды фильтров можно найти в раздели - фильтры

{% content-ref url="/pages/ND7GU7pvI2AJBjjSRpOA" %}
[Фильтры](/reference/filters)
{% endcontent-ref %}


# Добавление

## Добавление нового контрагента

<mark style="color:green;">`POST`</mark> `https://do.myfreshcloud.com/company/insert`

#### Request Body

| Name                                      | Type | Description |
| ----------------------------------------- | ---- | ----------- |
| company<mark style="color:red;">\*</mark> | JSON |             |

{% tabs %}
{% tab title="200: OK Стандартный объект ответа" %}

```javascript
{
  "status": "success",
  "error": null,
  "code": "0",
  "rows": 1,
  "pages": 1,
  "page": 1,
  "value": "1" 
}
```

{% endtab %}
{% endtabs %}

## JSON&#x20;

<details>

<summary>Все доступные параметры нового объекта </summary>

* **name**  - <mark style="color:green;">\*</mark> <mark style="background-color:blue;">Наименование компании</mark>
* **first\_name** - <mark style="background-color:blue;">Имя физического лица</mark>
* **last\_name** - <mark style="background-color:blue;">Фамилия физического лица</mark>
* **middle\_name** - <mark style="background-color:blue;">Отчество физического лица</mark>
* **person** - <mark style="background-color:blue;">Признак юридическое или физическое лицо \[Int] (1/2)</mark>&#x20;
* **address** - <mark style="background-color:blue;">Основной адрес</mark>&#x20;
* **country** - <mark style="background-color:blue;">Страна</mark>
* **region**  - <mark style="background-color:blue;">Регион</mark>
* **user\_id** - <mark style="color:green;">\*</mark> <mark style="background-color:blue;">Код ответственного</mark>&#x20;
* **type\_id** - <mark style="color:green;">\*</mark> <mark style="background-color:blue;">Код типа</mark>&#x20;
* **status\_id** - <mark style="background-color:blue;">Код статуса</mark>&#x20;
* **category\_id** - <mark style="background-color:blue;">Код категории</mark>
* **url** - <mark style="background-color:blue;">Вэб сайт</mark>
* **activity\_type** - <mark style="background-color:blue;">Род деятельности</mark>
* **info\_source** - <mark style="background-color:blue;">Источник информации</mark>
* **note** -  <mark style="background-color:blue;">Примечание</mark>
* **which\_site\_source -** <mark style="background-color:blue;">Web сайт источник лида</mark>
* **which\_host\_source -** <mark style="background-color:blue;">Web хост источник лида</mark>
* **which\_link\_source -** <mark style="background-color:blue;">Web ссылка перехода источник лида</mark>
* **utm\_campaign -** <mark style="background-color:blue;">UTM источник лида</mark>
* **utm\_source -** <mark style="background-color:blue;">UTM источник лида</mark>
* **utm\_medium -** <mark style="background-color:blue;">UTM источник лида</mark>
* **utm\_content -** <mark style="background-color:blue;">UTM источник лида</mark>
* **utm\_term -** <mark style="background-color:blue;">UTM источник лида</mark>

#### Contacts - <mark style="background-color:purple;">Список контактных лиц</mark>

* **first\_name** - <mark style="background-color:purple;">Имя</mark>
* **last\_name** - <mark style="background-color:purple;">Фамилия</mark>
* **post -** <mark style="background-color:purple;">Должность</mark>
* **note** - <mark style="background-color:purple;">Примечание</mark>
* **status\_id** - <mark style="background-color:purple;">Код статуса контактного лица</mark>
* **Email -** <mark style="background-color:purple;">Список emal адресов контактного лица</mark>
* **Phones** - <mark style="background-color:purple;">Список телефонов контактного лица</mark>

#### Emails - <mark style="background-color:orange;">Список email адресов контрагента</mark>

* **email** - <mark style="background-color:orange;">Email</mark>

#### Phones - <mark style="background-color:yellow;">Список телефонов контрагента</mark>

* **phone** - <mark style="background-color:yellow;">Телефон</mark>
* **descr** - <mark style="background-color:yellow;">Тип телефона</mark>

</details>

```

{
    "name" : "Apple",
    "type_id" : 1,
    "user_id" : 37,
    
    "Contacts": [
                 {
                  "first_name": "John",
                  "last_name": "Smith",
                  "post": "CEO",
                  "note": "The main decision maker",
                  "status_id": 1,
                  "Emails": [
                              {
                               "email": "John@example.com"
                              }
                            ],
                  "Phones": [
                              {
                               "phone": "+1 234 567890",
                               "descr": "mobile"
                              }
                            ]
                   } 
                 ],
        "Emails": [
                     {
                       "email": "company@example.com"
                     }
                  ],
        "Phones": [
                     {
                       "phone": "+1 123 345678",
                        "descr": "Reception"
                      }
                   ]
  }
  
 
```

{% hint style="info" %}
**Обязательные параметры**\
name (Наименование)\
type\_id (Код типа контрагента, можно взять в справчнике)\
user\_id (Код отвесвенного, можно взять пользователях)
{% endhint %}

## Пример

{% tabs %}
{% tab title="cURL" %}

```
curl --location --request POST 'https://do.myfreshcloud.com/company/insert' \
--header 'Authorization: Bearer XXXX-XXXXXXX-XXXXXXX' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name" : "Apple",
    "type_id" : 1,
    "user_id" : 37,
    
    "Contacts": [
                 {
                  "first_name": "John",
                  "last_name": "Smith",
                  "post": "CEO",
                  "note": "The main decision maker",
                  "status_id": 1,
                  "Emails": [
                              {
                               "email": "John@example.com"
                              }
                            ],
                  "Phones": [
                              {
                               "phone": "+1 234 567890",
                               "descr": "mobile"
                              }
                            ]
                   } 
                 ],
        "Emails": [
                     {
                       "email": "company@example.com"
                     }
                  ],
        "Phones": [
                     {
                       "phone": "+1 123 345678",
                        "descr": "Reception"
                      }
                   ]
  }
  '
```

{% endtab %}

{% tab title="PHP" %}

```
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://do.myfreshcloud.com/company/insert',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "name" : "Apple",
    "type_id" : 1,
    "user_id" : 37,
    
    "Contacts": [
                 {
                  "first_name": "John",
                  "last_name": "Smith",
                  "post": "CEO",
                  "note": "The main decision maker",
                  "status_id": 1,
                  "Emails": [
                              {
                               "email": "John@example.com"
                              }
                            ],
                  "Phones": [
                              {
                               "phone": "+1 234 567890",
                               "descr": "mobile"
                              }
                            ]
                   } 
                 ],
        "Emails": [
                     {
                       "email": "company@example.com"
                     }
                  ],
        "Phones": [
                     {
                       "phone": "+1 123 345678",
                        "descr": "Reception"
                      }
                   ]
  }
  ',
  CURLOPT_HTTPHEADER => array(
    'Authorization: Bearer XXXXX-XXXXXXX-XXXXXXXXX',
    'Content-Type: application/json'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
```

{% endtab %}

{% tab title="NodeJS (Request)" %}

```
var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://do.myfreshcloud.com/company/insert',
  'headers': {
    'Authorization': 'Bearer XXXX-XXXXXXX-XXXXXXX',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    "name": "Apple",
    "type_id": 1,
    "user_id": 37,
    "Contacts": [
      {
        "first_name": "John",
        "last_name": "Smith",
        "post": "CEO",
        "note": "The main decision maker",
        "status_id": 1,
        "Emails": [
          {
            "email": "John@example.com"
          }
        ],
        "Phones": [
          {
            "phone": "+1 234 567890",
            "descr": "mobile"
          }
        ]
      }
    ],
    "Emails": [
      {
        "email": "company@example.com"
      }
    ],
    "Phones": [
      {
        "phone": "+1 123 345678",
        "descr": "Reception"
      }
    ]
  })

};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});
```

{% endtab %}
{% endtabs %}

## Справочники

{% content-ref url="/pages/p3ibECb5nmfHj0yEUSon" %}
[Для контрагентов](/reference/directory/directories-company)
{% endcontent-ref %}

{% content-ref url="/pages/AZqUPlTdpl1jAyZMvODJ" %}
[Пользователи](/reference/users)
{% endcontent-ref %}

## Ответ

```
{
  "status": "success",
  "error": null,
  "code": "0",
  "rows": 1,
  "pages": 1,
  "page": 1,
  "value": "1" 
}
// value - ID идентификатор нового контрагента
```


# Сделки

* Список сделок&#x20;
* Товарные позиции в сделках


# Список

{% hint style="info" %}
**Нужно помнить:** позиции в списке будут выданы согласно уровня доступа собственника токена.&#x20;

О правах <https://help.myfreshcloud.com/settings/users/access-rights>
{% endhint %}

## Список сделок с постраничной выдачей

<mark style="color:green;">`POST`</mark> `https://do.myfreshcloud.com/common/list/paging/20`

#### Path Parameters

| Name                                  | Type | Description |
| ------------------------------------- | ---- | ----------- |
| /20<mark style="color:red;">\*</mark> | Int  | Код модуля  |

#### Query Parameters

| Name                                      | Type   | Description                          |
| ----------------------------------------- | ------ | ------------------------------------ |
| columns<mark style="color:red;">\*</mark> | String | Список колонок                       |
| records\_onpage                           | Int    | Записей на странице, но не более 500 |
| page                                      | Int    | Номер страницы                       |
| sorting\_column                           | String | Колонка сортировки                   |
| sorting\_direction                        | Int    | Сортировка 0 Asc 1 Desc              |

#### Headers

| Name                                            | Type   | Description                |
| ----------------------------------------------- | ------ | -------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer XXXXX-XXXXXXX-XXXXX |
| Content-Type<mark style="color:red;">\*</mark>  | String | application/json           |

{% tabs %}
{% tab title="200: OK Стандартный объект ответа" %}

```javascript
{
  "status": "success",
  "error": "",
  "code": null,
  "rows": 1,
  "pages": 1,
  "page": 1,
  "value": "[
       {"id":1,"name":"Sale"}
  ]"
```

{% endtab %}

{% tab title="401: Unauthorized " %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}

## Пример

{% tabs %}
{% tab title="сURL" %}

```
curl --location --request 
POST 'https://do.myfreshcloud.com/common/list/paging/20
?columns=id,name,type,status,sum
&records_onpage=1000
&sorting_direction=0
&sorting_column=id
&user_ids=37
&type_id=1
&date1=2021-01-01&date2=2022-12-31' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer XXXXX.XXXXX.XXXXX' \
--data-raw ''
```

{% endtab %}

{% tab title="PHP" %}

```
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://do.myfreshcloud.com/common/list/paging/20
  ?columns=id,name,type,status,sum
  &records_onpage=1000
  &sorting_direction=0
  &sorting_column=id
  &user_ids=37
  &type_id=1
  &date1=2021-01-01
  &date2=2022-12-31',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer XXXXXX.XXXXXX.XXXXX'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
```

{% endtab %}

{% tab title="NodeJs(Request)" %}

```
// Some code
```

{% endtab %}
{% endtabs %}

## Columns

{% hint style="info" %}
**На заметку:** колонки с префиксом **company\_**  содержат информацию о контрагенте, это может быть как юридическое лицо, так и физическое. В случае с юридическим лицом **company\_name** это название компании, а в случае с физическим лицом это ФИО физ лица.&#x20;
{% endhint %}

| Имя                   | Описние                                             |
| --------------------- | --------------------------------------------------- |
| **id**                | Идентификатор сделки                                |
| **name**              | Наименование                                        |
| **sum**               | Сумма                                               |
| **type\_id**          | Код типа сделки                                     |
| **type**              | Тип сделки                                          |
| **status\_id**        | Код статуса сделки                                  |
| **status**            | Статус сделки                                       |
| **company\_id**       | Код контрагента                                     |
| **company\_name**     | Наименование контрагента                            |
| **company\_type**     | Тип контрагента                                     |
| **company\_status**   | Статус контрагента                                  |
| **company\_category** | Категория контрагента                               |
| **company\_tax\_id**  | Код налогоплательщика по списку реквизитов компании |
| **company\_country**  | Страна контрагента                                  |
| **company\_region**   | Регион контрагента                                  |
| **company\_city**     | Город контрагента                                   |
| **company\_url**      | Вэб сайт контрагента                                |
| **user\_id**          | Код ответственного за сделку                        |
| **user\_name**        | Ответственный за сделку                             |
| **note**              | Примечание к сделке                                 |
| **ADD\_**{name}       | Дополнительные поля                                 |

{% content-ref url="/pages/fZsjhP1J1Ge2uwFxY6jU" %}
[Добавленные поля](/reference/dobavlennye-polya)
{% endcontent-ref %}

## Фильтрация

{% hint style="info" %}
**На заметку:** можно использовать 2 метода фильтрации. Стандартная фильтрация по колонкам. По ID готового фильтра, который был создан внутри приложения, подробней: <https://help.myfreshcloud.com/settings/filters> ⚡️
{% endhint %}

### Колонки фильтрации

```
?id=1
?segment=1 
?user_ids=1  0r ?user_ids=1,3,5
?date1=2021-12-01
?date2=2021-12-31
?company_id=1
?type_id=1
?status_id=1
?page=1

// id - Код сделки 
// user_ids - Код пользователя чьи сделки нужно получить
// date1 - С даты (формат YYYY.MM.DD)
// date2 - По дату (формат YYYY.MM.DD)
// company_id - Код контрагента (все сделки по компании)
// type_id - Код типа сделки
// status_id - Код статуса сделки
// page - Номер страницы которую нужно получить

```

{% hint style="info" %}
⚡️**type\_id**  ⚡️**status\_id**

Коды можно найти в раздели - спрравчники
{% endhint %}

{% content-ref url="/pages/DiE2Qj4rWlKxztIaLzfD" %}
[Справочники](/reference/directory)
{% endcontent-ref %}

{% hint style="info" %}
⚡️**user\_ids**

Коды пользователей можно найти в раздели - пользоватли
{% endhint %}

{% content-ref url="/pages/AZqUPlTdpl1jAyZMvODJ" %}
[Пользователи](/reference/users)
{% endcontent-ref %}


# Добавление

## Добавление новой сделки

<mark style="color:green;">`POST`</mark> `https://do.myfreshcloud.com/deal/insert`

#### Request Body

| Name                                   | Type | Description |
| -------------------------------------- | ---- | ----------- |
| deal<mark style="color:red;">\*</mark> | JSON |             |

{% tabs %}
{% tab title="200: OK Стандартный объект ответа" %}

```javascript
{
  "status": "success",
  "error": null,
  "code": "0",
  "rows": 1,
  "pages": 1,
  "page": 1,
  "value": "1" 
}
```

{% endtab %}
{% endtabs %}

## JSON

<details>

<summary>Все доступные параметры нового объекта </summary>

* **name**  - <mark style="color:green;">\*</mark> <mark style="background-color:blue;">Наименование компании</mark>
* company\_id - <mark style="color:green;">\*</mark> <mark style="background-color:blue;">Код контрагента</mark>
* type\_id - <mark style="color:green;">\*</mark> <mark style="background-color:blue;">Код типа сделки</mark>
* status\_id - <mark style="color:green;">\*</mark> <mark style="background-color:blue;">Код статуса сделки</mark>
* user\_id - <mark style="color:green;">\*</mark> <mark style="background-color:blue;">Код ответственного за сделку</mark>&#x20;
* sum - <mark style="background-color:blue;">Сумма сделки</mark>
* date\_start - <mark style="color:green;">\*</mark> <mark style="background-color:blue;">Дата начала</mark>
* date\_finish - <mark style="color:green;">\*</mark> <mark style="background-color:blue;">Дата завершения</mark>
* note - <mark style="background-color:blue;">Примечание к сделке</mark>
* Goods - <mark style="background-color:green;">Список товарных позиций</mark><br>

</details>

```

{
   "name":"test-deal-API",
   "company_id":1,
   "type_id":1,
   "status_id":5,
   "user_id":37,
   "sum":100,
   "date_start":"2022-01-21",
   "date_finish":"2022-01-22",
   "note":"test-Note",
   
    "Goods" : [{
           "goods_id" : 0,
           "discription" : "test-good-API",
           "code" : "0000001",
           "price" : 2000,
           "discount" : 0,
           "qnt" : 1,
           "note" : "test-note-API"
         }]
}
```

{% hint style="info" %}
**Обязательные параметры**\
name \
company\_id\
type\_id (Код типа сдедки, можно взять в справчнике)\
user\_id (Код статума сделки, можно взять в справчнике)\
date\_start\
date\_finish
{% endhint %}

## Пример

{% tabs %}
{% tab title="cURL" %}

```
curl --location --request POST 'https://do.myfreshcloud.com/deal/insert' \
--header 'Authorization: Bearer XXXX-XXXXXXX-XXXXXXX \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "test-deal-API",
    "company_id": 1,
    "type_id": 1,
    "status_id": 5,
    "user_id": 37,
    "sum": 100,
    "date_start": "2022-01-21",
    "date_finish": "2022-01-22",
    "note": "test-Note",
    "Goods": [
        {
            "goods_id": 0,
            "discription": "test-good-API",
            "code": "0000001",
            "price": 2000,
            "discount": 0,
            "qnt": 1,
            "note": "test-note-API"
        }
    ]
}'
```

{% endtab %}

{% tab title="PHP" %}

```
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://do.myfreshcloud.com/deal/insert',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "name": "test-deal-API",
    "company_id": 1,
    "type_id": 1,
    "status_id": 5,
    "user_id": 37,
    "sum": 100,
    "date_start": "2022-01-21",
    "date_finish": "2022-01-22",
    "note": "test-Note",
    "Goods": [
        {
            "goods_id": 0,
            "discription": "test-good-API",
            "code": "0000001",
            "price": 2000,
            "discount": 0,
            "qnt": 1,
            "note": "test-note-API"
        }
    ]
}',
  CURLOPT_HTTPHEADER => array(
    'Authorization: Bearer XXXX-XXXXXXX-XXXXXXX',
    'Content-Type: application/json'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
```

{% endtab %}

{% tab title="NodeJS (Request) " %}

```
var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://do.myfreshcloud.com/deal/insert',
  'headers': {
    'Authorization': 'Bearer XXX-XXXXXXXX-XXXXXX',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    "name": "test-deal-API",
    "company_id": 1,
    "type_id": 1,
    "status_id": 5,
    "user_id": 37,
    "sum": 100,
    "date_start": "2022-01-21",
    "date_finish": "2022-01-22",
    "note": "test-Note",
    "Goods": [
      {
        "goods_id": 0,
        "discription": "test-good-API",
        "code": "0000001",
        "price": 2000,
        "discount": 0,
        "qnt": 1,
        "note": "test-note-API"
      }
    ]
  })

};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});
```

{% endtab %}
{% endtabs %}

{% content-ref url="/pages/DiE2Qj4rWlKxztIaLzfD" %}
[Справочники](/reference/directory)
{% endcontent-ref %}

{% content-ref url="/pages/AZqUPlTdpl1jAyZMvODJ" %}
[Пользователи](/reference/users)
{% endcontent-ref %}

&#x20;


# Почта

* Список всех почтовых сообщений вашей компании
* Письма привязанные к контрагенту
* Письма привязанные к сделке
* Отправить письмо
* Список почтовых аккаунтов


# Список

{% hint style="info" %}
**Нужно помнить:** если нет значений в параметре **user\_ids**, по умолчанию будет показан список писем аккаунтов, которые принадлежат собственнику токена.&#x20;
{% endhint %}

## Список писем с постраничной выдачей

<mark style="color:green;">`POST`</mark> `https://do.myfreshcloud.com/common/list/paging/24`

#### Path Parameters

| Name                                  | Type | Description |
| ------------------------------------- | ---- | ----------- |
| /24<mark style="color:red;">\*</mark> | Int  | Код модуля  |

#### Query Parameters

| Name               | Type   | Description                          |
| ------------------ | ------ | ------------------------------------ |
| columns            | String | Список колонок                       |
| records\_onpage    | Int    | Записей на странице, но не более 500 |
| page               | Int    | Номер страницы                       |
| sorting\_column    | String | Колонка сортировки                   |
| sorting\_direction | Int    | Сортировка {0} Asc / {1} Desc        |

#### Headers

| Name                                            | Type   | Description                |
| ----------------------------------------------- | ------ | -------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer XXXXX-XXXXXXX-XXXXX |
| Content-Type<mark style="color:red;">\*</mark>  | String | application/json           |

{% tabs %}
{% tab title="200: OK Стандартный объект ответа" %}

```javascript
{
  "status": "success",
  "error": "",
  "code": null,
  "rows": 1,
  "pages": 1,
  "page": 1,
  "value": "[
       {"id":1,"subject":"Happy!"}
  ]"
```

{% endtab %}

{% tab title="401: Unauthorized " %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}

## Пример

{% tabs %}
{% tab title="cURL" %}

```
curl --location --request 
POST 'https://do.myfreshcloud.com/common/list/paging/24
?records_onpage=50
&sorting_column=id
&user_ids=37
&sorting_direction=1
&date1=2021-01-01
&date2=2021-12-31
&page=1
&columns=id,subject,from,from_address,to,to_address,small_part_of_body' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer XXXXXX.XXXXXXX.XXXXXX' \
--data-raw ''
```

{% endtab %}

{% tab title="PHP" %}

```
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://do.myfreshcloud.com/common/list/paging/24
  ?records_onpage=50
  &sorting_column=id
  &user_ids=37
  &sorting_direction=1
  &date1=2021-01-01
  &date2=2021-12-31
  &page=1
  &columns=id,subject,from,from_address,to,to_address,small_part_of_body',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer XXXXX.XXXXXX.XXXXXX'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
```

{% endtab %}

{% tab title="NodeJS(Request)" %}

```
var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://do.myfreshcloud.com/common/list/paging/24
  ?records_onpage=50
  &sorting_column=id
  &user_ids=37
  &sorting_direction=1
  &date1=2021-01-01
  &date2=2021-12-31
  &page=1
  &columns=id,subject,from,from_address,to,to_address,small_part_of_body',
  'headers': {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer XXXXXXX.XXXXXXX.XXXXXXX'
  }
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});
```

{% endtab %}
{% endtabs %}

## Columns

{% hint style="info" %}
**На заметку:** колонки с префиксом **company\_**  содержат информацию о контрагенте, это может быть как юридическое лицо, так и физическое. В случае с юридическим лицом **company\_name** это название компании, а в случае с физическим лицом это ФИО физ лица.&#x20;
{% endhint %}

| Имя                       | Описание                                                                                                                                                                                                                                                                                            |
| ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **id**                    | Код письма                                                                                                                                                                                                                                                                                          |
| **from**                  | От кого, имя или адрес                                                                                                                                                                                                                                                                              |
| **from\_address**         | Адрес отправителя                                                                                                                                                                                                                                                                                   |
| **to**                    | Кому, имя или адрес                                                                                                                                                                                                                                                                                 |
| **to\_address**           | Адрес получателя                                                                                                                                                                                                                                                                                    |
| **cc**                    | Копия получателя                                                                                                                                                                                                                                                                                    |
| **bcc**                   | Скрытая копия получателя                                                                                                                                                                                                                                                                            |
| **subject**               | Тема                                                                                                                                                                                                                                                                                                |
| **date**                  | Дата                                                                                                                                                                                                                                                                                                |
| **user\_name**            | Имя собственника аккаунта                                                                                                                                                                                                                                                                           |
| **company\_name**         | Наименование контрагента                                                                                                                                                                                                                                                                            |
| **company\_id**           | Идентификатор контрагента                                                                                                                                                                                                                                                                           |
| **contact\_id**           | Код контактного лица                                                                                                                                                                                                                                                                                |
| **contact**               | Имя контактного лица                                                                                                                                                                                                                                                                                |
| **company\_type\_id**     | Код типа контрагента                                                                                                                                                                                                                                                                                |
| **company\_type**         | Тип контрагента                                                                                                                                                                                                                                                                                     |
| **company\_category\_id** | Код категории контрагента                                                                                                                                                                                                                                                                           |
| **company\_category**     | Категория контрагента                                                                                                                                                                                                                                                                               |
| **company\_status\_id**   | Код статуса контрагента                                                                                                                                                                                                                                                                             |
| **company\_status**       | Статус контрагента                                                                                                                                                                                                                                                                                  |
| **dea**l                  | Наименование сделки                                                                                                                                                                                                                                                                                 |
| **deal\_id**              | Идентификатор сделки                                                                                                                                                                                                                                                                                |
| **message\_id**           | Уникальной ID сообщения сформированный  почтённым сервером                                                                                                                                                                                                                                          |
| **attachment\_flag**      | Признак наличия прикрепления (0/1)                                                                                                                                                                                                                                                                  |
| **small\_part\_of\_body** | Первый 255 символов от контента письма                                                                                                                                                                                                                                                              |
| **body**                  | <p>Содержание письма в формате HTML<br>⚡️  <br>Не рекомендуется указывать колонку в больших списочных запросах. По возможности получайте позицию <strong>одного</strong> <strong>письма</strong> по <strong>id.</strong> Параметр фильтрации <mark style="background-color:green;">id=xx</mark></p> |

## Фильтрация

{% hint style="info" %}
**На заметку:** можно использовать 2 метода фильтрации. Стандартная фильтрация по колонкам. По ID готового фильтра, который был создан внутри приложения, подробней: <https://help.myfreshcloud.com/settings/filters> ⚡️
{% endhint %}

### **Колонки фильтрации**

```

?id=1
?segment=1 
?user_ids=1  0r ?user_ids=1,3,5
?date1=2021-12-01
?date2=2021-12-31
?subject=Hapy!
?to_address="support@myfreshcloud.com"
?from_address="support@myfreshcloud.com"
?company_id=1
?deal_id=1
?page=1

// id - Код письма 
// segment - Код папки письма (см.описание)
// user_ids - Код пользователя чьи аккаунты нужно просмотреть
// date1 - С даты (формат YYYY.MM.DD)
// date2 - По дату (формат YYYY.MM.DD)
// subject - Тема письма
// to_address - Email адрес кому
// from_address - Email адрес от кого (все письма по сделке)
// company_id - Код контрагента (все письма по компании)
// deal_id - Код сделки
// page - Номер страницы которую нужно получить

```

> ⚡️**user\_ids**
>
> Коды пользователей можно найти в раздели - пользоватли

{% content-ref url="/pages/AZqUPlTdpl1jAyZMvODJ" %}
[Пользователи](/reference/users)
{% endcontent-ref %}

> ⚡️**segment**&#x20;
>
> 1. Входящие
> 2. Отправленные
> 3. Черновики
> 4. Корзина
> 5. Спам
> 6. Еще

### Готовые пользовательские фильтры

```

?user_filter_ids = 1
or
?user_filter_ids=1,2

```

> **⚡️ user\_filter\_ids**
>
> &#x20;  Коды фильтров можно найти в раздели - фильтры

{% content-ref url="/pages/ND7GU7pvI2AJBjjSRpOA" %}
[Фильтры](/reference/filters)
{% endcontent-ref %}


# Отправить

## Отправка email сообщения&#x20;

<mark style="color:green;">`POST`</mark> `https://do.myfreshcloud.com/mail/ send`

#### Request Body

| Name                                   | Type   | Description |
| -------------------------------------- | ------ | ----------- |
| mail<mark style="color:red;">\*</mark> | String | JSON        |

{% tabs %}
{% tab title="200: OK Стандартный объект ответа" %}

```javascript
{
  "status": "success",
  "error": null,
  "code": "0",
  "rows": 1,
  "pages": 1,
  "page": 1,
  "value": ""
}
```

{% endtab %}
{% endtabs %}

## JSON

<details>

<summary>Все доступны параметры нового объекта  </summary>

* **account\_id** - Код почтового аккаунта в системе (\*обязательное)
* **to\_address** - Кому (\*обязательное)
* **subject** - Темы в формате ⚡️**Base64** (\*обязательное)
* **body** - Содержания письма в формате ⚡️**Base64**  (\*обязательное)
* **cc -** Копия
* **bcc -** Скрытая копия
* **company\_id** - Код контрагента, к которому будет повязано письма
* **contact\_id** - Код контакта, к которому будет повязано письма
* **deal\_id** - Код сделки, к которому будет повязано письма

</details>

```
{
    "mail" : {
              "account_id" : "4",
              "to_address" : "hello@example.com",
              "subject" : "SGFwcHkh",
              "body" : "SGVsbG8h" 
              }
}

```

{% hint style="info" %}
**Обязательные параметры**\
account\_id (Можно взять в списке аккаунтов)\
to\_address\
subject\
body
{% endhint %}

## Пример

{% tabs %}
{% tab title="cURL" %}

```
url --location --request POST 'https://do.myfreshcloud.com/mail/send' \
--header 'Authorization: Bearer XXXXXX.XXXXXXXX.XXXXXXX' \
--header 'Content-Type: application/json' \
--data-raw '{
    "mail" : {
              "account_id" : "4",
              "to_address" : "exemple@gmail.com",
              "subject" : "SGFwcHkh",
              "body" : "SGVsbG8h" 
              }
}'
```

{% endtab %}

{% tab title="PHP" %}

```
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://do.myfreshcloud.com/mail/send',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "mail" : {
              "account_id" : "4",
              "to_address" : "exemple@gmail.com",
              "subject" : "SGFwcHkh",
              "body" : "SGVsbG8h" 
              }
}',
  CURLOPT_HTTPHEADER => array(
    'Authorization: Bearer XXXXXX.XXXXXXXX.XXXXXXXX',
    'Content-Type: application/json'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
```

{% endtab %}

{% tab title="NodeJS (Request) " %}

```
var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://do.myfreshcloud.com/mail/send',
  'headers': {
    'Authorization': 'Bearer XXXXXXXX.XXXXXXXXXXX.XXXXXXX',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    "mail": {
      "account_id": "4",
      "to_address": "iskuzer@gmail.com",
      "subject": "SGFwcHkh",
      "body": "SGVsbG8h"
    }
  })

};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});

```

{% endtab %}
{% endtabs %}

{% content-ref url="/pages/sa5JLu6FKkBkJkbgBfvI" %}
[Почтовые аккаунты](/reference/mail/accounts)
{% endcontent-ref %}

## Ответ

```
{
  "status": "success",
  "error": null,
  "code": "0",
  "rows": 1,
  "pages": 1,
  "page": 1,
  "value": ""
}
```


# Почтовые аккаунты

{% hint style="info" %}
**Нужно помнить:** вы получите список почтовых аккаунтов которые принадлежат собственнику токена. Или к которым предоставлен доступ
{% endhint %}

## Список доступных почтовых аккаунтов

<mark style="color:blue;">`GET`</mark> `https://do.myfreshcloud.com/mail/accounts`

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
   
  "status": "success",
  "error": "",
  "code": null,
  "rows": 0,
  "pages": 0,
  "page": 0,
  "value": [
             {
                "id": 4,
                "user_id": 37,
                "imap": "imap.mail.ru",
                "port": 993,
                "ssl": true,
                "login": "isugnach@mail.ru",
                "email": "isugnach@mail.ru",
                "flag": "M",
                "signature": "HTML code of signature",
                "smtphost": "smtp.mail.ru",
                "smtpport": 587,
                "smtpssl": true,
                "user_name": "Директор",
                "avatar": "url"
               }
            ]
  }
```

{% endtab %}
{% endtabs %}

## Columns

| Имя            | Описание                          |
| -------------- | --------------------------------- |
| **id**         | Код                               |
| **user\_id**   | Код пользователя                  |
| **imap**       | IMAP сервер                       |
| **port**       | PORT imap сервера                 |
| **ssl**        | Использовать SSL                  |
| **login**      | Логин                             |
| **email**      | Email                             |
| **signature**  | Подпись в формате HTML            |
| **flag**       | Флаг состояния аккаунта \[M]/\[D] |
| **smtphost**   | SMTP сервер                       |
| **smtpport**   | PORT smtp сервера                 |
| **smtpssl**    | Использовать SSL                  |
| **user\_name** | Имя пользователя системы          |
| **avatar**     | URL на аватар пользователя        |

{% content-ref url="/pages/AZqUPlTdpl1jAyZMvODJ" %}
[Пользователи](/reference/users)
{% endcontent-ref %}


# Пользователи

{% hint style="info" %}
**Обратите внимание:** в списке пользователей доступны только активные  <https://help.myfreshcloud.com/settings/users/off>
{% endhint %}

## Список активных пользователей системы

<mark style="color:blue;">`GET`</mark> `https://do.myfreshcloud.com/users/list`

#### Headers

| Name                                            | Type   | Description               |
| ----------------------------------------------- | ------ | ------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer XXXXXX.XXXXX.XXXXX |
| Content-Type                                    | String | application/json          |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
  "status": "success",
  "error": "",
  "code": null,
  "rows": 0,
  "pages": 0,
  "page": 0,
  "value": "[
              {
                "id": 37,
                "name": "Jon Mac",
                "department": "Mamagment",
                "phone": "+1 800 000 001",
                "phone_work": "+ 1 800 000 002",
                "email": "exemple@exemple.com",
                "group_id": 1,
                "online": 2,
                "regonline": "2021-07-07 T17:17:33.06",
                "time_zone_offset": "3",
                "avatar": "URL to avatar",
                "position": "CEO"
               }
              ]"
             
```

{% endtab %}

{% tab title="401: Unauthorized " %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}

## Columns

| Имя                    | Описание                  |
| ---------------------- | ------------------------- |
| **id**                 | Код                       |
| **name**               | Имя                       |
| **department**         | Отдел компании            |
| **position**           | Должность                 |
| **phone**              | Телефон                   |
| **phone\_work**        | Телефон рабочий           |
| **email**              | Email                     |
| **group\_id**          | Группа доступа            |
| **online**             | Статус                    |
| **regonline**          | Время обновления статуса  |
| **time\_zone\_offset** | Часовой пояс пользователя |
| **avatar**             | Ссылка на аватар          |


# Фильтры

{% hint style="info" %}
**Обратите внимание:** в списке будут показаны общедоступные фильтры или созданные владельцем токена <https://help.myfreshcloud.com/settings/filters>
{% endhint %}

## Список пользовательских фильтров

<mark style="color:blue;">`GET`</mark> `https://do.myfreshcloud.com/filter/list/custom?id_module=1`

#### Query Parameters

| Name       | Type | Description        |
| ---------- | ---- | ------------------ |
| id\_module | Int  | Код модуля системы |

#### Headers

| Name          | Type   | Description              |
| ------------- | ------ | ------------------------ |
| Authorization | String | Bearer XXXXX.XXXXX.XXXXX |
| Content-Type  | String | application/json         |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
  "status": "success",
  "error": "",
  "code": null,
  "rows": 0,
  "pages": 0,
  "page": 0,
  "value": [
             {
               "id": 48,
               "id_module": 1,
               "is_public": true,
               "name": "Пример",
               "user_id": 37,
               "limitation": false,
               "date_limitation": null
              }
            ]
}
```

{% endtab %}

{% tab title="401: Unauthorized " %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}

> ⚡️**id\_module**
>
> 1. Контрагенты
> 2. Задачи
> 3. Проекты
> 4. Документы
> 5. Финанасы
>
> 20\.  Сделки
>
> 24\.  Почта

## Columns

<table><thead><tr><th width="249">Имя</th><th>Описание</th></tr></thead><tbody><tr><td><strong>id</strong></td><td>Код фильтра</td></tr><tr><td><strong>id_module</strong></td><td>Код модуля системы</td></tr><tr><td><strong>is_public</strong></td><td>Признак общедоступности фильтра</td></tr><tr><td><strong>name</strong></td><td>Наименование</td></tr><tr><td><strong>user_id</strong></td><td>Код пользователя создавшего фильтр</td></tr><tr><td><strong>limitation</strong></td><td>Признак ограниченного срока жизни фильтра</td></tr><tr><td><strong>date_limitation</strong></td><td>Дата когда фильтр будет удален</td></tr></tbody></table>


# Добавленные поля

## Список добавленных полей

<mark style="color:blue;">`GET`</mark> `https://do.myfreshcloud.com/common/columns/additional?id_module=1`

#### Query Parameters

| Name       | Type | Description        |
| ---------- | ---- | ------------------ |
| id\_module | Int  | Код модуля системы |

#### Headers

| Name          | Type   | Description              |
| ------------- | ------ | ------------------------ |
| Authorization | String | Bearer XXXXX.XXXXX.XXXXX |
| Content-Type  | String | application/json         |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
  "status": "success",
  "error": "",
  "code": null,
  "rows": 0,
  "pages": 0,
  "page": 0,
  "value": [
              {
                "ID": 10,
                "ID_MODULE": 1,
                "ADD_FIELD_NAME": "ADD_COMPANY_N72",
                "ADD_FIELD_TYPE": "nVARCHAR (4000)",
                "ADD_FIELD_CAPTION": "Пример поля",
                "ADD_FIELD_SIZE": 100,
                "ENABLED_FILED": "False",
                "ID_LIST_SETTINGS_SPR": 30,
                "USER_NAME_CREATE": "Директор",
                "DATE_CREATE": "2021-07-30T18:51:41.67",
                "LOGIC_FIELD": 0,
                "FULL_DATE_FIELD": "TIME_FIELD": 0,
                "IMAGE_FIELD": 0,
                "EXTENSION_FIELD": 0,
                "IS_DELETED": null,
                "SPR_NAME": "Статьи приходов расходов",
               }
              ]
}
```

{% endtab %}

{% tab title="401: Unauthorized " %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}

> ⚡️**id\_module**
>
> 1. Контрагенты
> 2. Задачи
> 3. Проекты
> 4. Документы
> 5. Финанасы
>
> 20\.  Сделки

## Columns

| Имя                     | Описание                                                                                                           |
| ----------------------- | ------------------------------------------------------------------------------------------------------------------ |
| ID                      | Код                                                                                                                |
| ID\_MODULE              | Код модуля системы                                                                                                 |
| ADD\_FIELD\_NAME        | Наименование колонки, именно этот параметр используется при запросе дополнительных данных в разных модулях системы |
| ADD\_FIELD\_TYPE        | Тип данных                                                                                                         |
| ADD\_FIELD\_CAPTION     | Подпись колонки                                                                                                    |
| ENABLED\_FILED          | Колонка включена или нет                                                                                           |
| USER\_NAME\_CREATE      | Создатель                                                                                                          |
| DATE\_CREATE            | Дата создания                                                                                                      |
| LOGIC\_FIELD            | Поле логическое или нет                                                                                            |
| SPR\_NAME               | Наименование справочника к которому привязана колонка                                                              |
| ID\_LIST\_SETTINGS\_SPR | Код справочника                                                                                                    |


# Справочники

{% content-ref url="/pages/p3ibECb5nmfHj0yEUSon" %}
[Для контрагентов](/reference/directory/directories-company)
{% endcontent-ref %}

{% content-ref url="/pages/X6k0XH0d1cEjuZXLPJhr" %}
[Для сделок](/reference/directory/directories-deal)
{% endcontent-ref %}


# Для контрагентов

## Типы

## Список значений справочника

<mark style="color:blue;">`GET`</mark> `https://do.myfreshcloud.com/directory/9`

#### Path Parameters

| Name                                 | Type | Description     |
| ------------------------------------ | ---- | --------------- |
| /9<mark style="color:red;">\*</mark> | Int  | Код справочника |

#### Headers

| Name                                            | Type   | Description              |
| ----------------------------------------------- | ------ | ------------------------ |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer XXXXX.XXXXX.XXXXX |
| Content-Type                                    | String | application/json         |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
  "status": "success",
  "error": "",
  "code": null,
  "rows": 0,
  "pages": 0,
  "page": 0,
  "value": "[
               {
                "ID": 1,
                "NAME": "Some value"
                }
            ]"
}
```

{% endtab %}

{% tab title="401: Unauthorized " %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}

## Статусы

## Список значений справочника

<mark style="color:blue;">`GET`</mark> `https://do.myfreshcloud.com/directory/10`

#### Path Parameters

| Name                                  | Type | Description     |
| ------------------------------------- | ---- | --------------- |
| /10<mark style="color:red;">\*</mark> | Int  | Код справочника |

#### Headers

| Name                                            | Type   | Description              |
| ----------------------------------------------- | ------ | ------------------------ |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer XXXXX.XXXXX.XXXXX |
| Content-Type                                    | String | application/json         |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
  "status": "success",
  "error": "",
  "code": null,
  "rows": 0,
  "pages": 0,
  "page": 0,
  "value": "[
               {
                "ID": 1,
                "NAME": "Some value"
                }
            ]"
```

{% endtab %}

{% tab title="401: Unauthorized " %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}

## Категории

## Список значений справочника

<mark style="color:blue;">`GET`</mark> `https://do.myfreshcloud.com/directory/29`

#### Path Parameters

| Name                                  | Type | Description     |
| ------------------------------------- | ---- | --------------- |
| /29<mark style="color:red;">\*</mark> | Int  | Код справочника |

#### Headers

| Name                                            | Type   | Description              |
| ----------------------------------------------- | ------ | ------------------------ |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer XXXXX.XXXXX.XXXXX |
| Content-Type                                    | String | application/json         |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
  "status": "success",
  "error": "",
  "code": null,
  "rows": 0,
  "pages": 0,
  "page": 0,
  "value": "[
               {
                "ID": 1,
                "NAME": "Some value"
                }
            ]"
```

{% endtab %}

{% tab title="401: Unauthorized " %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}

## Columns

| Имя      | Описание      |
| -------- | ------------- |
| **ID**   | Идентификатор |
| **NAME** | Значение      |


# Для сделок

## Типы

## Список значений справочника типы сделок

<mark style="color:blue;">`GET`</mark> `https://do.myfreshcloud.com/directory/32`

#### Path Parameters

| Name                                  | Type | Description     |
| ------------------------------------- | ---- | --------------- |
| /32<mark style="color:red;">\*</mark> | Int  | Код справочника |

#### Headers

| Name                                            | Type   | Description               |
| ----------------------------------------------- | ------ | ------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer XXXXX.XXXXXX.XXXXX |
| Content-Type                                    | String | application/json          |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
  "status": "success",
  "error": "",
  "code": null,
  "rows": 0,
  "pages": 0,
  "page": 0,
  "value": "[
               {
                "ID": 1,
                "NAME": "Some value"
                }
            ]"
}
```

{% endtab %}

{% tab title="401: Unauthorized " %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}

## Columns

| Имя  | Описание      |
| ---- | ------------- |
| ID   | Идентификатор |
| NAME | Значение      |

## Статусы

{% hint style="info" %}
**Обратите внимание:**  у разных типов сделок свои статусы, это необходимо учесть при добавлении или изменении сделки. ⚡️**ID\_TYPE\_OF\_DEAL** указывает на код типа сделки к которому отнесен статус. ⚡️**IS\_FINAL** колонка указывает являться ли статус закрывающим для сделки, закрывающие статусы являются общими для всех типов сделок.
{% endhint %}

## Список значений справочника статусы сделок

<mark style="color:blue;">`GET`</mark> `https://do.myfreshcloud.com/directory/31`

#### Path Parameters

| Name                                  | Type | Description     |
| ------------------------------------- | ---- | --------------- |
| /31<mark style="color:red;">\*</mark> | Int  | Код справочника |

#### Headers

| Name          | Type   | Description               |
| ------------- | ------ | ------------------------- |
| Authorization | String | Bearer XXXXX.XXXXXX.XXXXX |
| Content-Type  | String | application/json          |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
  "status": "success",
  "error": "",
  "code": null,
  "rows": 0,
  "pages": 0,
  "page": 0,
  "value": "[
               {
                "ID": 1,
                "NAME": "Some value",
                "ID_TYPE_OF_DEAL" : 1,
                "IS_FINAL" : false
                }
            ]"
}
```

{% endtab %}

{% tab title="401: Unauthorized " %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}

## Columns

| Имя                    | Описание                                                                                                                   |
| ---------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| **ID**                 | Идентификатор                                                                                                              |
| **NAME**               | Значение                                                                                                                   |
| **ID\_TYPE\_OF\_DEAL** | Статус отнесен к типу сделки                                                                                               |
| **IS\_FINAL**          | <p>Флаг указывает, статус является закрывающем для сделки или нет <br><strong>true</strong> или <strong>false</strong></p> |


