[{"data":1,"prerenderedAt":2213},["ShallowReactive",2],{"navigation":3,"-docs-working-with-the-rest-api-frame":459,"-docs-working-with-the-rest-api-frame-description":2202},[4],{"title":5,"path":6,"stem":7,"children":8,"page":47},"Docs","\u002Fdocs","docs",[9,78,351],{"title":10,"path":11,"stem":12,"children":13,"restApiVersion":15,"category":15,"description":15,"badge":15},"Начало работы","\u002Fdocs\u002Fgetting-started","docs\u002F1.getting-started\u002F1.index",[14,17,48,63],{"title":10,"path":11,"stem":12,"restApiVersion":15,"category":15,"description":16,"badge":15},null,"Краткое руководство по работе с SDK для REST API Bitrix24",{"title":18,"path":19,"stem":20,"children":21,"page":47},"Installation","\u002Fdocs\u002Fgetting-started\u002Finstallation","docs\u002F1.getting-started\u002F2.installation",[22,27,32,37,42],{"title":23,"path":24,"stem":25,"restApiVersion":15,"category":15,"description":26,"badge":15},"Vue","\u002Fdocs\u002Fgetting-started\u002Finstallation\u002Fvue","docs\u002F1.getting-started\u002F2.installation\u002F1.vue","Руководство по установке Bitrix24 JS SDK в приложениях Vue.",{"title":28,"path":29,"stem":30,"restApiVersion":15,"category":15,"description":31,"badge":15},"Nuxt","\u002Fdocs\u002Fgetting-started\u002Finstallation\u002Fnuxt","docs\u002F1.getting-started\u002F2.installation\u002F2.nuxt","Руководство по установке Bitrix24 JS SDK в приложениях Nuxt.",{"title":33,"path":34,"stem":35,"restApiVersion":15,"category":15,"description":36,"badge":15},"React","\u002Fdocs\u002Fgetting-started\u002Finstallation\u002Freact","docs\u002F1.getting-started\u002F2.installation\u002F3.react","Руководство по установке Bitrix24 JS SDK в приложениях React.",{"title":38,"path":39,"stem":40,"restApiVersion":15,"category":15,"description":41,"badge":15},"Node.js","\u002Fdocs\u002Fgetting-started\u002Finstallation\u002Fnodejs","docs\u002F1.getting-started\u002F2.installation\u002F4.nodejs","Руководство по установке Bitrix24 JS SDK в приложениях Node.js.",{"title":43,"path":44,"stem":45,"restApiVersion":15,"category":15,"description":46,"badge":15},"UMD","\u002Fdocs\u002Fgetting-started\u002Finstallation\u002Fumd","docs\u002F1.getting-started\u002F2.installation\u002F5.umd","Руководство по использованию UMD-версии Bitrix24 JS SDK в ваших приложениях.",false,{"title":49,"restApiVersion":15,"category":15,"description":15,"badge":15,"shadow":47,"path":50,"stem":51,"children":52,"page":47},"Migration","\u002Fdocs\u002Fgetting-started\u002Fmigration","docs\u002F1.getting-started\u002F3.migration",[53,58],{"title":54,"path":55,"stem":56,"restApiVersion":15,"category":15,"description":57,"badge":15},"v0 → v1","\u002Fdocs\u002Fgetting-started\u002Fmigration\u002Fv1","docs\u002F1.getting-started\u002F3.migration\u002F1.v1","Подробное руководство по миграции приложения с Bitrix24 JS SDK v0 на Bitrix24 JS SDK v1.",{"title":59,"path":60,"stem":61,"restApiVersion":15,"category":15,"description":62,"badge":15},"v2 → v3","\u002Fdocs\u002Fgetting-started\u002Fmigration\u002Fv3","docs\u002F1.getting-started\u002F3.migration\u002F2.v3","Как уйти с устаревшей REST-поверхности, которая удаляется в Bitrix24 JS SDK 3.0.0.",{"title":64,"restApiVersion":15,"category":15,"description":15,"badge":15,"path":65,"stem":66,"children":67,"page":47},"AI-инструменты","\u002Fdocs\u002Fgetting-started\u002Fai","docs\u002F1.getting-started\u002F7.ai",[68,73],{"title":69,"path":70,"stem":71,"restApiVersion":15,"category":15,"description":72,"badge":15},"Навыки","\u002Fdocs\u002Fgetting-started\u002Fai\u002Fskills","docs\u002F1.getting-started\u002F7.ai\u002F1.skills","Узкоспециализированные skill-файлы для AI-агентов разработчика, работающих с @bitrix24\u002Fb24jssdk.",{"title":74,"path":75,"stem":76,"restApiVersion":15,"category":15,"description":77,"badge":15},"LLMs.txt","\u002Fdocs\u002Fgetting-started\u002Fai\u002Fllms-txt","docs\u002F1.getting-started\u002F7.ai\u002F2.llms-txt","Как сделать, чтобы AI-инструменты вроде Cursor, Windsurf, GitHub Copilot, ChatGPT и Claude понимали методы, инструменты и лучшие практики Bitrix24 JS SDK.",{"title":79,"path":80,"stem":81,"children":82,"restApiVersion":15,"category":15,"description":15,"badge":15},"Работа с REST API","\u002Fdocs\u002Fworking-with-the-rest-api","docs\u002F2.working-with-the-rest-api\u002F0.index",[83,86,93,98,103,107,112,116,121,126,130,135,140,145,150,155,160,165,170,175,179,184,189,194,200,205,210,215,220,225,230,235,240,245,251,256,261,267,272,277,282,287,293,299,305,310,315,320,326,331,336,341,346],{"title":84,"path":80,"stem":81,"restApiVersion":15,"category":15,"description":85,"badge":15},"Введение","Обзор возможностей SDK для работы с REST API Bitrix24",{"title":87,"path":88,"stem":89,"restApiVersion":90,"category":91,"description":92,"badge":15},"Call","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fcall-rest-api-ver2","docs\u002F2.working-with-the-rest-api\u002F1.call-rest-api-ver2","rest-api-ver2","actions","Метод для вызовов REST API Bitrix24 версии 2.",{"title":87,"path":94,"stem":95,"restApiVersion":96,"category":91,"description":97,"badge":15},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Fcall-rest-api-ver3","docs\u002F2.working-with-the-rest-api\u002F1.call-rest-api-ver3","rest-api-ver3","Метод для вызовов REST API Bitrix24 версии 3.",{"title":99,"path":100,"stem":101,"restApiVersion":90,"category":91,"description":102,"badge":15},"CallList","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fcall-list-rest-api-ver2","docs\u002F2.working-with-the-rest-api\u002F2.call-list-rest-api-ver2","Метод для быстрого получения всех данных из list-методов REST API Bitrix24 версии 2.",{"title":99,"path":104,"stem":105,"restApiVersion":96,"category":91,"description":106,"badge":15},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Fcall-list-rest-api-ver3","docs\u002F2.working-with-the-rest-api\u002F2.call-list-rest-api-ver3","Метод для быстрого получения всех данных из list-методов REST API Bitrix24 версии 3.",{"title":108,"path":109,"stem":110,"restApiVersion":90,"category":91,"description":111,"badge":15},"FetchList","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ffetch-list-rest-api-ver2","docs\u002F2.working-with-the-rest-api\u002F2.fetch-list-rest-api-ver2","Возвращает AsyncGenerator, позволяющий обрабатывать данные из list-методов REST API Bitrix24 версии 2 по мере поступления, не загружая весь массив в память сразу. Особенно полезно при работе с очень большими объёмами данных.",{"title":108,"path":113,"stem":114,"restApiVersion":96,"category":91,"description":115,"badge":15},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Ffetch-list-rest-api-ver3","docs\u002F2.working-with-the-rest-api\u002F2.fetch-list-rest-api-ver3","Возвращает AsyncGenerator, позволяющий обрабатывать данные из list-методов REST API Bitrix24 версии 3 по мере поступления, не загружая весь массив в память сразу. Особенно полезно при работе с очень большими объёмами данных.",{"title":117,"path":118,"stem":119,"restApiVersion":15,"category":117,"description":120,"badge":15},"B24Hook","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fhook","docs\u002F2.working-with-the-rest-api\u002F20.hook","Серверная точка входа для работы с REST API Bitrix24 через входящий вебхук (постоянный токен).",{"title":122,"path":123,"stem":124,"restApiVersion":90,"category":91,"description":125,"badge":15},"Batch","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fbatch-rest-api-ver2","docs\u002F2.working-with-the-rest-api\u002F3.batch-rest-api-ver2","Метод для выполнения пакетных запросов к REST API Bitrix24 версии 2. Позволяет выполнить до 50 команд в одном API-вызове.",{"title":122,"path":127,"stem":128,"restApiVersion":96,"category":91,"description":129,"badge":15},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Fbatch-rest-api-ver3","docs\u002F2.working-with-the-rest-api\u002F3.batch-rest-api-ver3","Метод для выполнения пакетных запросов к REST API Bitrix24 версии 3. Позволяет выполнить до 50 команд в одном API-вызове.",{"title":84,"path":131,"stem":132,"restApiVersion":15,"category":133,"description":134,"badge":15},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe","docs\u002F2.working-with-the-rest-api\u002F30.frame","B24Frame","Предназначен для управления приложениями Bitrix24, работающими внутри placement-iframe. Наследуется от AbstractB24 и предоставляет менеджеры для аутентификации, обмена сообщениями с родительским окном, слайдеров, диалогов, placement и опций.",{"title":136,"path":137,"stem":138,"restApiVersion":15,"category":133,"description":139,"badge":15},"Инициализация","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-initialize-b24-frame","docs\u002F2.working-with-the-rest-api\u002F30.frame-initialize-b24-frame","Функция предназначена для инициализации B24Frame",{"title":141,"path":142,"stem":143,"restApiVersion":15,"category":133,"description":144,"badge":15},"Авторизация","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-auth","docs\u002F2.working-with-the-rest-api\u002F31.frame-auth","Предназначен для управления аутентификацией в приложениях Bitrix24. Обрабатывает данные аутентификации, полученные от родительского окна, и предоставляет методы для их обновления и получения.",{"title":146,"path":147,"stem":148,"restApiVersion":15,"category":133,"description":149,"badge":15},"Диалог","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-dialog","docs\u002F2.working-with-the-rest-api\u002F31.frame-dialog","Оборачивает системные диалоги BX24 (выбор пользователя, выбор прав доступа, выбор CRM-сущности), чтобы их можно было открывать изнутри iframe приложения Bitrix24.",{"title":151,"path":152,"stem":153,"restApiVersion":15,"category":133,"description":154,"badge":15},"Опции","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-options","docs\u002F2.working-with-the-rest-api\u002F31.frame-options","Используется для управления настройками приложения и пользователя в приложении Bitrix24. Позволяет инициализировать данные, получать и устанавливать опции через сообщения родительскому окну.",{"title":156,"path":157,"stem":158,"restApiVersion":15,"category":133,"description":159,"badge":15},"Родительское окно","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-parent","docs\u002F2.working-with-the-rest-api\u002F31.frame-parent","Предоставляет методы для управления родительским окном приложения в Bitrix24, включая изменение размера окна, управление прокруткой, инициацию звонков и открытие мессенджера.",{"title":161,"path":162,"stem":163,"restApiVersion":15,"category":133,"description":164,"badge":15},"Placement","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-placement","docs\u002F2.working-with-the-rest-api\u002F31.frame-placement","Используется для управления placement виджетов в приложении Bitrix24.",{"title":166,"path":167,"stem":168,"restApiVersion":15,"category":133,"description":169,"badge":15},"Слайдер","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-slider","docs\u002F2.working-with-the-rest-api\u002F31.frame-slider","Предоставляет методы для работы со слайдерами в приложении Bitrix24. Позволяет открывать и закрывать слайдеры, а также управлять их содержимым.",{"title":171,"path":172,"stem":173,"restApiVersion":90,"category":91,"description":174,"badge":15},"BatchByChunk","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fbatch-by-chunk-rest-api-ver2","docs\u002F2.working-with-the-rest-api\u002F4.batch-by-chunk-rest-api-ver2","Метод для выполнения пакетных запросов с автоматическим разбиением на чанки для любого числа команд. Автоматически делит большие наборы команд на батчи по 50 и выполняет их последовательно. Используйте только массивы кортежей или массивы объектов.",{"title":171,"path":176,"stem":177,"restApiVersion":96,"category":91,"description":178,"badge":15},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Fbatch-by-chunk-rest-api-ver3","docs\u002F2.working-with-the-rest-api\u002F4.batch-by-chunk-rest-api-ver3","Метод для выполнения пакетных запросов к REST API Bitrix24 версии 3 с автоматическим разбиением на чанки для любого числа команд. Автоматически делит большие наборы команд на батчи по 50 и выполняет их последовательно. Используйте только массивы кортежей или массивы объектов.",{"title":180,"path":181,"stem":182,"restApiVersion":15,"category":180,"description":183,"badge":15},"B24OAuth","\u002Fdocs\u002Fworking-with-the-rest-api\u002Foauth","docs\u002F2.working-with-the-rest-api\u002F40.oauth","Серверная точка входа для работы с REST API Bitrix24 по access token OAuth 2.0 (с автоматическим обновлением).",{"title":185,"path":186,"stem":187,"restApiVersion":15,"category":15,"description":188,"badge":15},"Выбор метода","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fchoosing-the-right-method","docs\u002F2.working-with-the-rest-api\u002F5.choosing-the-right-method","Руководство по выбору между Call, CallList, FetchList, Batch и BatchByChunk в REST API v2 и v3.",{"title":190,"path":191,"stem":192,"restApiVersion":15,"category":15,"description":193,"badge":15},"Фильтрация","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ffiltering","docs\u002F2.working-with-the-rest-api\u002F5.filtering","Справочник по построению параметров фильтра в Bitrix24 REST API v2 (префиксные операторы) и v3 (массив троек), включая формат дат и правило отбрасывания order.",{"title":195,"path":196,"stem":197,"restApiVersion":15,"category":198,"description":199,"badge":15},"B24HelperManager","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fhelper","docs\u002F2.working-with-the-rest-api\u002F50.helper","Helper","Агрегирующий менеджер, который загружает данные профиля, приложения, оплаты, лицензии, валют и опций одним батч-запросом REST, а также подключает Pull-клиент.",{"title":201,"path":202,"stem":203,"restApiVersion":15,"category":198,"description":204,"badge":15},"useB24Helper","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fhelper-use-b24-helper","docs\u002F2.working-with-the-rest-api\u002F51.helper-use-b24-helper","Основанный на замыкании composable, который владеет единственным экземпляром B24HelperManager и предоставляет хелперы жизненного цикла (init \u002F destroy \u002F связка с Pull-клиентом).",{"title":206,"path":207,"stem":208,"restApiVersion":15,"category":198,"description":209,"badge":15},"ProfileManager","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fhelper-profile-manager","docs\u002F2.working-with-the-rest-api\u002F52.helper-profile-manager","Разобранный ответ REST-метода `profile`: id, имя, фамилия, пол, фото, часовой пояс, флаг администратора.",{"title":211,"path":212,"stem":213,"restApiVersion":15,"category":198,"description":214,"badge":15},"AppManager","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fhelper-app-manager","docs\u002F2.working-with-the-rest-api\u002F53.helper-app-manager","Разобранный ответ REST-метода `app.info`: id приложения, код, версия, статус, флаг установки.",{"title":216,"path":217,"stem":218,"restApiVersion":15,"category":198,"description":219,"badge":15},"PaymentManager","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fhelper-payment-manager","docs\u002F2.working-with-the-rest-api\u002F54.helper-payment-manager","Статус оплаты приложения Bitrix24 — извлекается из `app.info`.",{"title":221,"path":222,"stem":223,"restApiVersion":15,"category":198,"description":224,"badge":15},"LicenseManager","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fhelper-license-manager","docs\u002F2.working-with-the-rest-api\u002F55.helper-license-manager","Информация о лицензии Bitrix24 из `app.info` — и автоматическая перенастройка менеджера ограничений под соответствующий тарифный план.",{"title":226,"path":227,"stem":228,"restApiVersion":15,"category":198,"description":229,"badge":15},"CurrencyManager","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fhelper-currency-manager","docs\u002F2.working-with-the-rest-api\u002F56.helper-currency-manager","Каталог валют, кэшируемый в памяти — базовая валюта, форматтеры для каждой валюты и форматтер числа в строку.",{"title":231,"path":232,"stem":233,"restApiVersion":15,"category":198,"description":234,"badge":15},"OptionsManager","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fhelper-options-manager","docs\u002F2.working-with-the-rest-api\u002F57.helper-options-manager","Типизированный доступ к `app.option.get` \u002F `user.option.get`, плюс save(), который батчит `*.option.set` с необязательным Pull-уведомлением.",{"title":236,"path":237,"stem":238,"restApiVersion":15,"category":15,"description":239,"badge":15},"Ошибки","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ferrors","docs\u002F2.working-with-the-rest-api\u002F6.errors","Справочник кодов SdkError и AjaxError, выбрасываемых SDK, плюс коды ошибок REST Bitrix24, которые через них проявляются.",{"title":241,"path":242,"stem":243,"restApiVersion":15,"category":241,"description":244,"badge":15},"Pull","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fpull","docs\u002F2.working-with-the-rest-api\u002F60.pull","Поток сообщений в реальном времени от Bitrix24 к вашему приложению — WebSocket как основной канал, long-polling как запасной. Только для фрейма.",{"title":246,"path":247,"stem":248,"restApiVersion":15,"category":249,"description":250,"badge":15},"Logger","\u002Fdocs\u002Fworking-with-the-rest-api\u002Flogger","docs\u002F2.working-with-the-rest-api\u002F66.logger","logger","Логгер, вдохновлённый PHP Monolog, предоставляет структурированную систему логирования с поддержкой каналов, обработчиков, процессоров и форматтеров. Реализация следует принципам PSR-3 и паттерну цепочки ответственности.",{"title":252,"path":253,"stem":254,"restApiVersion":15,"category":249,"description":255,"badge":15},"Telegram","\u002Fdocs\u002Fworking-with-the-rest-api\u002Flogger-telegram","docs\u002F2.working-with-the-rest-api\u002F66.logger-telegram","Отправка логов в Telegram",{"title":257,"path":258,"stem":259,"restApiVersion":15,"category":15,"description":260,"badge":15},"Обнаружение v3-методов","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fdiscovering-v3-methods","docs\u002F2.working-with-the-rest-api\u002F7.discovering-v3-methods","Используйте rest.documentation.openapi, чтобы получить собственный машиночитаемый список всех доступных методов REST API v3 портала — источник истины, на который SDK опирается вместо захардкоженного allowlist. Особенно полезно для AI-агентов и кодогенерации.",{"title":262,"path":263,"stem":264,"restApiVersion":15,"category":265,"description":266,"badge":15},"AjaxResult","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fcore-ajax-result","docs\u002F2.working-with-the-rest-api\u002F70.core-ajax-result","Core","Специализированный Result, возвращаемый каждым REST-хелпером. Предоставляет `isMore() \u002F getNext() \u002F getTotal() \u002F getStatus()` для постраничных ответов и неизменяемые данные.",{"title":268,"path":269,"stem":270,"restApiVersion":15,"category":265,"description":271,"badge":15},"Http","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fcore-http","docs\u002F2.working-with-the-rest-api\u002F70.core-http","Низкоуровневый интерфейс транспорта, возвращаемый `b24.getHttpClient(version)`. Прямой доступ к axios-клиентам, параметрам ограничений, статистике и сбросу.",{"title":273,"path":274,"stem":275,"restApiVersion":15,"category":265,"description":276,"badge":15},"B24LangList","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fcore-lang-list","docs\u002F2.working-with-the-rest-api\u002F70.core-lang-list","Enum языков интерфейса облачного Bitrix24 плюс карта локалей BCP-47.",{"title":278,"path":279,"stem":280,"restApiVersion":15,"category":265,"description":281,"badge":15},"RequestIdGenerator","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fcore-request-id-generator","docs\u002F2.working-with-the-rest-api\u002F70.core-request-id-generator","Реализация `IRequestIdGenerator` по умолчанию. Генерирует request id в формате UUID v7 и предоставляет имена HTTP-заголовка \u002F query-параметра, используемые SDK.",{"title":283,"path":284,"stem":285,"restApiVersion":15,"category":265,"description":286,"badge":15},"Result","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fcore-result","docs\u002F2.working-with-the-rest-api\u002F70.core-result","Обобщённый результат операции с флагом успеха, данными и картой ошибок. Аналог \\\\Bitrix\\\\Main\\\\Result из Bitrix Framework.",{"title":288,"path":289,"stem":290,"restApiVersion":15,"category":291,"description":292,"badge":15},"Лимитеры","\u002Fdocs\u002Fworking-with-the-rest-api\u002Flimiters","docs\u002F2.working-with-the-rest-api\u002F77.limiters","limiters","Система ограничений предоставляет комплексный механизм управления частотой запросов, временем выполнения операций и адаптивными задержками.",{"title":294,"path":295,"stem":296,"restApiVersion":15,"category":297,"description":298,"badge":15},"Логирование и редактирование","\u002Fdocs\u002Fworking-with-the-rest-api\u002Flogging","docs\u002F2.working-with-the-rest-api\u002F78.logging","logging","Что SDK редактирует автоматически до того, как информация о запросе попадёт в логгер или AjaxError, что он не редактирует, и как подключить кастомный логгер через setLogger(...) без повторного появления утечек учётных данных.",{"title":300,"path":301,"stem":302,"restApiVersion":15,"category":303,"description":304,"badge":15},"Browser","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ftools-browser","docs\u002F2.working-with-the-rest-api\u002F80.tools-browser","tools","Дешёвый детектор user-agent \u002F платформы \u002F возможностей. Полезен для runtime-ветвлений во фронтенд-коде.",{"title":306,"path":307,"stem":308,"restApiVersion":15,"category":303,"description":309,"badge":15},"Text","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ftools-text","docs\u002F2.working-with-the-rest-api\u002F80.tools-text","Утилиты для текста и дат — UUID v4 \u002F v7, кодирование \u002F декодирование HTML-сущностей, преобразования типов, хелперы регистра, `toDateTime` \u002F `toB24Format` на Luxon, форматирование чисел и конструктор query-строки.",{"title":311,"path":312,"stem":313,"restApiVersion":15,"category":303,"description":314,"badge":15},"Type","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ftools-type","docs\u002F2.working-with-the-rest-api\u002F80.tools-type","Runtime type guards — строки, числа, обычные объекты, массивы, DOM-узлы, Blob, FormData, формы JSON-RPC сообщений.",{"title":316,"path":317,"stem":318,"restApiVersion":15,"category":303,"description":319,"badge":15},"useFormatter","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ftools-use-formatters","docs\u002F2.working-with-the-rest-api\u002F80.tools-use-formatters","Composable, возвращающий общие экземпляры `FormatterNumbers` и `FormatterIban`, преднастроенные спецификациями стран.",{"title":321,"path":322,"stem":323,"restApiVersion":15,"category":324,"description":325,"badge":15},"IResult","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ftypes-iresult","docs\u002F2.working-with-the-rest-api\u002F90.types-iresult","Types","Обобщённый интерфейс результата операции. Реализуется `Result\u003CT>` и (транзитивно) `AjaxResult\u003CT>`.",{"title":327,"path":328,"stem":329,"restApiVersion":15,"category":324,"description":330,"badge":15},"TypeB24","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ftypes-type-b24","docs\u002F2.working-with-the-rest-api\u002F90.types-type-b24","Публичный контракт, реализуемый каждым классом-точкой входа (B24Frame, B24Hook, B24OAuth). Единый источник истины для поверхности SDK.",{"title":332,"path":333,"stem":334,"restApiVersion":15,"category":265,"description":335,"badge":15},"Телеметрия","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ftelemetry","docs\u002F2.working-with-the-rest-api\u002F95.telemetry","Query-параметры request id, версии SDK и типа SDK, добавляемые к каждому REST-вызову Bitrix24.",{"title":337,"path":338,"stem":339,"restApiVersion":15,"category":265,"description":340,"badge":15},"Коды ошибок","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ferror-codes","docs\u002F2.working-with-the-rest-api\u002F96.error-codes","Каталог кодов ошибок, которые распознаёт SDK — разделённых на «hard» (выбрасываются) и «soft» (возвращаются как AjaxError внутри AjaxResult).",{"title":342,"path":343,"stem":344,"restApiVersion":15,"category":303,"description":345,"badge":15},"HealthCheck","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ftools-health-check","docs\u002F2.working-with-the-rest-api\u002Ftools-health-check","Метод для проверки доступности REST API Bitrix24. Выполняет простой запрос к REST API для проверки работоспособности сервиса.",{"title":347,"path":348,"stem":349,"restApiVersion":15,"category":303,"description":350,"badge":15},"Ping","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ftools-ping","docs\u002F2.working-with-the-rest-api\u002Ftools-ping","Метод для измерения скорости ответа REST API Bitrix24. Выполняет тестовый запрос и возвращает время ответа в миллисекундах.",{"title":352,"path":353,"stem":354,"children":355,"restApiVersion":15,"category":15,"description":15,"badge":15},"Примеры","\u002Fdocs\u002Fexamples","docs\u002F99.examples\u002F0.index",[356,358,364,369,374,379,384,389,394,399,404,409,414,419,424,429,434,439,444,449,454],{"title":84,"path":353,"stem":354,"restApiVersion":15,"category":15,"description":357,"badge":15},"Рецепты, сочетающие SDK с реалистичными сценариями — аналитика CRM, массовые рассылки, AI-ассистенты, установка по OAuth и не только. Каждый рецепт — отдельный файл, удобный для копирования.",{"title":359,"path":360,"stem":361,"restApiVersion":15,"category":362,"description":363,"badge":15},"Аналитика CRM","\u002Fdocs\u002Fexamples\u002Fcrm-analytics","docs\u002F99.examples\u002F1.crm-analytics","examples","Стримит все сделки через actions.v2.fetchList.make, группирует по стадиям, печатает отчёт по воронке (количество, конверсия %, средний чек, win rate).",{"title":365,"path":366,"stem":367,"restApiVersion":15,"category":362,"description":368,"badge":15},"Сделки → CSV","\u002Fdocs\u002Fexamples\u002Fdashboard-deals-csv","docs\u002F99.examples\u002F1.dashboard-deals-csv","Стримит каждую сделку CRM, подходящую под фильтр по дате, в CSV-файл через вебхук и FetchListV2.",{"title":370,"path":371,"stem":372,"restApiVersion":15,"category":15,"description":373,"badge":15},"Список сущностей","\u002Fdocs\u002Fexamples\u002Fentity-list","docs\u002F99.examples\u002F10.entity-list","Рендерит постраничный список сущностей Bitrix24 с компонентами B24UI и SDK-действием callList.",{"title":375,"path":376,"stem":377,"restApiVersion":15,"category":362,"description":378,"badge":15},"Обработка ошибок","\u002Fdocs\u002Fexamples\u002Ferror-handling","docs\u002F99.examples\u002F10.error-handling","Демонстрирует четыре слоя ошибок (SdkError \u002F AjaxError \u002F сетевые \u002F soft) и настройки hardErrorCodes \u002F softErrorCodes \u002F retryOnNetworkError у менеджера ограничений.",{"title":380,"path":381,"stem":382,"restApiVersion":15,"category":362,"description":383,"badge":15},"Регистрация событий","\u002Fdocs\u002Fexamples\u002Fevent-registration","docs\u002F99.examples\u002F11.event-registration","CLI-инструмент — список, привязка и отвязка исходящих событий вебхуков Bitrix24 через event.get \u002F event.bind \u002F event.unbind. В паре с рецептом обработчика вебхуков.",{"title":385,"path":386,"stem":387,"restApiVersion":15,"category":362,"description":388,"badge":15},"Установка OAuth","\u002Fdocs\u002Fexamples\u002Foauth-install","docs\u002F99.examples\u002F12.oauth-install","Express-сервер, который обрабатывает события ONAPPINSTALL \u002F ONAPPUPDATE \u002F ONAPPUNINSTALL для маркетплейс-приложения Bitrix24, сохраняет токены по порталам и создаёт клиент B24OAuth по требованию с callback обновления, подключённым к хранилищу.",{"title":390,"path":391,"stem":392,"restApiVersion":15,"category":362,"description":393,"badge":15},"Скелет frame-приложения","\u002Fdocs\u002Fexamples\u002Fframe-app-skeleton","docs\u002F99.examples\u002F2.frame-app-skeleton","Минимально жизнеспособное iframe-приложение Bitrix24: рукопожатие init, установка заголовка, сохранение состояния приложения, открытие слайдера, чистое закрытие.",{"title":395,"path":396,"stem":397,"restApiVersion":15,"category":362,"description":398,"badge":15},"Массовые рассылки","\u002Fdocs\u002Fexamples\u002Fmass-messaging","docs\u002F99.examples\u002F2.mass-messaging","Фильтрует контакты в CRM, персонализирует шаблон, отправляет IM-уведомления ответственным менеджерам.",{"title":400,"path":401,"stem":402,"restApiVersion":15,"category":15,"description":403,"badge":15},"Мастер установки","\u002Fdocs\u002Fexamples\u002Fapp-installation-wizard","docs\u002F99.examples\u002F20.app-installation-wizard","Многошаговый процесс установки, который создаёт пользовательские поля, регистрирует placement-ы, финализирует установку и празднует конфетти.",{"title":405,"path":406,"stem":407,"restApiVersion":15,"category":362,"description":408,"badge":15},"Автоматизация задач","\u002Fdocs\u002Fexamples\u002Ftask-automation","docs\u002F99.examples\u002F3.task-automation","Опрашивает стадии сделок каждые 60 с. При отслеживаемом переходе создаёт задачу с описанием, дедлайном и приоритетом.",{"title":410,"path":411,"stem":412,"restApiVersion":15,"category":362,"description":413,"badge":15},"Вебхук CLI","\u002Fdocs\u002Fexamples\u002Fwebhook-cli-node","docs\u002F99.examples\u002F3.webhook-cli-node","Node-скрипт на 30 строк, который аутентифицируется на портале Bitrix24 через входящий вебхук и печатает вызывающего пользователя — полезно как первое, что вы запускаете после создания вебхука.",{"title":415,"path":416,"stem":417,"restApiVersion":15,"category":15,"description":418,"badge":15},"Экспорт Node + Hook","\u002Fdocs\u002Fexamples\u002Fnode-hook-company-export","docs\u002F99.examples\u002F30.node-hook-company-export","Экспорт компаний Bitrix24 в CSV-файл из чистого Node.js-скрипта через B24Hook.",{"title":420,"path":421,"stem":422,"restApiVersion":15,"category":362,"description":423,"badge":15},"Массовое обновление","\u002Fdocs\u002Fexamples\u002Fbulk-update-deals","docs\u002F99.examples\u002F4.bulk-update-deals","Переносит тысячи сделок CRM на новую стадию через BatchByChunkV2 — автоматическое разбиение на чанки, обработка частичных ошибок и одна строка прогресса.",{"title":425,"path":426,"stem":427,"restApiVersion":15,"category":362,"description":428,"badge":15},"Синхронизация ERP","\u002Fdocs\u002Fexamples\u002Ferp-sync","docs\u002F99.examples\u002F4.erp-sync","Двусторонняя синхронизация контактов между Bitrix24 и внешней ERP. Сопоставление по ИНН (основное) или email (запасное). Cron каждый час.",{"title":430,"path":431,"stem":432,"restApiVersion":15,"category":362,"description":433,"badge":15},"Файлы Диска","\u002Fdocs\u002Fexamples\u002Fdisk-files","docs\u002F99.examples\u002F5.disk-files","Список хранилищ и содержимого папок, создание подпапок, просмотр файлов. Загрузка файлов (multipart) намеренно вне области.",{"title":435,"path":436,"stem":437,"restApiVersion":15,"category":362,"description":438,"badge":15},"Подписка на Pull","\u002Fdocs\u002Fexamples\u002Fpull-subscribe-frame","docs\u002F99.examples\u002F5.pull-subscribe-frame","Открыть живой канал из frame-приложения Bitrix24 и реагировать на push-события через useB24Helper + Pull-клиент.",{"title":440,"path":441,"stem":442,"restApiVersion":15,"category":362,"description":443,"badge":15},"Telegram-бот","\u002Fdocs\u002Fexamples\u002Ftelegram-bot","docs\u002F99.examples\u002F6.telegram-bot","Опрашивает новые сделки CRM каждые две минуты; уведомляет Telegram-чат HTML-карточкой.",{"title":445,"path":446,"stem":447,"restApiVersion":15,"category":362,"description":448,"badge":15},"Обработчик вебхуков","\u002Fdocs\u002Fexamples\u002Fwebhook-handler","docs\u002F99.examples\u002F7.webhook-handler","Express-сервер, который принимает исходящие события Bitrix24, подгружает детали через REST, маршрутизирует по имени события. Всегда возвращает 200.",{"title":450,"path":451,"stem":452,"restApiVersion":15,"category":362,"description":453,"badge":15},"AI-ассистент","\u002Fdocs\u002Fexamples\u002Fai-assistant","docs\u002F99.examples\u002F8.ai-assistant","Загружает сделку и её дела, спрашивает у GPT-4o лучшее следующее действие, создаёт задачу, привязанную к сделке, с приоритетом и дедлайном.",{"title":455,"path":456,"stem":457,"restApiVersion":15,"category":362,"description":458,"badge":15},"Веб-поиск + LLM","\u002Fdocs\u002Fexamples\u002Fweb-search-llm","docs\u002F99.examples\u002F9.web-search-llm","Двухшаговый RAG: запрос к любому провайдеру веб-поиска, прогон результата через ваш LLM с цитатами [N], публикация ответа комментарием в таймлайн CRM на сделке.",{"id":460,"title":461,"audited":15,"badge":15,"body":462,"category":133,"description":134,"extension":2192,"links":2193,"meta":2198,"navigation":2199,"path":131,"restApiVersion":15,"seo":2200,"stem":132,"__hash__":2201},"docs\u002Fdocs\u002F2.working-with-the-rest-api\u002F30.frame.md","Класс B24Frame",{"type":463,"value":464,"toc":2166},"minimark",[465,518,574,579,649,663,752,783,787,794,813,839,845,861,888,894,910,927,931,948,968,972,989,996,1000,1017,1024,1028,1045,1052,1056,1073,1080,1084,1101,1108,1112,1117,1139,1148,1153,1167,1173,1178,1198,1224,1230,1244,1250,1256,1270,1278,1288,1323,1326,1332,1354,1369,1373,2151,2162],[466,467,468],"note",{},[469,470,471,472,497,498,505,506,509,510,513,514,517],"p",{},"Не вызывайте ",[473,474,478,483,486,490,494],"code",{"className":475,"language":476,"style":477},"language-ts-type shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","ts-type","",[479,480,482],"span",{"class":481},"sBMFI","new",[479,484,485],{"class":481}," B24Frame",[479,487,489],{"class":488},"sMK4o","(",[479,491,493],{"class":492},"sTEyZ","...",[479,495,496],{"class":488},")"," напрямую — используйте ",[499,500,502],"a",{"href":501},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-initialize-b24-frame\u002F",[473,503,504],{},"initializeB24Frame()",", которая устраняет дублирование параллельных инициализаций, разбирает payload из ",[473,507,508],{},"window.name"," от Bitrix24 и сама выполняет ",[473,511,512],{},"await"," для ",[473,515,516],{},"init()",".",[469,519,520,524,525,530,531,540,541,544,545,544,548,551,552,555,556,544,559,544,562,544,565,544,568,544,571,517],{},[473,521,522],{"className":475,"language":476,"style":477},[479,523,133],{"class":481}," наследуется от ",[473,526,527],{"className":475,"language":476,"style":477},[479,528,529],{"class":481},"AbstractB24"," и реализует ",[499,532,536],{"href":533,"rel":534},"https:\u002F\u002Fgithub.com\u002Fbitrix24\u002Fb24jssdk\u002Fblob\u002Fmain\u002Fpackages\u002Fjssdk\u002Fsrc\u002Ftypes\u002Fb24.ts",[535],"nofollow",[473,537,538],{"className":475,"language":476,"style":477},[479,539,327],{"class":481},". Поверх общего набора REST-методов (",[473,542,543],{},"actions.v2.*",", ",[473,546,547],{},"actions.v3.*",[473,549,550],{},"tools.*",") он предоставляет менеджеры, которые общаются с родительским окном через ",[473,553,554],{},"postMessage",": ",[473,557,558],{},"auth",[473,560,561],{},"parent",[473,563,564],{},"slider",[473,566,567],{},"dialog",[473,569,570],{},"placement",[473,572,573],{},"options",[575,576,578],"h2",{"id":577},"constructor","Конструктор",[580,581,583],"pre",{"className":475,"code":582,"language":476,"meta":477,"style":477},"constructor(\n  queryParams: B24FrameQueryParams,\n  options?: { restrictionParams?: Partial\u003CRestrictionParams> }\n)\n",[473,584,585,594,610,643],{"__ignoreMap":477},[479,586,589,591],{"class":587,"line":588},"line",1,[479,590,577],{"class":481},[479,592,593],{"class":492},"(\n",[479,595,597,601,604,607],{"class":587,"line":596},2,[479,598,600],{"class":599},"sHdIc","  queryParams",[479,602,603],{"class":488},":",[479,605,606],{"class":481}," B24FrameQueryParams",[479,608,609],{"class":488},",\n",[479,611,613,616,619,622,626,628,631,634,637,640],{"class":587,"line":612},3,[479,614,615],{"class":599},"  options",[479,617,618],{"class":488},"?:",[479,620,621],{"class":488}," {",[479,623,625],{"class":624},"swJcz"," restrictionParams",[479,627,618],{"class":488},[479,629,630],{"class":481}," Partial",[479,632,633],{"class":488},"\u003C",[479,635,636],{"class":481},"RestrictionParams",[479,638,639],{"class":488},">",[479,641,642],{"class":488}," }\n",[479,644,646],{"class":587,"line":645},4,[479,647,648],{"class":492},")\n",[469,650,651,660,661,603],{},[499,652,655],{"href":653,"rel":654},"https:\u002F\u002Fgithub.com\u002Fbitrix24\u002Fb24jssdk\u002Fblob\u002Fmain\u002Fpackages\u002Fjssdk\u002Fsrc\u002Ftypes\u002Fauth.ts",[535],[473,656,657],{"className":475,"language":476,"style":477},[479,658,659],{"class":481},"B24FrameQueryParams"," описывает предоставляемые Bitrix24 идентификаторы, разобранные из ",[473,662,508],{},[664,665,666,682],"table",{},[667,668,669],"thead",{},[670,671,672,676,679],"tr",{},[673,674,675],"th",{},"Поле",[673,677,678],{},"Тип",[673,680,681],{},"Описание",[683,684,685,703,720,736],"tbody",{},[670,686,687,693,700],{},[688,689,690],"td",{},[473,691,692],{},"DOMAIN",[688,694,695],{},[473,696,697],{"className":475,"language":476,"style":477},[479,698,699],{"class":481},"string",[688,701,702],{},"Домен портала Bitrix24.",[670,704,705,710,717],{},[688,706,707],{},[473,708,709],{},"PROTOCOL",[688,711,712],{},[473,713,714],{"className":475,"language":476,"style":477},[479,715,716],{"class":481},"boolean",[688,718,719],{},"Флаг протокола соединения.",[670,721,722,727,733],{},[688,723,724],{},[473,725,726],{},"LANG",[688,728,729],{},[473,730,731],{"className":475,"language":476,"style":477},[479,732,699],{"class":481},[688,734,735],{},"Язык интерфейса Bitrix24.",[670,737,738,743,749],{},[688,739,740],{},[473,741,742],{},"APP_SID",[688,744,745],{},[473,746,747],{"className":475,"language":476,"style":477},[479,748,699],{"class":481},[688,750,751],{},"Идентификатор сессии приложения.",[469,753,754,755,759,760,544,764,768,769,772,773,775,776,779,780,782],{},"В отличие от ",[473,756,757],{"className":475,"language":476,"style":477},[479,758,117],{"class":481}," и ",[473,761,762],{"className":475,"language":476,"style":477},[479,763,180],{"class":481},[473,765,766],{"className":475,"language":476,"style":477},[479,767,133],{"class":481}," требует ",[473,770,771],{},"await b24.init()"," перед любым REST-вызовом — ",[473,774,516],{}," выполняет рукопожатие ",[473,777,778],{},"getInitData"," с родительским окном. ",[473,781,504],{}," делает это за вас.",[575,784,786],{"id":785},"getters","Геттеры",[788,789,791,477],"h3",{"id":790},"isinit",[473,792,793],{},"isInit",[580,795,797],{"className":475,"code":796,"language":476,"meta":477,"style":477},"get isInit(): boolean\n",[473,798,799],{"__ignoreMap":477},[479,800,801,804,807,810],{"class":587,"line":588},[479,802,803],{"class":481},"get",[479,805,806],{"class":481}," isInit",[479,808,809],{"class":488},"():",[479,811,812],{"class":481}," boolean\n",[469,814,815,820,821,544,823,544,825,827,828,517],{},[473,816,817],{"className":475,"language":476,"style":477},[479,818,819],{"class":481},"true"," после завершения рукопожатия с родительским окном. До этого обращение к ",[473,822,558],{},[473,824,91],{},[473,826,303],{}," или любому менеджеру фрейма выбрасывает ",[473,829,830,833,837],{"className":475,"language":476,"style":477},[479,831,832],{"class":488},"'",[479,834,836],{"class":835},"sfazB","B24 not initialized",[479,838,832],{"class":488},[788,840,842,477],{"id":841},"isfirstrun",[473,843,844],{},"isFirstRun",[580,846,848],{"className":475,"code":847,"language":476,"meta":477,"style":477},"get isFirstRun(): boolean\n",[473,849,850],{"__ignoreMap":477},[479,851,852,854,857,859],{"class":587,"line":588},[479,853,803],{"class":481},[479,855,856],{"class":481}," isFirstRun",[479,858,809],{"class":488},[479,860,812],{"class":481},[469,862,863,867,868,871,872,883,884,887],{},[473,864,865],{"className":475,"language":476,"style":477},[479,866,819],{"class":481}," при самом первом запуске приложения (Bitrix24 устанавливает ",[473,869,870],{},"FIRST_RUN","). При ",[473,873,874,876,879],{"className":475,"language":476,"style":477},[479,875,844],{"class":481},[479,877,878],{"class":488}," =",[479,880,882],{"class":881},"sfNiH"," true"," SDK автоматически отправляет ",[473,885,886],{},"setInstall: true"," родительскому окну.",[788,889,891,477],{"id":890},"isinstallmode",[473,892,893],{},"isInstallMode",[580,895,897],{"className":475,"code":896,"language":476,"meta":477,"style":477},"get isInstallMode(): boolean\n",[473,898,899],{"__ignoreMap":477},[479,900,901,903,906,908],{"class":587,"line":588},[479,902,803],{"class":481},[479,904,905],{"class":481}," isInstallMode",[479,907,809],{"class":488},[479,909,812],{"class":481},[469,911,912,916,917,920,921,517],{},[473,913,914],{"className":475,"language":476,"style":477},[479,915,819],{"class":481}," пока приложение находится в процессе установки (флаг ",[473,918,919],{},"INSTALL"," от родителя). Требуется для ",[499,922,924],{"href":923},"#installfinish",[473,925,926],{},"installFinish",[788,928,929,477],{"id":558},[473,930,558],{},[580,932,934],{"className":475,"code":933,"language":476,"meta":477,"style":477},"get auth(): AuthManager\n",[473,935,936],{"__ignoreMap":477},[479,937,938,940,943,945],{"class":587,"line":588},[479,939,803],{"class":481},[479,941,942],{"class":481}," auth",[479,944,809],{"class":488},[479,946,947],{"class":481}," AuthManager\n",[469,949,950,954,955,544,958,544,961,544,964,967],{},[499,951,953],{"href":952},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-auth\u002F","Менеджер авторизации",". Предоставляет ",[473,956,957],{},"getAuthData",[473,959,960],{},"refreshAuth",[473,962,963],{},"getUniq",[473,965,966],{},"isAdmin",", а также автообновление при ответах 401.",[788,969,970,477],{"id":561},[473,971,561],{},[580,973,975],{"className":475,"code":974,"language":476,"meta":477,"style":477},"get parent(): ParentManager\n",[473,976,977],{"__ignoreMap":477},[479,978,979,981,984,986],{"class":587,"line":588},[479,980,803],{"class":481},[479,982,983],{"class":481}," parent",[479,985,809],{"class":488},[479,987,988],{"class":481}," ParentManager\n",[469,990,991,995],{},[499,992,994],{"href":993},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-parent\u002F","Менеджер родительского окна",". Отправка сообщений в окружающую страницу Bitrix24 и чтение её метаданных.",[788,997,998,477],{"id":564},[473,999,564],{},[580,1001,1003],{"className":475,"code":1002,"language":476,"meta":477,"style":477},"get slider(): SliderManager\n",[473,1004,1005],{"__ignoreMap":477},[479,1006,1007,1009,1012,1014],{"class":587,"line":588},[479,1008,803],{"class":481},[479,1010,1011],{"class":481}," slider",[479,1013,809],{"class":488},[479,1015,1016],{"class":481}," SliderManager\n",[469,1018,1019,1023],{},[499,1020,1022],{"href":1021},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-slider\u002F","Менеджер слайдеров",". Открытие и закрытие слайдеров Bitrix24.",[788,1025,1026,477],{"id":570},[473,1027,570],{},[580,1029,1031],{"className":475,"code":1030,"language":476,"meta":477,"style":477},"get placement(): PlacementManager\n",[473,1032,1033],{"__ignoreMap":477},[479,1034,1035,1037,1040,1042],{"class":587,"line":588},[479,1036,803],{"class":481},[479,1038,1039],{"class":481}," placement",[479,1041,809],{"class":488},[479,1043,1044],{"class":481}," PlacementManager\n",[469,1046,1047,1051],{},[499,1048,1050],{"href":1049},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-placement\u002F","Менеджер placement",". Просмотр и обновление контекста placement.",[788,1053,1054,477],{"id":573},[473,1055,573],{},[580,1057,1059],{"className":475,"code":1058,"language":476,"meta":477,"style":477},"get options(): OptionsManager\n",[473,1060,1061],{"__ignoreMap":477},[479,1062,1063,1065,1068,1070],{"class":587,"line":588},[479,1064,803],{"class":481},[479,1066,1067],{"class":481}," options",[479,1069,809],{"class":488},[479,1071,1072],{"class":481}," OptionsManager\n",[469,1074,1075,1079],{},[499,1076,1078],{"href":1077},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-options\u002F","Менеджер опций",". Чтение опций приложения и пользователя, синхронизированных из родительского окна.",[788,1081,1082,477],{"id":567},[473,1083,567],{},[580,1085,1087],{"className":475,"code":1086,"language":476,"meta":477,"style":477},"get dialog(): DialogManager\n",[473,1088,1089],{"__ignoreMap":477},[479,1090,1091,1093,1096,1098],{"class":587,"line":588},[479,1092,803],{"class":481},[479,1094,1095],{"class":481}," dialog",[479,1097,809],{"class":488},[479,1099,1100],{"class":481}," DialogManager\n",[469,1102,1103,1107],{},[499,1104,1106],{"href":1105},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-dialog\u002F","Менеджер диалогов",". Запрос к Bitrix24 на отображение нативных диалогов подтверждения \u002F сообщений \u002F выбора файлов.",[575,1109,1111],{"id":1110},"methods","Методы",[788,1113,1115,477],{"id":1114},"init",[473,1116,1114],{},[580,1118,1120],{"className":475,"code":1119,"language":476,"meta":477,"style":477},"init(): Promise\u003Cvoid>\n",[473,1121,1122],{"__ignoreMap":477},[479,1123,1124,1126,1128,1131,1133,1136],{"class":587,"line":588},[479,1125,1114],{"class":481},[479,1127,809],{"class":488},[479,1129,1130],{"class":481}," Promise",[479,1132,633],{"class":488},[479,1134,1135],{"class":481},"void",[479,1137,1138],{"class":488},">\n",[469,1140,1141,1142,1144,1145,1147],{},"Выполняет рукопожатие с родительским окном (",[473,1143,778],{},"), настраивает состояние менеджеров и создаёт оба HTTP-клиента REST API. На практике идемпотентен — ",[473,1146,504],{}," устраняет дублирование параллельных вызовов.",[788,1149,1151,477],{"id":1150},"destroy",[473,1152,1150],{},[580,1154,1156],{"className":475,"code":1155,"language":476,"meta":477,"style":477},"destroy(): void\n",[473,1157,1158],{"__ignoreMap":477},[479,1159,1160,1162,1164],{"class":587,"line":588},[479,1161,1150],{"class":481},[479,1163,809],{"class":488},[479,1165,1166],{"class":481}," void\n",[469,1168,1169,1170,1172],{},"Отписывается от событий ",[473,1171,554],{},". Всегда вызывайте перед размонтированием хост-компонента, чтобы избежать утечек.",[788,1174,1176,477],{"id":1175},"installfinish",[473,1177,926],{},[580,1179,1181],{"className":475,"code":1180,"language":476,"meta":477,"style":477},"installFinish(): Promise\u003Cany>\n",[473,1182,1183],{"__ignoreMap":477},[479,1184,1185,1187,1189,1191,1193,1196],{"class":587,"line":588},[479,1186,926],{"class":481},[479,1188,809],{"class":488},[479,1190,1130],{"class":481},[479,1192,633],{"class":488},[479,1194,1195],{"class":481},"any",[479,1197,1138],{"class":488},[469,1199,1200,1201,1204,1205,1221,1222,517],{},"Отправляет ",[473,1202,1203],{},"setInstallFinish"," родителю. Выбрасывает ",[473,1206,1207,1210,1212,1214,1217,1219],{"className":475,"language":476,"style":477},[479,1208,1209],{"class":481},"Error",[479,1211,489],{"class":492},[479,1213,832],{"class":488},[479,1215,1216],{"class":835},"Application was previously installed. You cannot call installFinish",[479,1218,832],{"class":488},[479,1220,496],{"class":492}," при вызове вне режима установки — защищайтесь проверкой ",[473,1223,893],{},[788,1225,1227,477],{"id":1226},"getappsid",[473,1228,1229],{},"getAppSid",[580,1231,1233],{"className":475,"code":1232,"language":476,"meta":477,"style":477},"getAppSid(): string\n",[473,1234,1235],{"__ignoreMap":477},[479,1236,1237,1239,1241],{"class":587,"line":588},[479,1238,1229],{"class":481},[479,1240,809],{"class":488},[479,1242,1243],{"class":481}," string\n",[469,1245,1246,1247,1249],{},"Идентификатор сессии приложения относительно родительского окна (повторяет ",[473,1248,742],{},").",[788,1251,1253,477],{"id":1252},"getlang",[473,1254,1255],{},"getLang",[580,1257,1259],{"className":475,"code":1258,"language":476,"meta":477,"style":477},"getLang(): B24LangList\n",[473,1260,1261],{"__ignoreMap":477},[479,1262,1263,1265,1267],{"class":587,"line":588},[479,1264,1255],{"class":481},[479,1266,809],{"class":488},[479,1268,1269],{"class":481}," B24LangList\n",[469,1271,1272,1273,517],{},"Enum языка интерфейса Bitrix24. См. ",[499,1274,1277],{"href":1275,"rel":1276},"https:\u002F\u002Fgithub.com\u002Fbitrix24\u002Fb24jssdk\u002Fblob\u002Fmain\u002Fpackages\u002Fjssdk\u002Fsrc\u002Fcore\u002Flanguage\u002Flist.ts",[535],"LangList",[788,1279,1281,1284,1285,477],{"id":1280},"gettargetorigin-gettargetoriginwithpath",[473,1282,1283],{},"getTargetOrigin"," \u002F ",[473,1286,1287],{},"getTargetOriginWithPath",[580,1289,1291],{"className":475,"code":1290,"language":476,"meta":477,"style":477},"getTargetOrigin(): string\ngetTargetOriginWithPath(): Map\u003CApiVersion, string>\n",[473,1292,1293,1301],{"__ignoreMap":477},[479,1294,1295,1297,1299],{"class":587,"line":588},[479,1296,1283],{"class":481},[479,1298,809],{"class":488},[479,1300,1243],{"class":481},[479,1302,1303,1305,1307,1310,1312,1315,1318,1321],{"class":587,"line":596},[479,1304,1287],{"class":481},[479,1306,809],{"class":488},[479,1308,1309],{"class":481}," Map",[479,1311,633],{"class":488},[479,1313,1314],{"class":481},"ApiVersion",[479,1316,1317],{"class":488},",",[479,1319,1320],{"class":481}," string",[479,1322,1138],{"class":488},[469,1324,1325],{},"Origin портала и REST-endpoint-ы для каждой версии (предоставляются родителем).",[788,1327,1329,1330,477],{"id":1328},"inherited-from-abstractb24","Унаследовано от ",[473,1331,529],{},[469,1333,1334,544,1337,544,1340,544,1343,544,1346,544,1349,544,1351,1353],{},[473,1335,1336],{},"getHttpClient",[473,1338,1339],{},"setHttpClient",[473,1341,1342],{},"setRestrictionManagerParams",[473,1344,1345],{},"getLogger",[473,1347,1348],{},"setLogger",[473,1350,91],{},[473,1352,303],{},". См.:",[1355,1356,1357,1363],"ul",{},[1358,1359,1360],"li",{},[499,1361,288],{"href":1362},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Flimiters\u002F",[1358,1364,1365],{},[499,1366,1368],{"href":1367},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Flogger\u002F","Логгер",[575,1370,1372],{"id":1371},"usage","Использование",[580,1374,1378],{"className":1375,"code":1376,"language":1377,"meta":477,"style":477},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import {\n  initializeB24Frame,\n  LoggerFactory,\n  EnumCrmEntityTypeId,\n  Text,\n  type B24Frame,\n  type ISODate\n} from '@bitrix24\u002Fb24jssdk'\n\nconst $logger = LoggerFactory.createForBrowser('MyApp', import.meta.env?.DEV === true)\nlet $b24: undefined | B24Frame\n\nasync function loadCompanies() {\n  if (!$b24) return\n\n  const response = await $b24.actions.v2.callList.make\u003C{ id: number, title: string, createdTime: ISODate }>({\n    method: 'crm.item.list',\n    params: {\n      entityTypeId: EnumCrmEntityTypeId.company,\n      select: ['id', 'title', 'createdTime']\n    },\n    idKey: 'id',\n    requestId: 'companies-list'\n  })\n\n  if (!response.isSuccess) {\n    $logger.error('REST error', { messages: response.getErrorMessages() })\n    return\n  }\n\n  return response.getData()!.map((item) => ({\n    id: Number(item.id),\n    title: item.title,\n    createdTime: Text.toDateTime(item.createdTime)\n  }))\n}\n\nasync function bootstrap() {\n  try {\n    $b24 = await initializeB24Frame()\n    const companies = await loadCompanies()\n    $logger.notice('companies', { companies })\n  } catch (error) {\n    $logger.error('init failed', { error })\n  }\n}\n\nbootstrap()\n","ts",[473,1379,1380,1389,1396,1403,1410,1418,1428,1436,1454,1461,1520,1540,1545,1562,1583,1588,1661,1678,1688,1706,1745,1751,1767,1782,1790,1795,1816,1859,1865,1871,1876,1913,1936,1953,1979,1987,1993,1998,2012,2020,2036,2053,2083,2099,2128,2133,2138,2143],{"__ignoreMap":477},[479,1381,1382,1386],{"class":587,"line":588},[479,1383,1385],{"class":1384},"s7zQu","import",[479,1387,1388],{"class":488}," {\n",[479,1390,1391,1394],{"class":587,"line":596},[479,1392,1393],{"class":492},"  initializeB24Frame",[479,1395,609],{"class":488},[479,1397,1398,1401],{"class":587,"line":612},[479,1399,1400],{"class":492},"  LoggerFactory",[479,1402,609],{"class":488},[479,1404,1405,1408],{"class":587,"line":645},[479,1406,1407],{"class":492},"  EnumCrmEntityTypeId",[479,1409,609],{"class":488},[479,1411,1413,1416],{"class":587,"line":1412},5,[479,1414,1415],{"class":492},"  Text",[479,1417,609],{"class":488},[479,1419,1421,1424,1426],{"class":587,"line":1420},6,[479,1422,1423],{"class":1384},"  type",[479,1425,485],{"class":492},[479,1427,609],{"class":488},[479,1429,1431,1433],{"class":587,"line":1430},7,[479,1432,1423],{"class":1384},[479,1434,1435],{"class":492}," ISODate\n",[479,1437,1439,1442,1445,1448,1451],{"class":587,"line":1438},8,[479,1440,1441],{"class":488},"}",[479,1443,1444],{"class":1384}," from",[479,1446,1447],{"class":488}," '",[479,1449,1450],{"class":835},"@bitrix24\u002Fb24jssdk",[479,1452,1453],{"class":488},"'\n",[479,1455,1457],{"class":587,"line":1456},9,[479,1458,1460],{"emptyLinePlaceholder":1459},true,"\n",[479,1462,1464,1468,1471,1474,1477,1479,1483,1485,1487,1490,1492,1494,1497,1499,1502,1504,1507,1510,1513,1516,1518],{"class":587,"line":1463},10,[479,1465,1467],{"class":1466},"spNyl","const",[479,1469,1470],{"class":492}," $logger ",[479,1472,1473],{"class":488},"=",[479,1475,1476],{"class":492}," LoggerFactory",[479,1478,517],{"class":488},[479,1480,1482],{"class":1481},"s2Zo4","createForBrowser",[479,1484,489],{"class":492},[479,1486,832],{"class":488},[479,1488,1489],{"class":835},"MyApp",[479,1491,832],{"class":488},[479,1493,1317],{"class":488},[479,1495,1496],{"class":1384}," import",[479,1498,517],{"class":488},[479,1500,1501],{"class":492},"meta",[479,1503,517],{"class":488},[479,1505,1506],{"class":492},"env",[479,1508,1509],{"class":488},"?.",[479,1511,1512],{"class":492},"DEV ",[479,1514,1515],{"class":488},"===",[479,1517,882],{"class":881},[479,1519,648],{"class":492},[479,1521,1523,1526,1529,1531,1534,1537],{"class":587,"line":1522},11,[479,1524,1525],{"class":1466},"let",[479,1527,1528],{"class":492}," $b24",[479,1530,603],{"class":488},[479,1532,1533],{"class":481}," undefined",[479,1535,1536],{"class":488}," |",[479,1538,1539],{"class":481}," B24Frame\n",[479,1541,1543],{"class":587,"line":1542},12,[479,1544,1460],{"emptyLinePlaceholder":1459},[479,1546,1548,1551,1554,1557,1560],{"class":587,"line":1547},13,[479,1549,1550],{"class":1466},"async",[479,1552,1553],{"class":1466}," function",[479,1555,1556],{"class":1481}," loadCompanies",[479,1558,1559],{"class":488},"()",[479,1561,1388],{"class":488},[479,1563,1565,1568,1571,1574,1577,1580],{"class":587,"line":1564},14,[479,1566,1567],{"class":1384},"  if",[479,1569,1570],{"class":624}," (",[479,1572,1573],{"class":488},"!",[479,1575,1576],{"class":492},"$b24",[479,1578,1579],{"class":624},") ",[479,1581,1582],{"class":1384},"return\n",[479,1584,1586],{"class":587,"line":1585},15,[479,1587,1460],{"emptyLinePlaceholder":1459},[479,1589,1591,1594,1597,1599,1602,1604,1606,1608,1610,1613,1615,1618,1620,1623,1626,1629,1631,1634,1636,1639,1641,1643,1645,1648,1650,1653,1656,1658],{"class":587,"line":1590},16,[479,1592,1593],{"class":1466},"  const",[479,1595,1596],{"class":492}," response",[479,1598,878],{"class":488},[479,1600,1601],{"class":1384}," await",[479,1603,1528],{"class":492},[479,1605,517],{"class":488},[479,1607,91],{"class":492},[479,1609,517],{"class":488},[479,1611,1612],{"class":492},"v2",[479,1614,517],{"class":488},[479,1616,1617],{"class":492},"callList",[479,1619,517],{"class":488},[479,1621,1622],{"class":1481},"make",[479,1624,1625],{"class":488},"\u003C{",[479,1627,1628],{"class":624}," id",[479,1630,603],{"class":488},[479,1632,1633],{"class":481}," number",[479,1635,1317],{"class":488},[479,1637,1638],{"class":624}," title",[479,1640,603],{"class":488},[479,1642,1320],{"class":481},[479,1644,1317],{"class":488},[479,1646,1647],{"class":624}," createdTime",[479,1649,603],{"class":488},[479,1651,1652],{"class":481}," ISODate",[479,1654,1655],{"class":488}," }>",[479,1657,489],{"class":624},[479,1659,1660],{"class":488},"{\n",[479,1662,1664,1667,1669,1671,1674,1676],{"class":587,"line":1663},17,[479,1665,1666],{"class":624},"    method",[479,1668,603],{"class":488},[479,1670,1447],{"class":488},[479,1672,1673],{"class":835},"crm.item.list",[479,1675,832],{"class":488},[479,1677,609],{"class":488},[479,1679,1681,1684,1686],{"class":587,"line":1680},18,[479,1682,1683],{"class":624},"    params",[479,1685,603],{"class":488},[479,1687,1388],{"class":488},[479,1689,1691,1694,1696,1699,1701,1704],{"class":587,"line":1690},19,[479,1692,1693],{"class":624},"      entityTypeId",[479,1695,603],{"class":488},[479,1697,1698],{"class":492}," EnumCrmEntityTypeId",[479,1700,517],{"class":488},[479,1702,1703],{"class":492},"company",[479,1705,609],{"class":488},[479,1707,1709,1712,1714,1717,1719,1722,1724,1726,1728,1731,1733,1735,1737,1740,1742],{"class":587,"line":1708},20,[479,1710,1711],{"class":624},"      select",[479,1713,603],{"class":488},[479,1715,1716],{"class":624}," [",[479,1718,832],{"class":488},[479,1720,1721],{"class":835},"id",[479,1723,832],{"class":488},[479,1725,1317],{"class":488},[479,1727,1447],{"class":488},[479,1729,1730],{"class":835},"title",[479,1732,832],{"class":488},[479,1734,1317],{"class":488},[479,1736,1447],{"class":488},[479,1738,1739],{"class":835},"createdTime",[479,1741,832],{"class":488},[479,1743,1744],{"class":624},"]\n",[479,1746,1748],{"class":587,"line":1747},21,[479,1749,1750],{"class":488},"    },\n",[479,1752,1754,1757,1759,1761,1763,1765],{"class":587,"line":1753},22,[479,1755,1756],{"class":624},"    idKey",[479,1758,603],{"class":488},[479,1760,1447],{"class":488},[479,1762,1721],{"class":835},[479,1764,832],{"class":488},[479,1766,609],{"class":488},[479,1768,1770,1773,1775,1777,1780],{"class":587,"line":1769},23,[479,1771,1772],{"class":624},"    requestId",[479,1774,603],{"class":488},[479,1776,1447],{"class":488},[479,1778,1779],{"class":835},"companies-list",[479,1781,1453],{"class":488},[479,1783,1785,1788],{"class":587,"line":1784},24,[479,1786,1787],{"class":488},"  }",[479,1789,648],{"class":624},[479,1791,1793],{"class":587,"line":1792},25,[479,1794,1460],{"emptyLinePlaceholder":1459},[479,1796,1798,1800,1802,1804,1807,1809,1812,1814],{"class":587,"line":1797},26,[479,1799,1567],{"class":1384},[479,1801,1570],{"class":624},[479,1803,1573],{"class":488},[479,1805,1806],{"class":492},"response",[479,1808,517],{"class":488},[479,1810,1811],{"class":492},"isSuccess",[479,1813,1579],{"class":624},[479,1815,1660],{"class":488},[479,1817,1819,1822,1824,1827,1829,1831,1834,1836,1838,1840,1843,1845,1847,1849,1852,1855,1857],{"class":587,"line":1818},27,[479,1820,1821],{"class":492},"    $logger",[479,1823,517],{"class":488},[479,1825,1826],{"class":1481},"error",[479,1828,489],{"class":624},[479,1830,832],{"class":488},[479,1832,1833],{"class":835},"REST error",[479,1835,832],{"class":488},[479,1837,1317],{"class":488},[479,1839,621],{"class":488},[479,1841,1842],{"class":624}," messages",[479,1844,603],{"class":488},[479,1846,1596],{"class":492},[479,1848,517],{"class":488},[479,1850,1851],{"class":1481},"getErrorMessages",[479,1853,1854],{"class":624},"() ",[479,1856,1441],{"class":488},[479,1858,648],{"class":624},[479,1860,1862],{"class":587,"line":1861},28,[479,1863,1864],{"class":1384},"    return\n",[479,1866,1868],{"class":587,"line":1867},29,[479,1869,1870],{"class":488},"  }\n",[479,1872,1874],{"class":587,"line":1873},30,[479,1875,1460],{"emptyLinePlaceholder":1459},[479,1877,1879,1882,1884,1886,1889,1891,1894,1897,1899,1901,1904,1906,1909,1911],{"class":587,"line":1878},31,[479,1880,1881],{"class":1384},"  return",[479,1883,1596],{"class":492},[479,1885,517],{"class":488},[479,1887,1888],{"class":1481},"getData",[479,1890,1559],{"class":624},[479,1892,1893],{"class":488},"!.",[479,1895,1896],{"class":1481},"map",[479,1898,489],{"class":624},[479,1900,489],{"class":488},[479,1902,1903],{"class":599},"item",[479,1905,496],{"class":488},[479,1907,1908],{"class":1466}," =>",[479,1910,1570],{"class":624},[479,1912,1660],{"class":488},[479,1914,1916,1919,1921,1924,1926,1928,1930,1932,1934],{"class":587,"line":1915},32,[479,1917,1918],{"class":624},"    id",[479,1920,603],{"class":488},[479,1922,1923],{"class":1481}," Number",[479,1925,489],{"class":624},[479,1927,1903],{"class":492},[479,1929,517],{"class":488},[479,1931,1721],{"class":492},[479,1933,496],{"class":624},[479,1935,609],{"class":488},[479,1937,1939,1942,1944,1947,1949,1951],{"class":587,"line":1938},33,[479,1940,1941],{"class":624},"    title",[479,1943,603],{"class":488},[479,1945,1946],{"class":492}," item",[479,1948,517],{"class":488},[479,1950,1730],{"class":492},[479,1952,609],{"class":488},[479,1954,1956,1959,1961,1964,1966,1969,1971,1973,1975,1977],{"class":587,"line":1955},34,[479,1957,1958],{"class":624},"    createdTime",[479,1960,603],{"class":488},[479,1962,1963],{"class":492}," Text",[479,1965,517],{"class":488},[479,1967,1968],{"class":1481},"toDateTime",[479,1970,489],{"class":624},[479,1972,1903],{"class":492},[479,1974,517],{"class":488},[479,1976,1739],{"class":492},[479,1978,648],{"class":624},[479,1980,1982,1984],{"class":587,"line":1981},35,[479,1983,1787],{"class":488},[479,1985,1986],{"class":624},"))\n",[479,1988,1990],{"class":587,"line":1989},36,[479,1991,1992],{"class":488},"}\n",[479,1994,1996],{"class":587,"line":1995},37,[479,1997,1460],{"emptyLinePlaceholder":1459},[479,1999,2001,2003,2005,2008,2010],{"class":587,"line":2000},38,[479,2002,1550],{"class":1466},[479,2004,1553],{"class":1466},[479,2006,2007],{"class":1481}," bootstrap",[479,2009,1559],{"class":488},[479,2011,1388],{"class":488},[479,2013,2015,2018],{"class":587,"line":2014},39,[479,2016,2017],{"class":1384},"  try",[479,2019,1388],{"class":488},[479,2021,2023,2026,2028,2030,2033],{"class":587,"line":2022},40,[479,2024,2025],{"class":492},"    $b24",[479,2027,878],{"class":488},[479,2029,1601],{"class":1384},[479,2031,2032],{"class":1481}," initializeB24Frame",[479,2034,2035],{"class":624},"()\n",[479,2037,2039,2042,2045,2047,2049,2051],{"class":587,"line":2038},41,[479,2040,2041],{"class":1466},"    const",[479,2043,2044],{"class":492}," companies",[479,2046,878],{"class":488},[479,2048,1601],{"class":1384},[479,2050,1556],{"class":1481},[479,2052,2035],{"class":624},[479,2054,2056,2058,2060,2063,2065,2067,2070,2072,2074,2076,2078,2081],{"class":587,"line":2055},42,[479,2057,1821],{"class":492},[479,2059,517],{"class":488},[479,2061,2062],{"class":1481},"notice",[479,2064,489],{"class":624},[479,2066,832],{"class":488},[479,2068,2069],{"class":835},"companies",[479,2071,832],{"class":488},[479,2073,1317],{"class":488},[479,2075,621],{"class":488},[479,2077,2044],{"class":492},[479,2079,2080],{"class":488}," }",[479,2082,648],{"class":624},[479,2084,2086,2088,2091,2093,2095,2097],{"class":587,"line":2085},43,[479,2087,1787],{"class":488},[479,2089,2090],{"class":1384}," catch",[479,2092,1570],{"class":624},[479,2094,1826],{"class":492},[479,2096,1579],{"class":624},[479,2098,1660],{"class":488},[479,2100,2102,2104,2106,2108,2110,2112,2115,2117,2119,2121,2124,2126],{"class":587,"line":2101},44,[479,2103,1821],{"class":492},[479,2105,517],{"class":488},[479,2107,1826],{"class":1481},[479,2109,489],{"class":624},[479,2111,832],{"class":488},[479,2113,2114],{"class":835},"init failed",[479,2116,832],{"class":488},[479,2118,1317],{"class":488},[479,2120,621],{"class":488},[479,2122,2123],{"class":492}," error",[479,2125,2080],{"class":488},[479,2127,648],{"class":624},[479,2129,2131],{"class":587,"line":2130},45,[479,2132,1870],{"class":488},[479,2134,2136],{"class":587,"line":2135},46,[479,2137,1992],{"class":488},[479,2139,2141],{"class":587,"line":2140},47,[479,2142,1460],{"emptyLinePlaceholder":1459},[479,2144,2146,2149],{"class":587,"line":2145},48,[479,2147,2148],{"class":1481},"bootstrap",[479,2150,2035],{"class":492},[466,2152,2153],{},[469,2154,2155,2156,2161],{},"Страница должна работать как ",[499,2157,2160],{"href":2158,"rel":2159},"https:\u002F\u002Fapidocs.bitrix24.ru\u002Fapi-reference\u002Fapp-installation\u002Flocal-apps\u002Findex.html",[535],"приложение Bitrix24"," (внутри placement-iframe). Вне этого контекста рукопожатие с родительским окном никогда не завершится.",[2163,2164,2165],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}",{"title":477,"searchDepth":596,"depth":596,"links":2167},[2168,2169,2180,2191],{"id":577,"depth":596,"text":578},{"id":785,"depth":596,"text":786,"children":2170},[2171,2172,2173,2174,2175,2176,2177,2178,2179],{"id":790,"depth":612,"text":793},{"id":841,"depth":612,"text":844},{"id":890,"depth":612,"text":893},{"id":558,"depth":612,"text":558},{"id":561,"depth":612,"text":561},{"id":564,"depth":612,"text":564},{"id":570,"depth":612,"text":570},{"id":573,"depth":612,"text":573},{"id":567,"depth":612,"text":567},{"id":1110,"depth":596,"text":1111,"children":2181},[2182,2183,2184,2185,2186,2187,2189],{"id":1114,"depth":612,"text":1114},{"id":1150,"depth":612,"text":1150},{"id":1175,"depth":612,"text":926},{"id":1226,"depth":612,"text":1229},{"id":1252,"depth":612,"text":1255},{"id":1280,"depth":612,"text":2188},"getTargetOrigin \u002F getTargetOriginWithPath",{"id":1328,"depth":612,"text":2190},"Унаследовано от AbstractB24",{"id":1371,"depth":596,"text":1372},"md",[2194,2197],{"label":133,"iconName":2195,"to":2196},"GitHubIcon","https:\u002F\u002Fgithub.com\u002Fbitrix24\u002Fb24jssdk\u002Fblob\u002Fmain\u002Fpackages\u002Fjssdk\u002Fsrc\u002Fframe\u002Fb24.ts",{"label":327,"iconName":2195,"to":533},{},{"title":84},{"title":461,"description":134},"K6TpltkgyzC10ulGUqVo4d1seYlLfCv8E_WX_nybivI",{"data":2203,"body":2204},{},{"type":2205,"children":2206},"root",[2207],{"type":2208,"tag":469,"props":2209,"children":2210},"element",{},[2211],{"type":2212,"value":134},"text",1783080221122]