Skip to content

Единицы измерения ​

Шаблоны единиц измерения товаров (без company_id). Каждая компания получает собственную копию каталога и управляет ею сама.

МетодАдресНазначение
GET/admin/product/unitСписок единиц измерения
GET/admin/product/unit/{model}Карточка единицы измерения
POST/admin/product/unitСоздать единицу измерения
PUT/admin/product/unit/{model}Изменить единицу измерения
DELETE/admin/product/unit/{model}Удалить единицу измерения
DELETE/admin/product/unit/{value}/restoreВосстановить единицу измерения

Список единиц измерения ​

GET/admin/product/unit

Постраничный список шаблонов единиц измерения (только записи без company_id).

Заголовки ​

ЗаголовокЗначениеОписание
AuthorizationBearer {token}Токен из POST /common/auth/login
Acceptapplication/jsonОтвет в JSON
Accept-LanguageruЯзык сообщений и названий: ru, uz, oz

Параметры запроса ​

ПараметрОписание
filter[id]ID — точное значение
filter[name]Название — поиск по части строки
filter[accuracy]Кол-во знаков после запятой — точное значение
filter[created_at]Создано — период: [0] — с, [1] — по (Y-m-d)
sort[]Сортировка, - — по убыванию: id, -id
pageНомер страницы, с 1
page-sizeЗаписей на странице, не больше 20
http
GET /admin/product/unit?sort[0]=id&sort[1]=-id

Ответ · 200 ​

Постраничный ответ: записи в data[], пагинация в links и meta.

Поля ответа
ПолеТипОписание
dataobject[]Данные
data[].idintegerID
data[].company_idnullКомпания
data[].source_idnullИсточник
data[].nameobjectНазвание
data[].name.ozstring
data[].name.rustring
data[].name.uzstring
data[].accuracyintegerКол-во знаков после запятой
data[].created_atstringСоздано
data[].updated_atstringОбновлено
data[].is_deletedboolean
json
{
    "data": [
        {
            "id": 3,
            "company_id": null,
            "source_id": null,
            "name": {
                "oz": "Unit 1 oz",
                "ru": "Unit 1 ru",
                "uz": "Unit 1 uz"
            },
            "accuracy": 4,
            "created_at": "2026-09-30 12:47:59",
            "updated_at": "2026-09-30 12:47:59",
            "is_deleted": false
        },
        {
            "id": 4,
            "company_id": null,
            "source_id": null,
            "name": {
                "oz": "Unit 2 oz",
                "ru": "Unit 2 ru",
                "uz": "Unit 2 uz"
            },
            "accuracy": 0,
            "created_at": "2026-09-30 12:47:59",
            "updated_at": "2026-09-30 12:47:59",
            "is_deleted": false
        }
    ],
    "links": {
        "first": "https://api.wasyt.uz/admin/product/unit?page=1",
        "last": "https://api.wasyt.uz/admin/product/unit?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [],
        "path": "https://api.wasyt.uz/admin/product/unit",
        "per_page": 20,
        "to": 2,
        "total": 2
    }
}

Карточка единицы измерения ​

GET/admin/product/unit/{model}

Возвращает шаблон единицы измерения по ID.

Заголовки ​

ЗаголовокЗначениеОписание
AuthorizationBearer {token}Токен из POST /common/auth/login
Acceptapplication/jsonОтвет в JSON
Accept-LanguageruЯзык сообщений и названий: ru, uz, oz

Параметры пути ​

ПараметрОписание
modelID записи

Ответ · 200 ​

Поля ответа
ПолеТипОписание
idintegerID
company_idnullКомпания
source_idnullИсточник
nameobjectНазвание
name.ozstring
name.rustring
name.uzstring
accuracyintegerКол-во знаков после запятой
created_atstringСоздано
updated_atstringОбновлено
is_deletedboolean
json
{
    "id": 3,
    "company_id": null,
    "source_id": null,
    "name": {
        "oz": "Unit 1 oz",
        "ru": "Unit 1 ru",
        "uz": "Unit 1 uz"
    },
    "accuracy": 4,
    "created_at": "2026-09-30 12:47:59",
    "updated_at": "2026-09-30 12:47:59",
    "is_deleted": false
}

Создать единицу измерения ​

POST/admin/product/unit

Создаёт шаблон с точностью accuracy (0–4 знака после запятой) и названием, уникальным среди шаблонов на каждом языке. Шаблон сразу копируется во все компании.

Заголовки ​

ЗаголовокЗначениеОписание
AuthorizationBearer {token}Токен из POST /common/auth/login
Acceptapplication/jsonОтвет в JSON
Accept-LanguageruЯзык сообщений и названий: ru, uz, oz

Тело запроса ​

ПолеТипОбязательноОписание
accuracyintegerДаКол-во знаков после запятой. Не меньше 0. Не больше 4
name.{lang}stringДаНазвание. Макс. 255 символов. Уникальное значение в компании
json
{
    "name": {
        "ru": "Unit 3 ru",
        "uz": "Unit 3 uz",
        "oz": "Unit 3 oz"
    },
    "accuracy": 0
}
bash
curl -X POST "https://api.wasyt.uz/admin/product/unit" \
  -H "Accept: application/json" \
  -H "Accept-Language: ru" \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{"name":{"ru":"Unit 3 ru","uz":"Unit 3 uz","oz":"Unit 3 oz"},"accuracy":0}'

Ответ · 200 ​

Поля ответа
ПолеТипОписание
accuracyintegerКол-во знаков после запятой
nameobjectНазвание
name.rustring
name.uzstring
name.ozstring
updated_atstringОбновлено
created_atstringСоздано
company_idnullКомпания
idintegerID
is_deletedboolean
json
{
    "accuracy": 0,
    "name": {
        "ru": "Unit 3 ru",
        "uz": "Unit 3 uz",
        "oz": "Unit 3 oz"
    },
    "updated_at": "2026-09-30 12:50:10",
    "created_at": "2026-09-30 12:50:10",
    "company_id": null,
    "id": 18,
    "is_deleted": false
}

Изменить единицу измерения ​

PUT/admin/product/unit/{model}

Обновляет точность и название шаблона. Копии в компаниях не меняются.

Из формы (multipart/form-data) метод PUT отправляется как POST с параметром ?_method=PUT.

Заголовки ​

ЗаголовокЗначениеОписание
AuthorizationBearer {token}Токен из POST /common/auth/login
Acceptapplication/jsonОтвет в JSON
Accept-LanguageruЯзык сообщений и названий: ru, uz, oz

Параметры пути ​

ПараметрОписание
modelID записи

Тело запроса ​

ПолеТипОбязательноОписание
accuracyintegerДаКол-во знаков после запятой. Не меньше 0. Не больше 4
name.{lang}stringДаНазвание. Макс. 255 символов. Уникальное значение в компании
json
{
    "name": {
        "ru": "Unit 1 ru",
        "uz": "Unit 1 uz",
        "oz": "Unit 1 oz"
    },
    "accuracy": 0
}
bash
curl -X PUT "https://api.wasyt.uz/admin/product/unit/3" \
  -H "Accept: application/json" \
  -H "Accept-Language: ru" \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{"name":{"ru":"Unit 1 ru","uz":"Unit 1 uz","oz":"Unit 1 oz"},"accuracy":0}'

Ответ · 200 ​

Поля ответа
ПолеТипОписание
idintegerID
company_idnullКомпания
source_idnullИсточник
nameobjectНазвание
name.rustring
name.uzstring
name.ozstring
accuracyintegerКол-во знаков после запятой
created_atstringСоздано
updated_atstringОбновлено
is_deletedboolean
json
{
    "id": 3,
    "company_id": null,
    "source_id": null,
    "name": {
        "ru": "Unit 1 ru",
        "uz": "Unit 1 uz",
        "oz": "Unit 1 oz"
    },
    "accuracy": 0,
    "created_at": "2026-09-30 12:47:59",
    "updated_at": "2026-09-30 12:50:12",
    "is_deleted": false
}

Удалить единицу измерения ​

DELETE/admin/product/unit/{model}

Мягко удаляет шаблон. Ошибка 400, если он закреплён хотя бы за одним товаром (включая удалённые).

Из формы (multipart/form-data) метод DELETE отправляется как POST с параметром ?_method=DELETE.

Заголовки ​

ЗаголовокЗначениеОписание
AuthorizationBearer {token}Токен из POST /common/auth/login
Acceptapplication/jsonОтвет в JSON
Accept-LanguageruЯзык сообщений и названий: ru, uz, oz

Параметры пути ​

ПараметрОписание
modelID записи

Ответ · 200 ​

Поля ответа
ПолеТипОписание
messagestringСообщение
json
{
    "message": "Success"
}

Восстановить единицу измерения ​

DELETE/admin/product/unit/{value}/restore

Восстанавливает удалённый шаблон по ID {value}.

Из формы (multipart/form-data) метод DELETE отправляется как POST с параметром ?_method=DELETE.

Заголовки ​

ЗаголовокЗначениеОписание
AuthorizationBearer {token}Токен из POST /common/auth/login
Acceptapplication/jsonОтвет в JSON
Accept-LanguageruЯзык сообщений и названий: ru, uz, oz

Параметры пути ​

ПараметрОписание
valueID записи (в том числе удалённой)

Ответ · 200 ​

Поля ответа
ПолеТипОписание
messagestringСообщение
json
{
    "message": "Success"
}