Возвращает данные материала и его остаток на складе.

`POST v1/materials/get_entry.php`

## Параметры

| Поле | Тип | Обязательное | Описание |
|---|---|---|---|
| material_id | int | Да | ID материала |
| storage_id | int | Да | ID склада |

Материал возвращается, только если он числится на складе storage_id. Остатки на всех складах сразу возвращает [v1/materials/get_stocks](https://developers.controlata.ru/hc/api-docs/articles/materials-get-stocks).

## Ответ

Объект material со всеми полями материала, его остатком на складе storage_id, категориями и поставщиками (см. [Материалы](https://developers.controlata.ru/hc/api-docs/articles/materials)). Категории и поставщиков из ответа можно передать в [v1/materials/edit](https://developers.controlata.ru/hc/api-docs/articles/materials-edit) без изменений.

## Пример запроса

```
{
    "material_id": 2051,
    "storage_id": 3998
}
```

## Пример ответа

```
{
    "success": true,
    "material": {
        "id": "2051",
        "name": "Доска дубовая",
        "sku": "M010",
        "price": "135000",
        "notes": "",
        "archived": "0",
        "stock": "4.200",
        "minimum": "1.000",
        "planned": null,
        "unit": "куб. м",
        "categories": [
            {
                "id": "12",
                "name": "Древесина"
            }
        ],
        "suppliers": [
            {
                "id": "45",
                "name": "ООО Лесторг"
            }
        ]
    }
}
```

## Ошибки

| Ошибка | Причина |
|---|---|
| No material_id in input | Не передано обязательное поле (вместо material_id будет имя поля) |
| Storage ID not found | Склад не найден или удален |
| Material not found or access denied | Материал не найден, удален или не числится на складе |
