Бизнесы

Бизнес (branch) — юридическое лицо/филиал, к которому привязаны заказы, сотрудники, склады, реквизиты и интеграции с банками.

Список и таблица

Список бизнесов

Метод
GET
URL
https://api.gigma.ru/api/branches
Авторизация
Bearer token
Headers
Accept: application/json; Content-Type: application/json

Параметры запроса (query string)

  • query — поисковая строка (необязательно)

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

GET https://api.gigma.ru/api/branches

Ответ

При успешном действии возвращается HTTP код 200.

{
    "branches": [
        {
            "id": 1,
            "code": "1349",
            "responsible_user": {
                "id": 2,
                "first_name": "Алексей",
                "last_name": "Жуков",
                "middle_name": "Игоревич",
                "name": "Жуков Алексей"
            },
            "avatar": {
                "id": 40,
                "name": "organic-cosmetics.png",
                "path": "https://beta.back.erp.itecho.ru/storage/uploads/organic-cosmetics.png",
                "created_at": "2024-06-17T16:05:02.000000Z",
                "updated_at": "2024-06-17T16:05:02.000000Z"
            },
            "title": "Продажа косметики",
            "inn": "5403057658",
            "name": "ООО "АЙТЕКО"",
            "kpp": "540301001",
            "phone_1": "79139121349",
            "phone_2": "71231231231",
            "email": "support@itecho.ru",
            "head": "Снегирёв Алексей Игоревич",
            "address": "630073, г. Новосибирск, Новогодняя ул., д. 20/1, кв. 26",
            "legal_address": "630073, г. Новосибирск, Новогодняя ул., д. 20/1, кв. 26",
            "created_at": "2024-03-27T07:26:29.000000Z"
        }
    ],
    "branchesCount": 1
}
Описание полей ответа
  • id — первичный ключ
  • code — внутренний код бизнеса
  • responsible_user — ответственный пользователь (объект): id, first_name, last_name, middle_name, name
  • avatar — файл аватара/логотипа или null
  • title — короткое название проекта/бизнеса
  • name — полное юридическое наименование
  • inn, kpp — реквизиты юрлица
  • head — ФИО директора
  • phone_1, phone_2, email
  • address — фактический адрес
  • legal_address — юридический адрес
  • created_at — дата создания
  • branchesCount — общее количество бизнесов

Таблица бизнесов (для UI с колонками и пагинацией)

Метод
GET
URL
https://api.gigma.ru/api/tables/branches
Авторизация
Bearer token
Headers
Accept: application/json; Content-Type: application/json

Возвращает данные, готовые к отрисовке таблицы: список колонок, упрощённые бизнесы и пагинацию.

Параметры запроса (query string)

  • query — поисковая строка
  • responsible_user_id[] — фильтр по ответственному
  • page, per_page — пагинация

Ответ

{
    "columns": [
        { "id": 1, "table_id": 4, "order": 1, "key": "title", "has_icon": 1, "text": "Название" },
        { "id": 2, "table_id": 4, "order": 2, "key": "responsible_user", "has_icon": 1, "text": "Ответственный" },
        { "id": 3, "table_id": 4, "order": 3, "key": "inn", "has_icon": 0, "text": "ИНН" }
    ],
    "branches": [ { "id": 1, "code": "1349", "title": "Продажа косметики", "inn": "5403057658" } ],
    "pagination": {
        "total": 5,
        "per_page": 15,
        "current_page": 1,
        "last_page": 1,
        "from": 1,
        "to": 5
    },
    "message": ""
}
Описание полей ответа
  • columns[] — определения колонок (id, table_id, order, key, has_icon, text)
  • branches[] — упрощённые объекты бизнесов для таблицы
  • pagination — стандартный Laravel-пагинатор
  • message — служебное сообщение (обычно пусто)

Карточка бизнеса

Получение бизнеса по ID

Метод
GET
URL
https://api.gigma.ru/api/branches/{id}
Авторизация
Bearer token
Headers
Accept: application/json; Content-Type: application/json

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

Только id бизнеса в пути URL.

Ответ

{
    "branch": {
        "id": 1,
        "code": "1349",
        "responsible_user": {
            "id": 2,
            "first_name": "Алексей",
            "last_name": "Жуков",
            "middle_name": "Игоревич",
            "name": "Жуков Алексей"
        },
        "avatar": null,
        "title": "Разработка и продажа ПО",
        "inn": "5403057658",
        "name": "ООО "АЙТЕКО"",
        "kpp": "540301001",
        "phone_1": "79139121349",
        "phone_2": null,
        "email": "support@itecho.ru",
        "head": "Снегирёв Алексей Игоревич",
        "address": "630073, г. Новосибирск, Новогодняя ул., д. 20/1, кв. 26",
        "legal_address": "630073, г. Новосибирск, Новогодняя ул., д. 20/1, кв. 26",
        "created_at": "2024-03-27T07:26:29.000000Z"
    }
}

Создание бизнеса

Метод
POST
URL
https://api.gigma.ru/api/branches
Авторизация
Bearer token
Headers
Accept: application/json; Content-Type: application/json

Параметры запроса (тело)

  • title — короткое название проекта
  • name — полное юридическое наименование
  • code — внутренний код
  • inn, kpp — реквизиты юрлица
  • head — ФИО директора
  • phone_1, phone_2, email
  • address — фактический адрес
  • legal_address — юридический адрес
  • responsible_user_id — ID ответственного пользователя (nullable)
  • avatar_id — ID файла аватара (необязательно)

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

{
    "title": "Продажа косметики",
    "name": "ООО "АЙТЕКО"",
    "code": "1349",
    "inn": "5403057658",
    "kpp": "540301001",
    "head": "Снегирёв Алексей Игоревич",
    "phone_1": "79139121349",
    "phone_2": "71231231231",
    "email": "support@itecho.ru",
    "address": "630073, г. Новосибирск, Новогодняя ул., д. 20/1, кв. 26",
    "legal_address": "630073, г. Новосибирск, Новогодняя ул., д. 20/1, кв. 26",
    "responsible_user_id": 2,
    "avatar_id": 40
}

Ответ

{
    "branch": { "id": 42, "...": "поля как в GET" }
}

Изменение бизнеса

Метод
PUT
URL
https://api.gigma.ru/api/branches/{id}
Авторизация
Bearer token
Headers
Accept: application/json; Content-Type: application/json

Параметры запроса (тело)

Те же поля, что и в POST /api/branches.

Ответ

{
    "branch": { "id": 1, "...": "обновлённый объект" }
}

Удаление бизнеса

Метод
DELETE
URL
https://api.gigma.ru/api/branches/{id}
Авторизация
Bearer token
Headers
Accept: application/json; Content-Type: application/json

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

Только id бизнеса в пути URL.

Ответ

При успешном действии возвращается HTTP код 200.

{
    "message": "Branch deleted"
}

Банковские реквизиты бизнеса

Список реквизитов бизнеса

Метод
GET
URL
https://api.gigma.ru/api/branches/{id}/bank_requisites
Авторизация
Bearer token
Headers
Accept: application/json; Content-Type: application/json

Ответ

{
    "bankRequisites": [
        {
            "id": 1,
            "name": "Расчётный счёт в Сбербанке",
            "bik": "045004641",
            "kpp": "540301001",
            "payment_account": "40702810844050003101",
            "address": "630007, г. Новосибирск, Красный проспект, д. 5"
        }
    ],
    "bankRequisitesCount": 1
}

Добавление реквизита бизнеса

Метод
POST
URL
https://api.gigma.ru/api/branches/{id}/bank_requisites
Авторизация
Bearer token
Headers
Accept: application/json; Content-Type: application/json

Параметры запроса (тело)

  • name — название счёта/банка
  • bik — БИК
  • kpp — КПП
  • payment_account — номер расчётного счёта
  • address — адрес банка

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

{
    "name": "Расчётный счёт в Сбербанке",
    "bik": "045004641",
    "kpp": "540301001",
    "payment_account": "40702810844050003101",
    "address": "630007, г. Новосибирск, Красный проспект, д. 5"
}

Ответ

Структура аналогична GET — массив bankRequisites и bankRequisitesCount.

Изменение реквизита бизнеса

Метод
PUT
URL
https://api.gigma.ru/api/branches/{id}/bank_requisites/{requisiteId}
Авторизация
Bearer token
Headers
Accept: application/json; Content-Type: application/json

Параметры запроса (тело)

Те же поля, что и в POST.

Ответ

Структура аналогична GET.

История

История изменений бизнеса

Метод
GET
URL
https://api.gigma.ru/api/branches/{id}/history
Авторизация
Bearer token
Headers
Accept: application/json; Content-Type: application/json

Ответ

{
    "histories": [
        {
            "id": 101,
            "icon": "edit",
            "color": "info",
            "title": "Изменён телефон",
            "description": "phone_1: 79139121349 → 79991112233",
            "datetime": "2024-04-03T07:07:11.000000Z"
        }
    ],
    "historiesCount": 1
}
Описание полей ответа
  • histories[] — события таймлайна:
    • id — ID события
    • icon — имя иконки (edit, add, delete, …)
    • colorprimary | secondary | info | success | warning | error | dark | light
    • title — короткий заголовок
    • description — описание изменения
    • datetime — ISO-8601
  • historiesCount — общее количество событий

Интеграции банковских реквизитов

Каждый банковский реквизит может иметь подключённые интеграции (например, для автоматической синхронизации операций). Интеграция имеет фиксированный набор parameters (определения параметров) и values (значения, заполняемые пользователем).

Список интеграций реквизита

Метод
GET
URL
https://api.gigma.ru/api/branches/{branchId}/bank_requisites/{bankId}/integrations
Авторизация
Bearer token
Headers
Accept: application/json; Content-Type: application/json

Ответ

{
    "integrations": [
        {
            "id": 1,
            "integration_id": 5,
            "name": "Сбербанк API",
            "avatar": "https://beta.back.erp.itecho.ru/storage/integrations/sberbank.svg",
            "is_active": 1,
            "parameters": [
                { "id": 1, "title": "Логин", "order": 1, "key_1": "login", "key_2": "password", "description_1": "Логин", "description_2": "Пароль" }
            ],
            "values": [
                { "id": 1, "key_1": "login", "key_2": "password", "description_1": "Логин", "description_2": "Пароль", "value_1": "user123", "value_2": "***" }
            ]
        }
    ],
    "integrationsCount": 1
}
Описание полей ответа
  • integrations[]:
    • id — ID связи (реквизит ↔ интеграция)
    • integration_id — ID типа интеграции в каталоге
    • name — название интеграции
    • avatar — URL логотипа
    • is_active1 если активна, иначе 0
    • parameters[] — определения параметров (метаданные)
    • values[] — заполненные значения параметров

Изменение интеграции реквизита

Метод
PUT
URL
https://api.gigma.ru/api/branches/{branchId}/bank_requisites/{bankId}/integrations/{integrationsId}
Авторизация
Bearer token
Headers
Accept: application/json; Content-Type: application/json

Параметры запроса (тело)

  • is_active1 чтобы активировать, 0 чтобы выключить
  • (опционально) другие поля для обновления

Ответ

{
    "integration": {
        "id": 1,
        "integration_id": 5,
        "name": "Сбербанк API",
        "is_active": 1,
        "parameters": [],
        "values": []
    }
}

Описание интеграции по ID

Метод
GET
URL
https://api.gigma.ru/api/integrations/{integrationId}
Авторизация
Bearer token
Headers
Accept: application/json; Content-Type: application/json

Возвращает каталожное описание интеграции (без привязки к реквизиту) — нужно, чтобы узнать какие параметры она ждёт.

Ответ

{
    "integration": {
        "id": 5,
        "name": "Сбербанк API",
        "avatar": "https://beta.back.erp.itecho.ru/storage/integrations/sberbank.svg",
        "params": [
            { "id": 1, "title": "Логин и пароль", "order": 1, "key_1": "login", "key_2": "password", "description_1": "Логин", "description_2": "Пароль" }
        ]
    }
}
Описание полей ответа
  • integration.params[] — определения параметров: id, title, order, key_1/key_2, description_1/description_2 (двухколоночный layout: ключ-значение)

Параметры (значения) интеграции реквизита

Метод
GET
URL
https://api.gigma.ru/api/branches/{branchId}/bank_requisites/{bankId}/integrations/{integrationId}/parameters
Авторизация
Bearer token
Headers
Accept: application/json; Content-Type: application/json

Ответ

{
    "parameters": [
        {
            "id": 1,
            "key_1": "login",
            "description_1": "Логин",
            "key_2": "password",
            "description_2": "Пароль",
            "value_1": "user123",
            "value_2": "***"
        }
    ],
    "parametersCount": 1
}
Описание полей ответа
  • parameters[] — заполненные значения параметров интеграции: id, key_1/description_1/value_1, key_2/description_2/value_2
  • parametersCount — общее количество

Добавление значения параметра интеграции

Метод
POST
URL
https://api.gigma.ru/api/branches/{branchId}/bank_requisites/{bankId}/integrations/{integrationsId}/parameters
Авторизация
Bearer token
Headers
Accept: application/json; Content-Type: application/json

Параметры запроса (тело)

  • integration_parameter_id — ID определения параметра (из params[] интеграции)
  • value_1 — значение первого поля
  • value_2 — значение второго поля

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

{
    "integration_parameter_id": 1,
    "value_1": "user123",
    "value_2": "secret"
}

Ответ

{
    "parameter": {
        "id": 7,
        "key_1": "login",
        "description_1": "Логин",
        "key_2": "password",
        "description_2": "Пароль",
        "value_1": "user123",
        "value_2": "secret"
    }
}

Удаление значения параметра интеграции

Метод
DELETE
URL
https://api.gigma.ru/api/branches/{branchId}/bank_requisites/{bankId}/integrations/{integrationId}/parameters/{parameterId}
Авторизация
Bearer token
Headers
Accept: application/json; Content-Type: application/json

Ответ

{
    "message": "Parameter deleted"
}

Вспомогательные

Список ответственных пользователей (для фильтра)

Метод
GET
URL
https://api.gigma.ru/api/responsible_users
Авторизация
Bearer token
Headers
Accept: application/json; Content-Type: application/json

Используется в фильтре «Ответственный» на таблице бизнесов.

Ответ

{
    "responsibleUsers": [
        { "id": 2, "name": "Жуков Алексей" },
        { "id": 3, "name": "Иванов Сергей" }
    ],
    "responsibleUsersCount": 2
}

© 2026 Itecho ERP