# Заказы

## Список заказов в мастерской

<mark style="color:blue;">`GET`</mark> `https://api.livesklad.com/shops/{id}/orders`

Возвращает массив заказов для мастерской. Для получения списка заказов у API должен быть настроен доступ к заказам и доступ к соответствующей мастерской\
\
Для сортировки результата необходимо в параметре **sort** передать строку "**<название\_поля> ASC**" или "**<название\_поля> DESC**". Где **ASC** - сортировать по возрастанию, **DESC** - сортировать по убыванию, **<название\_поля>** - поле по которому осуществляется сортировка, может быть одно из: **id**, **sn**, **typeOrder**, **manager**, **closeManager**, **master**, **brand**, **model**, **typeDevice**, **node**, **problem**, **completeSet**, **number**, **num**, **dateCreate**, **lastAction**, **dateClose**, **dateFinish**, **deadline**, **statusDeadline**, **counteragent**, **address**, **summ**, **cash**, **status**, **isUrgent**. По умолчанию заказы сортируются от новых к старым\
\
Фильтры по датам передаются в виде массива из двух чисел в формате Unix (**в миллисекундах**), где первый число - это начало диапазона, а второе - конец диапазона. Если какая-то граница диапазона отсутствует, то вместо нее нужно передать null. Например \[1690837200000,1693515599999] или \[null,1693515599999]

Из списка с любым заданным набором фильтров можно получить максимум 10000 элементов, то есть максимальное значение для **page** \* **pageSize** = 10000. Чтобы получить другие элементы, нужно либо изменить фильтр, либо изменить сортировку

#### Path Parameters

| Name                                 | Type   | Description   |
| ------------------------------------ | ------ | ------------- |
| id<mark style="color:red;">\*</mark> | string | id мастерской |

#### Query Parameters

| Name             | Type    | Description                                                                                                                                                                                    |
| ---------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| isVisible        | boolean | Фильтр по удаленным заказам. Если true - будут считаны только не удаленные заказы, если false - будут считаны только удаленные заказы, если параметр не отсутствует - будут считаны все заказы |
| sort             | string  | Сортировка                                                                                                                                                                                     |
| statusIds        | array   | Фильтр по статусам заказов, передается в виде массива id статусов                                                                                                                              |
| masterId         | string  | Фильтр по мастеру которому назначен заказ                                                                                                                                                      |
| managerId        | string  | Фильтр по менеджеру которому назначен заказ                                                                                                                                                    |
| counteragentId   | string  | Фильтр по контрагенту                                                                                                                                                                          |
| isUrgent         | boolean | Фильтр: "Срочные заказы"                                                                                                                                                                       |
| isDeadline       | boolean | Фильтр: "Просроченные заказы"                                                                                                                                                                  |
| isStatusDeadline | boolean | Фильтр: "Просроченные по норме времени статуса"                                                                                                                                                |
| page             | number  | Номер страницы выборки ( по умолчанию - 1)                                                                                                                                                     |
| pageSize         | number  | Количество элементов в выборке (по умолчанию - 10, максимум - 50)                                                                                                                              |
| filter           | string  | Текст для поиска по содержимому заказа                                                                                                                                                         |
| dateCreate       | array   | Фильтр по дате создания                                                                                                                                                                        |
| dateFinish       | array   | Фильтр по дате готовности                                                                                                                                                                      |
| dateClose        | array   | Фильтр по дате выдачи                                                                                                                                                                          |
| deadline         | array   | Фильтр по дате крайнего срока                                                                                                                                                                  |
| statusDeadline   | array   | Фильтр по дате крайнего срока статуса                                                                                                                                                          |
| lastAction       | array   | Фильтр по дате последнего изменения                                                                                                                                                            |
| num              | number  | Номер заказа (числовой номер, ищет по точному соответствию номера заказа без учета префикса)                                                                                                   |
| numer            | string  | Номер заказа (текстовый номер, ищет по частичному совпадению номера заказа с учетом префикса)                                                                                                  |

#### Headers

| Name                                            | Type   | Description       |
| ----------------------------------------------- | ------ | ----------------- |
| Authorization<mark style="color:red;">\*</mark> | string | Токен авторизации |

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

```json
{
  data: [
    {
      isUrgent: false,
      color: "Белый",
      manager: {
        name: "Фамилия Имя",
        id: "63c015adcce57401c832fab4"
      },
      typeOrder: {
        name: "Платный",
        id: "63c015adcce57401c832fbf4"
      },
      approximatePrice: "3000р",
      counteragent: {
        name: "Кузнецов Евгений Анатольевич",
        rating: -1,
        phones: [
          "+7 (933) 333-33-33"
        ],
        id: "63c015afcce57401c832fc9e"
      },
      isVisible: true,
      dateCreate: "2022-12-12T14:14:07.820Z",
      number: "A000003",
      problem: [
        "Не заряжается"
      ],
      summ: {
        price: 0,
        soldPrice: 0
      },
      typeDevice: "Планшет",
      sn: "355636789089331",
      cash: {
        summ: 0
      },
      device: "Apple iPad 3",
      status: {
        id: "63c015adcce57401c832fbf1",
        name: "Новый",
        color: "#3E8EF7",
        type: "new",
        comment: "none",
        isChange: true
      },
      id: "63c015afcce57401c832fca4",
      shop: {
        id: "63c015adcce57401c832faee",
        name: "Мастерская",
        color: "#ff6666"
      }
    },
    {
      isUrgent: false,
      color: "Синий",
      manager: {
        name: "Фамилия Имя",
        id: "63c015adcce57401c832fab4"
      },
      typeOrder: {
        name: "Платный",
        id: "63c015adcce57401c832fbf4"
      },
      approximatePrice: "4000 р",
      counteragent: {
        name: "Смирнов Иван Андреевич",
        rating: 0,
        phones: [
          "+7 (944) 444-44-44"
        ],
        id: "63c015afcce57401c832fc9f"
      },
      isVisible: true,
      dateCreate: "2022-12-12T14:14:07.820Z",
      number: "A000004",
      problem: [
        "Замена корпуса"
      ],
      summ: {
        price: 0,
        soldPrice: 0
      },
      typeDevice: "Телефон",
      sn: "354578765434567",
      cash: {
        summ: 0
      },
      device: "Alcatel 5080x",
      status: {
        id: "63c015adcce57401c832fbf1",
        name: "Новый",
        color: "#3E8EF7",
        type: "new",
        comment: "none",
        isChange: true
      },
      id: "63c015afcce57401c832fca5",
      shop: {
        id: "63c015adcce57401c832faee",
        name: "Мастерская",
        color: "#ff6666"
      }
    }
  ],
  total: 10,
  page: 1,
  pageSize: 10,
  sort: {
    field: "dateCreate",
    dir: "DESC"
  },
  version: "2.0.0.0",
  remainRequest: 50,
  expireDate: "2022-12-13T09:09:20.861Z"
}
```

{% endtab %}

{% tab title="401 Доступ запрещен" %}

```json
{
  error: {
    statusCode: 401,
    name: "Error",
    message: "Access denied"
  }
}
```

{% endtab %}
{% endtabs %}

## Список заказов без привязки к мастерской

<mark style="color:blue;">`GET`</mark> `https://api.livesklad.com/company/orders`

Возвращает массив заказов найденных по всем мастерским. Для получения списка заказов у API должен быть настроен доступ к заказам\
\
Для сортировки результата необходимо в параметре **sort** передать строку "**<название\_поля> ASC**" или "**<название\_поля> DESC**". Где **ASC** - сортировать по возрастанию, **DESC** - сортировать по убыванию, **<название\_поля>** - поле по которому осуществляется сортировка, может быть одно из: **id**, **sn**, **typeOrder**, **manager**, **closeManager**, **master**, **brand**, **model**, **typeDevice**, **node**, **problem**, **completeSet**, **number**, **num**, **dateCreate**, **lastAction**, **dateClose**, **dateFinish**, **deadline**, **statusDeadline**, **counteragent**, **address**, **summ**, **cash**, **status**, **isUrgent**. По умолчанию заказы сортируются от новых к старым\
\
Фильтры по датам передаются в виде массива из двух чисел в формате Unix (**в миллисекундах**), где первый число - это начало диапазона, а второе - конец диапазона. Если какая-то граница диапазона отсутствует, то вместо нее нужно передать null. Например \[1690837200000,1693515599999] или \[null,1693515599999]

Из списка с любым заданным набором фильтров можно получить максимум 10000 элементов, то есть максимальное значение для **page** \* **pageSize** = 10000. Чтобы получить другие элементы, нужно либо изменить фильтр, либо изменить сортировку

#### Query Parameters

| Name             | Type    | Description                                                                                                                                                                                    |
| ---------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| isVisible        | boolean | Фильтр по удаленным заказам. Если true - будут считаны только не удаленные заказы, если false - будут считаны только удаленные заказы, если параметр не отсутствует - будут считаны все заказы |
| sort             | string  | Сортировка                                                                                                                                                                                     |
| statusIds        | array   | Фильтр по статусам заказов, передается в виде массива id статусов                                                                                                                              |
| masterId         | string  | Фильтр по мастеру которому назначен заказ                                                                                                                                                      |
| managerId        | string  | Фильтр по менеджеру которому назначен заказ                                                                                                                                                    |
| counteragentId   | string  | Фильтр по контрагенту                                                                                                                                                                          |
| isUrgent         | boolean | Фильтр: "Срочные заказы"                                                                                                                                                                       |
| isDeadline       | boolean | Фильтр: "Просроченные заказы"                                                                                                                                                                  |
| isStatusDeadline | boolean | Фильтр: "Просроченные по норме времени статуса"                                                                                                                                                |
| page             | number  | Номер страницы выборки (по умолчанию - 1)                                                                                                                                                      |
| pageSize         | number  | Количество элементов в выборке (по умолчанию - 10, максимум - 50)                                                                                                                              |
| filter           | string  | Текст для поиска по содержимому заказа                                                                                                                                                         |
| dateCreate       | array   | Фильтр по дате создания                                                                                                                                                                        |
| dateFinish       | array   | Фильтр по дате готовности                                                                                                                                                                      |
| dateClose        | array   | Фильтр по дате выдачи                                                                                                                                                                          |
| deadline         | array   | Фильтр по дате крайнего срока                                                                                                                                                                  |
| statusDeadline   | array   | Фильтр по дате крайнего срока статуса                                                                                                                                                          |
| lastAction       | array   | Фильтр по дате последнего изменения                                                                                                                                                            |
| num              | number  | Номер заказа (числовой номер, ищет по точному соответствию номера заказа без учета префикса)                                                                                                   |
| number           | string  | Номер заказа (текстовый номер, ищет по частичному совпадению номера заказа с учетом префикса)                                                                                                  |

#### Headers

| Name                                            | Type   | Description       |
| ----------------------------------------------- | ------ | ----------------- |
| Authorization<mark style="color:red;">\*</mark> | string | Токен авторизации |

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

```json
{
  data: [
    {
      isUrgent: false,
      color: "Белый",
      manager: {
        name: "Фамилия Имя",
        id: "63c015adcce57401c832fab4"
      },
      typeOrder: {
        name: "Платный",
        id: "63c015adcce57401c832fbf4"
      },
      approximatePrice: "3000р",
      counteragent: {
        name: "Кузнецов Евгений Анатольевич",
        rating: -1,
        phones: [
          "+7 (933) 333-33-33"
        ],
        id: "63c015afcce57401c832fc9e"
      },
      isVisible: true,
      dateCreate: "2022-12-12T14:14:07.820Z",
      number: "A000003",
      problem: [
        "Не заряжается"
      ],
      summ: {
        price: 0,
        soldPrice: 0
      },
      typeDevice: "Планшет",
      sn: "355636789089331",
      cash: {
        summ: 0
      },
      device: "Apple iPad 3",
      status: {
        id: "63c015adcce57401c832fbf1",
        name: "Новый",
        color: "#3E8EF7",
        type: "new",
        comment: "none",
        isChange: true
      },
      id: "63c015afcce57401c832fca4",
      shop: {
        id: "63c015adcce57401c832faee",
        name: "Мастерская",
        color: "#ff6666"
      }
    },
    {
      isUrgent: false,
      color: "Синий",
      manager: {
        name: "Фамилия Имя",
        id: "63c015adcce57401c832fab4"
      },
      typeOrder: {
        name: "Платный",
        id: "63c015adcce57401c832fbf4"
      },
      approximatePrice: "4000 р",
      counteragent: {
        name: "Смирнов Иван Андреевич",
        rating: 0,
        phones: [
          "+7 (944) 444-44-44"
        ],
        id: "63c015afcce57401c832fc9f"
      },
      isVisible: true,
      dateCreate: "2022-12-12T14:14:07.820Z",
      number: "A000004",
      problem: [
        "Замена корпуса"
      ],
      summ: {
        price: 0,
        soldPrice: 0
      },
      typeDevice: "Телефон",
      sn: "354578765434567",
      cash: {
        summ: 0
      },
      device: "Alcatel 5080x",
      status: {
        id: "63c015adcce57401c832fbf1",
        name: "Новый",
        color: "#3E8EF7",
        type: "new",
        comment: "none",
        isChange: true
      },
      id: "63c015afcce57401c832fca5",
      shop: {
        id: "63c015adcce57401c832faee",
        name: "Мастерская",
        color: "#ff6666"
      }
    }
  ],
  total: 10,
  page: 1,
  pageSize: 10,
  sort: {
    field: "dateCreate",
    dir: "DESC"
  },
  version: "2.0.0.0",
  remainRequest: 50,
  expireDate: "2022-12-13T09:09:20.861Z"
}
```

{% endtab %}

{% tab title="401 Доступ запрещен" %}

```json
{
  error: {
    statusCode: 401,
    name: "Error",
    message: "Access denied"
  }
}
```

{% endtab %}
{% endtabs %}

## Создание заказа

<mark style="color:green;">`POST`</mark> `https://api.livesklad.com/shops/{id}/orders`

Создает заказ в мастерской. Для создания заказа у API должен быть настроен доступ к заказам и и доступ к соответствующей мастерской, так же должен быть установлен доступ на создание заказов

#### Path Parameters

| Name                                 | Type   | Description   |
| ------------------------------------ | ------ | ------------- |
| id<mark style="color:red;">\*</mark> | string | id мастерской |

#### Headers

| Name                                            | Type   | Description       |
| ----------------------------------------------- | ------ | ----------------- |
| Authorization<mark style="color:red;">\*</mark> | string | Токен авторизации |

#### Request Body

| Name                                          | Type    | Description                                                            |
| --------------------------------------------- | ------- | ---------------------------------------------------------------------- |
| counteragentId                                | string  | id контрагента                                                         |
| name                                          | string  | Имя контрагента                                                        |
| address                                       | string  | Адрес контрагента                                                      |
| phones                                        | array   | Телефоны контрагента, передаются в виде массива строк                  |
| email                                         | string  | email контрагента                                                      |
| isBuyer                                       | boolean | Контрагент является покупателем (по умолчанию - false)                 |
| isVendor                                      | boolean | Контрагент является поставщиком (по умолчанию - false)                 |
| counteragentNode                              | string  | Примечание контрагента                                                 |
| isSendSms                                     | boolean | Контрагенту можно отправлять смс-сообщения (по умолчанию - false)      |
| rating                                        | number  | Рейтинг контрагента (обычный: 0, негативный клиент: -1, позитивный: 1) |
| typeOrderId<mark style="color:red;">\*</mark> | string  | id типа заказа                                                         |
| isUrgent                                      | boolean | Срочный заказ (по умолчанию - false)                                   |
| masterId                                      | string  | id мастера которому необходимо назначить заказ                         |
| managerId                                     | string  | id менеджера которому необходимо назначить заказ                       |
| deadline                                      | number  | Крайний срок заказа (передается в формате Unix, в **миллисекундах**)   |
| typeDevice                                    | string  | Тип устройства                                                         |
| brand                                         | string  | Марка                                                                  |
| model                                         | string  | Модель                                                                 |
| sn                                            | string  | Серийный номер                                                         |
| problem                                       | array   | Список неисправностей, передается в виде массива строк                 |
| completeSet                                   | array   | Комплектация, передается в виде массива строк                          |
| cashRegisterId                                | string  | id кассы в которую будет принята предоплата                            |
| money                                         | number  | Сумма предоплаты наличными                                             |
| bank                                          | number  | Сума предоплаты безналичными                                           |
| approximatePrice                              | string  | Предварительная стоимость                                              |
| orderNode                                     | string  | Примечание к заказу                                                    |
| appearance                                    | array   | Внешний вид, передается в виде массива строк                           |
| color                                         | string  | Цвет                                                                   |
| customFields                                  | array   | Массив пользовательских полей                                          |
| howKnowId                                     | string  | id источника рекламы                                                   |

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

```json
{
  data: {
    dateCreate: "2022-12-13T13:49:50.907Z",
    lastAction: "2022-12-13T13:49:50.907Z",
    number: "A000011",
    num: 11,
    isVisible: true,
    isUrgent: false,
    id: "63c1617e360b094eed16ab6a",
    shop: {
      id: "63c015adcce57401c832faee",
      name: "Мастерская",
      color: "#ff6666",
      phones: [],
      address: null,
      isVisible: true
    },
    status: {
      name: "Новый",
      color: "#3E8EF7",
      type: "new",
      id: "63c015adcce57401c832fbf1",
      comment: "none",
      isPayRequired: false
    },
    createManager: {
      id: "63c0164bcce57401c832fd36",
      name: "API"
    },
    typeOrder: {
      id: "63c015adcce57401c832fbf4",
      name: "Платный"
    },
    counteragent: {
      name: "Клиент",
      phones: [],
      isBuyer: true,
      isVendor: false,
      isVisible: true,
      isSendSms: false,
      isSendEmail: false,
      isSendTelegram: false,
      rating: 0,
      id: "63c1617e360b094eed16ab69",
      typeCounteragent: {
        name: "Частное лицо",
        id: "63c015adcce57401c832fbf5"
      }
    },
    howKnow: {
      name: "Повторное обращение",
      id: "63c015adcce57401c832fabb"
    },
    positions: []
  },
  version: "2.0.0.0",
  remainRequest: 50,
  expireDate: "2022-12-13T09:09:20.861Z"
}
```

{% endtab %}

{% tab title="401 Доступ запрещен" %}

```json
{
  error: {
    statusCode: 401,
    name: "Error",
    message: "Access denied"
  }
}
```

{% endtab %}
{% endtabs %}

Контрагент при создании заказ может быть указан двумя способами:\
1\) **counteragentId** - id уже существующего контрагента\
2\) **name**, **typeCounteragentId**, **phones**, **isBuyer**, **isVendor**, **email**, **address**, **isSendSms**, **rating**, **counteragentNode, howKnowId** - данные контрагента которого необходимо создать при создании заказа. В случае если не указан **typeCounteragentId,** используется значение указанное в системе по умолчанию.\
Один из параметров **counteragentId** или **name** - обязателен.

В **customFields** передаются пользовательские поля по заказу и контрагенту (в том случае если контрагент создается при создании заказа). Поле передается в формате:

```
[
  {
    id: "5e0cea8e7ae81e080c8be6d8",
    value: true
  },
  {
    id: "5e0ceaf77ae81e080c8be700",
    value: "Приоритетный клиент"
  }
]
```

В случае если по заказу нужно внести предоплату, необходимо указать параметры **cashRegisterId** и какой-то из параметров **money** или **bank** (в случае смешанной оплаты можно указать сразу оба параметра)

По умолчанию для создания заказа обязательным является только поле **typeOrderId** и одно из полей **counteragentId** или **name**. Но в случае если для указанного типа заказа (определяется по **typeOrderId**) изменена форма заказа, то обязательными могут быть так же и другие поля

Для создания контрагента при создании заказа, по умолчанию обязательным является только поле **name**. Но в случае если для типа контрагента указанного в системе по умолчанию, изменена форма контрагента, то обязательными могут быть так же и другие поля.

Если указать поле **howKnowId**, то для заказа будет прописан источник рекламы. Если при создании заказа создается новый контрагент, а не используется уже существующий, то для созданного контрагента будет прописан тот же источник рекламы.

## Список типов заказов

<mark style="color:blue;">`GET`</mark> `https://api.livesklad.com/type-orders`

Возвращает массив типов заказов

#### Headers

| Name                                            | Type   | Description       |
| ----------------------------------------------- | ------ | ----------------- |
| Authorization<mark style="color:red;">\*</mark> | string | Токен авторизации |

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

```json
{
  data: [
    {
      id: "5d0cb1188ede076111d797fe"
      name: "Платный"
    },
    {
      id: "5d0cb1188ede076111d79837",
      name: "Гарантийный"
    }
  ],
  version: "2.0.0.0",
  remainRequest: 50,
  expireDate: "2022-12-13T09:09:20.861Z"
}
```

{% endtab %}

{% tab title="401 Доступ запрещен" %}

```json
{
  error: {
    statusCode: 401,
    name: "Error",
    message: "Access denied"
  }
}
```

{% endtab %}
{% endtabs %}

## Список пользовательских полей для типа заказа

<mark style="color:blue;">`GET`</mark> `https://api.livesklad.com/type-orders/{id}/fields`

Возвращает массив пользовательских полей для типа заказов

#### Path Parameters

| Name                                 | Type   | Description     |
| ------------------------------------ | ------ | --------------- |
| id<mark style="color:red;">\*</mark> | string | id типа заказов |

#### Headers

| Name                                            | Type   | Description       |
| ----------------------------------------------- | ------ | ----------------- |
| Authorization<mark style="color:red;">\*</mark> | string | Токен авторизации |

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

```json
{
  data: [
    {
      description: "Мое поле",
      type: "order",
      dataType: "string",
      items: null,
      defaultValue: null,
      id: "5d21b65ed25624421c1b310a"
    }
  ],
  version: "2.0.0.0",
  remainRequest: 50,
  expireDate: "2022-12-13T09:09:20.861Z"
}
```

{% endtab %}

{% tab title="401 Доступ запрещен" %}

```json
{
  error: {
    statusCode: 401,
    name: "Error",
    message: "Access denied"
  }
}
```

{% endtab %}
{% endtabs %}

## Информация о заказе

<mark style="color:blue;">`GET`</mark> `https://api.livesklad.com/orders/{id}`

Возвращает информацию о заказе. Для получения информации о заказе у API должен быть настроен доступ к заказам, так же в настройках статусов у API должен быть настроен доступ на просмотр заказов в нужных статусах

#### Path Parameters

| Name                                 | Type   | Description |
| ------------------------------------ | ------ | ----------- |
| id<mark style="color:red;">\*</mark> | string | id заказа   |

#### Headers

| Name                                            | Type   | Description       |
| ----------------------------------------------- | ------ | ----------------- |
| Authorization<mark style="color:red;">\*</mark> | string | Токен авторизации |

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

```json
{
  data: {
    dateCreate: "2022-12-12T14:14:07.820Z",
    number: "A000009",
    num: 9,
    isVisible: true,
    isUrgent: false,
    typeDevice: "Телефон",
    typeDeviceId: "63c015afcce57401c832fc79",
    brand: "Samsung",
    model: "I9300",
    sn: "354578765434567",
    problem: [
      Не работает кнопка громкости"
    ],
    completeSet: [],
    approximatePrice: "500 р",
    appearance: [
      царапины",
      потертости"
    ],
    customFields: [
      {
        id: "5e9958929dd07567102a19b4",
        value: "2024-05-01T10:36:00.869Z"
      },
      {
        id: "652550d56ee1234d73c61be0",
        value: false
      }
    ],
    color: "Синий",
    lastAction: "2022-12-12T14:14:08.577Z",
    dateFinish: "2022-12-12T14:14:08.551Z",
    id: "63c015afcce57401c832fcaa",
    shop: {
      name: "Мастерская",
      color: "#ff6666",
      phones: [],
      isVisible: true,
      id: "63c015adcce57401c832faee"
    },
    typeOrder: {
      name: "Платный",
      id: "63c015adcce57401c832fbf4"
    },
    cash: {
      order: 500,
      orderReturn: 0,
      invoice: 0,
      elements: [
        {
          id: "65f56f78069ccb6dc9a0a3ee",
          date": "2022-12-12T14:14:07.820Z",
          money": 500,
          type": "order",
          isBankTransfer": false
        }
      ]
    },
    status: {
      name: "Готов",
      color: "#00B86A",
      type: "finish",
      isPayRequired: false,
      comment: "none",
      id: "63c015adcce57401c832fbf3",
      isChange: true,
      isChecked: true
    },
    counteragent: {
      name: "Смирнов Иван Андреевич",
      phones: [
        +7 (944) 444-44-44"
      ],
      isBuyer: true,
      isVendor: false,
      isVisible: true,
      isSendSms: true,
      isSendEmail: false, 
      isSendTelegram: false,
      rating: 0,
      id: "63c015afcce57401c832fc9f",
      typeCounteragent: {
        name: "Частное лицо",
        id: "63c015adcce57401c832fbf5"
      }
    },
    manager: {
      id: "63c015adcce57401c832fab4",
      name: "Фамилия Имя"
    },
    createManager: {
      id: "63c015adcce57401c832fab4",
      name: "Фамилия Имя"
    },
    positions: [
      {
        measure: {
          id: "63c015adcce57401c832fab5",
          value: "шт.",
          isFloat: false
        },
        positionId: "63c015b0cce57401c832fd1c",
        modifyId: "63c015b0cce57401c832fcf3",
        nomenclatureId: "63c015b0cce57401c832fcf2",
        code: 12,
        name: "Диагностика",
        isWork: true,
        price: 500,
        soldPrice: 500,
        date: "2022-12-12T14:14:08.484Z",
        minPrice: 500,
        count: 1,
        purchasePriceSumm: 0,
        customer: {
          id: "63c015adcce57401c832fab4",
          name: "Фамилия Имя"
        }
      }
    ]
  },
  version: "2.0.0.0",
  remainRequest: 50,
  expireDate: "2022-12-13T09:09:20.861Z"
}
```

{% endtab %}

{% tab title="401 Доступ запрещен" %}

```json
{
  error: {
    statusCode: 401,
    name: "Error",
    message: "Access denied"
  }
}
```

{% endtab %}
{% endtabs %}

## Изменить заказ

<mark style="color:purple;">`PATCH`</mark> `https://api.livesklad.com/orders/{id}`

Для изменения заказа в настройках API должен быть установлен доступ к заказам. Так же в настройках статусов у API должен быть настроен доступ на редактирование заказов в нужных статусах

#### Path Parameters

| Name                                 | Type   | Description |
| ------------------------------------ | ------ | ----------- |
| id<mark style="color:red;">\*</mark> | string | id заказ    |

#### Headers

| Name                                            | Type   | Description       |
| ----------------------------------------------- | ------ | ----------------- |
| Authorization<mark style="color:red;">\*</mark> | string | Токен авторизации |

#### Request Body

| Name             | Type    | Description                                             |
| ---------------- | ------- | ------------------------------------------------------- |
| howKnowId        | string  | id источника рекламы (изменяет источник рекламы заказа) |
| statusId         | string  | id статуса                                              |
| typeOrderId      | string  | id типа заказа                                          |
| isUrgent         | boolean | Срочный заказ                                           |
| managerId        | string  | id менеджера которому необходимо назначить заказ        |
| masterId         | string  | id мастера которому необходимо назначить заказ          |
| deadline         | number  | Крайний срок                                            |
| typeDevice       | string  | Тип устройства                                          |
| brand            | string  | Марка                                                   |
| model            | string  | Модель                                                  |
| sn               | string  | Серийный номер                                          |
| problem          | array   | Список неисправностей, передается в виде массива строк  |
| completeSet      | array   | Комплектация, передается в виде массива строк           |
| approximatePrice | string  | Предварительная стоимость                               |
| orderNode        | string  | Примечание к заказу                                     |
| appearance       | array   | Внешний вид, передается в виде массива строк            |
| cashRegisterId   | string  | id кассы в которую будет принята оплата                 |
| money            | number  | Сумма наличными                                         |
| bank             | number  | Сумма безналичными                                      |
| nodePay          | string  | Примечание к оплате                                     |
| color            | string  | Цвет                                                    |
| recommendation   | string  | Вердикт / рекомендации                                  |
| comment          | string  | Комментарий                                             |
| customFields     | array   | Массив пользовательских полей                           |
| counteragentId   | string  | id контрагента                                          |

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

```json
{
  data: {
    success: true
  },
  version: "2.0.0.0",
  remainRequest: 50,
  expireDate: "2022-12-13T09:09:20.861Z"
}
```

{% endtab %}

{% tab title="401 Доступ запрещен" %}

```json
{
  error: {
    statusCode: 401,
    name: "Error",
    message: "Access denied"
  }
}
```

{% endtab %}
{% endtabs %}

В customFields передаются пользовательские поля по заказу и контрагенту (в том случае если контрагент создается при создании заказа). Поле передается в формате:

```
[
  {
    id: "5e0cea8e7ae81e080c8be6d8",
    value: true
  },
  {
    id: "5e0ceaf77ae81e080c8be700",
    value: "Приоритетный клиент"
  }
]
```

Произвести оплату по заказу (параметры **cashRegisterId**, **money**, **bank**, **nodePay**) возможно только в том случае если у заказа меняется статус (указан параметр **statusId**) и у данного статуса в настройках задан параметр "Затребовать оплату при перехода заказа в этот статус".

## Удалить заказ

<mark style="color:red;">`DELETE`</mark> `https://api.livesklad.com/orders/{id}`

Для удаления заказа в настройках API должен стоять соответствующий доступ

#### Path Parameters

| Name | Type   | Description |
| ---- | ------ | ----------- |
| id   | string | id заказа   |

#### Headers

| Name          | Type   | Description       |
| ------------- | ------ | ----------------- |
| Authorization | string | Токен авторизации |

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

```json
{
  data: {
    count: 1
  },
  version: "2.0.0.0",
  remainRequest: 50,
  expireDate: "2022-12-13T09:09:20.861Z"
}
```

{% endtab %}

{% tab title="401 Доступ запрещен" %}

```
{
  error: {
    statusCode: 401,
    name: "Error",
    message: "Access denied"
  }
}
```

{% endtab %}
{% endtabs %}
