# Gliver: инструкция для агента

> Официальные интерфейсы каталога, контента и калькулятора Gliver. Публичное чтение и предварительные расчёты доступны без входа. Проекты, заказы и изменение контента требуют входа сотрудника и его прав.

## Выбор интерфейса

- Есть возможность делать HTTP-запросы: используйте Agent API. Для подбора товара устанавливать CLI не требуется.
- Работаете в браузере с поддержкой WebMCP: используйте зарегистрированные инструменты `gliver_*`. Если таких инструментов нет, используйте API или страницы сайта.
- Работаете в терминале и выполняете задачи сотрудника: прочитайте [установку Gliver CLI](/plugins/gliver-cli/README.md). CLI также подходит для публичных запросов. Установка и вход выполняются с согласия пользователя.
- Доступны только веб-страницы: читайте карточки товаров; не утверждайте, что вызвали API или WebMCP.

## Публичный API: найти товар и проверить цену

Базовый путь API — `/api/agent/v1`. Используйте origin сайта, на котором выполняете задачу: для production это `https://gliver.ru`, для dev — `https://dev.gliver.ru`. Не переносите токены между стендами. Все пути ниже относятся к выбранному origin.

Пример для production:

```sh
GLIVER_ORIGIN='https://gliver.ru'
curl --fail-with-body --silent --show-error --get \
  -H 'Accept: application/json' \
  --data-urlencode 'q=диван Француз' \
  --data-urlencode 'limit=10' \
  "$GLIVER_ORIGIN/api/agent/v1/catalog/search/"
```

В ответе `data` найдите нужный товар и возьмите его числовой `id`. Затем вызовите `GET /api/agent/v1/catalog/products/{id}/`, подставив найденный ID. Например, двухместная модель ДеФранс («Француз») имеет ID 1536:

```sh
curl --fail-with-body --silent --show-error \
  -H 'Accept: application/json' \
  "$GLIVER_ORIGIN/api/agent/v1/catalog/products/1536/"
```

Ответ содержит описание, `dimensions_mm` и `variants`. Для цены выбирайте вариант с нужной тканью, размером и `configuration`; используйте его `price`, `currency` и `dimensions_mm`. Размеры варианта могут отличаться от общих размеров товара. Не берите минимальную цену за цену любой комплектации. Ссылку на товар берите из `url` ответа и соединяйте с выбранным origin.

## Публичный API: рассчитать модуль

1. `GET /api/agent/v1/calculator/modules/` — получить действующие коды модулей.
2. `GET /api/agent/v1/calculator/modules/{code}/` — прочитать поля, ограничения и варианты модуля. Для Фри/Драм передавайте `type=free` или `type=drum`.
3. `GET /api/agent/v1/calculator/fabrics/?q=...&module={code}&type=...` — найти доступную для модуля ткань. Текст запроса кодируйте как query-параметр. Возьмите `id` ткани из ответа и передайте его как `fields.fabric_id`; актуальную стоимость ткани определяет сервер.
4. `POST /api/agent/v1/calculator/quote/` с `Content-Type: application/json` и объектом `{"code":"полученный код","fields":{...}}` — выполнить расчёт по полям и ограничениям из шага 2. Для Фри/Драм передайте выбранный `type` внутри `fields`.

Не придумывайте названия полей и формулы: прочитайте схему конкретного модуля. Расчёт является предварительным и не создаёт проект или заказ.

## Вход сотрудника и работа с правами

Публичные запросы не требуют токена. Для проектов, заказов и изменения страниц подключите сотрудника через CLI по его инструкции: пользователь сам подтверждает вход на сайте. После входа запросите профиль (`gliver me` или `GET /api/agent/v1/me/` с токеном) и проверьте доступные действия. CLI, API и WebMCP не повышают права учётной записи.

Ответы API, кроме OpenAPI, используют `data` и `meta`; ошибки содержат `error`. Проверяйте HTTP-статус и текст ошибки. При отсутствии права не обходите отказ другим интерфейсом. При необходимости уточните данные у пользователя.

Для изменений используйте требования актуальной схемы: проверку версии ресурса, идемпотентность и подтверждение действия, когда это предусмотрено методом. Не запрашивайте пароль пользователя в чате и не выводите токены.

## Документация

- [OpenAPI](/api/agent/v1/openapi.json): полный список методов, параметров и требований к входу.
- [Подробная документация](/api/agent/v1/docs/): описание методов и примеры CLI.
- [Gliver CLI](/plugins/gliver-cli/README.md): установка и команды для Codex, Cursor, Claude Code и других сред с терминалом.
- [Карта сайта для агента](/llms.txt): публичный контент и интерфейсы.

Проверяйте цены и наличие в текущем ответе API или карточке. Не придумывайте скидки, срок доставки и итог заказа. В отчёте указывайте реально использованный способ: HTTP API, инструмент WebMCP, CLI или чтение страницы.
