Вкладка в карточке сделки

В форме Local app в /devops/edit/application/ часто нет настройки placement — это нормально. Регистрация делается методом REST placement.bind (справочник REST Bitrix24, поиск по placement.bind).

Код размещения для вкладки в классической карточке сделки: CRM_DEAL_DETAIL_TAB. Кнопка в шапке сделки: CRM_DEAL_DETAIL_TOOLBAR.

Один раз выполните (подставьте свой API_SECRET из .env):

curl -sS "https://kp.vacuum-market.ru/public/index.php?route=admin/bind-placement" \
  -H "X-API-SECRET: ВАШ_API_SECRET"

Либо откройте в браузере (только если одноразово и доверяете сети; секрет виден в истории):
?route=admin/bind-placement&token=ВАШ_API_SECRET

Важно: в token= идёт строка API_SECRET из .env, не «Ключ приложения» Bitrix (B24_CLIENT_SECRET).

URL вкладки берётся из APP_BASE_URL в .env + /index.php?route=placement.

Если ответ insufficient_scope (HTTP 401)

Методу placement.bind нужно отдельное право в Local app. В карточке приложения /devops/edit/application/… откройте «Настройка прав» → «+ выбрать» и добавьте право «Приложение (application)» (или пункт про встраивание / placement, если в вашей версии портала он отдельно). Без этого области в токене не хватает — портал отвечает insufficient_scope.

Затем обязательно: Сохранить → Переустановить приложение в Bitrix24 → на сервере удалить файл data/tokens.sqlite → снова открыть ?route=oauth/start → повторить bind-placement.