[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"docs-entities\u002Factivities\u002Ftranscript":3,"docs-tabs-entities\u002Factivities\u002Ftranscript":6},{"content":4,"lastmod":5},"# Расшифровки звонков CRM\n\n`GET \u002Fv1\u002Factivities\u002F:activityId\u002Ftranscript`\n\nВозвращает готовую AI-расшифровку звонка клиента, зафиксированного в CRM как дело типа «Звонок» и обработанного на портале с помощью BitrixGPT. Метод только читает уже готовую расшифровку — генерацию не запускает.\n\nБитрикс24 API: `crm.activity.call.getTranscript`\nСкоуп: `crm`\n\n## Параметры\n\n| Параметр | Тип | Обяз. | Описание |\n|----------|-----|:-----:|---------|\n| `activityId` (path) | number | да | ID дела-звонка. Список: [`GET \u002Fv1\u002Factivities`](\u002Fdocs\u002Fentities\u002Factivities\u002Flist) |\n\n## Примеры\n\n### curl — личный ключ\n\n```bash\ncurl \"https:\u002F\u002Fvibecode.bitrix24.tech\u002Fv1\u002Factivities\u002F12345\u002Ftranscript\" \\\n  -H \"X-Api-Key: YOUR_API_KEY\"\n```\n\n### curl — OAuth-приложение\n\n```bash\ncurl \"https:\u002F\u002Fvibecode.bitrix24.tech\u002Fv1\u002Factivities\u002F12345\u002Ftranscript\" \\\n  -H \"X-Api-Key: YOUR_APP_KEY\" \\\n  -H \"Authorization: Bearer USER_SESSION_TOKEN\"\n```\n\n### JavaScript — личный ключ\n\n```javascript\nconst res = await fetch('https:\u002F\u002Fvibecode.bitrix24.tech\u002Fv1\u002Factivities\u002F12345\u002Ftranscript', {\n  headers: {\n    'X-Api-Key': 'YOUR_API_KEY',\n  },\n})\n\nconst { data } = await res.json()\nif (data.transcription === null) {\n  \u002F\u002F расшифровки ещё нет — это не ошибка\n} else {\n  console.log(data.transcription)\n}\n```\n\n### JavaScript — OAuth-приложение\n\n```javascript\nconst res = await fetch('https:\u002F\u002Fvibecode.bitrix24.tech\u002Fv1\u002Factivities\u002F12345\u002Ftranscript', {\n  headers: {\n    'X-Api-Key': 'YOUR_APP_KEY',\n    'Authorization': 'Bearer USER_SESSION_TOKEN',\n  },\n})\n\nconst { data } = await res.json()\n```\n\n## Поля ответа\n\n| Поле | Тип | Описание |\n|------|-----|---------|\n| `transcription` | string \\| null | Полный текст расшифровки. Значение `null` приходит со статусом `200`, когда расшифровки для звонка ещё нет — звонок не обработан или обработка не завершилась. Проверяйте `data.transcription === null` |\n\n## Пример ответа\n\nРасшифровка готова:\n\n```json\n{\n  \"success\": true,\n  \"data\": {\n    \"transcription\": \"Здравствуйте, чем могу помочь?\"\n  }\n}\n```\n\nРасшифровки пока нет — `transcription` равно `null`, статус остаётся `200`:\n\n```json\n{\n  \"success\": true,\n  \"data\": {\n    \"transcription\": null\n  }\n}\n```\n\n## Пример ответа при ошибке\n\n403 — нет доступа к расшифровке:\n\n```json\n{\n  \"success\": false,\n  \"error\": {\n    \"code\": \"BITRIX_ACCESS_DENIED\",\n    \"message\": \"Доступ запрещён\",\n    \"hint\": \"Access denied to this call transcript. Two possible causes: (1) the API key owner lacks read access to a CRM entity bound to this call activity, or (2) AI call processing is not enabled on this portal. Verify the user's CRM permissions, and confirm AI call processing (transcription) is turned on.\"\n  }\n}\n```\n\n## Ошибки\n\n| HTTP | Код | Описание |\n|------|-----|---------|\n| 403 | `BITRIX_ACCESS_DENIED` | Один код на два повода: нет прав на CRM-сущность, к которой привязан звонок, либо на портале выключена AI-обработка звонков. Поле `hint` называет оба |\n| 403 | `SCOPE_DENIED` | API-ключ не имеет скоупа `crm` |\n| 400 | `INVALID_PARAMS` | `activityId` не положительное целое число |\n| 401 | `TOKEN_MISSING` | API-ключ не имеет настроенных токенов |\n| 404 | `ENTITY_NOT_FOUND` | Дело с таким `activityId` не найдено или не имеет CRM-привязок |\n\nПолный список общих ошибок API — [Ошибки](\u002Fdocs\u002Ferrors).\n\n## Известные особенности\n\n- Расшифровка доступна, если у ключа есть права на чтение хотя бы одной CRM-сущности — сделки, лида, контакта или компании, к которой привязан звонок. Дополнительно на портале должна быть включена AI-обработка звонков (BitrixGPT).\n- Расшифровка появляется не сразу: портал формирует её после завершения звонка. Пока обработка не закончена, `transcription` равно `null` со статусом `200`. Повторите запрос позже.\n\n## Смотрите также\n\n- [Получить дело](\u002Fdocs\u002Fentities\u002Factivities\u002Fget)\n- [Список дел](\u002Fdocs\u002Fentities\u002Factivities\u002Flist)\n- [Привязки дел](\u002Fdocs\u002Fentities\u002Factivities\u002Fbindings)\n- [Лимиты и оптимизация](\u002Fdocs\u002Foptimization)\n","2026-07-07",{}]