Перейти к содержимому

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

Запрос

POST https://gptunnel.ru/v1/assistant/create

Создаёт ассистента с теми же настройками, что доступны в веб-интерфейсе. Владельцем становится пользователь, которому принадлежит API-ключ.

Обязательны только title и modelId — остальные поля имеют значения по умолчанию.

Headers

ПараметрТипОписание
Authorization*stringAPI ключ

Request Body

ПараметрТипОписание
title*stringНазвание, до 16 символов — как в форме на сайте
modelId*stringID текстовой модели из /v1/models. Модель должна быть разрешена для этого ключа
mentionstringКод ассистента — он же assistantCode в чате и адрес страницы. 3–16 символов: буквы, цифры, дефис, подчёркивание. Если не передан — сгенерируется автоматически
subtitlestringПодзаголовок, до 32 символов
descriptionstringОписание для витрины, до 4096 символов
picturestringСсылка на аватар, до 255 символов
instructionstringСистемная инструкция (промпт)
temperaturenumberТемпература генерации, 0–1. По умолчанию 0.5
sqlStorebooleanДоступ ассистента к собственной пустой SQLite-базе (экспериментально, только модели с поддержкой функций). По умолчанию false
accessobjectПриватность и витрина — см. таблицу ниже
databaseobject | nullПодключение RAG базы знаний — см. таблицу ниже
mcpArray<object>MCP-сервер — см. таблицу ниже. Не более одного элемента
apiFunctionsArray<object>Вызовы сторонних API — см. таблицу ниже. Не более 25

access

ПараметрТипОписание
access.isPrivatebooleanПриватный — не показывается в каталоге. По умолчанию false
access.isFreebooleanБесплатная установка. По умолчанию true
access.installPricenumberЦена установки в рублях, если isFree = false. По умолчанию 0
access.hideSettingsbooleanСкрыть настройки и инструкцию от других пользователей. По умолчанию false
access.orgIdstring | nullСделать ассистента корпоративным. Допустима только организация самого API-ключа, у личного ключа значение игнорируется. По умолчанию null — личный ассистент

database

ПараметрТипОписание
database.id*stringID базы знаний из /v1/database/list. База должна принадлежать владельцу ключа
database.requestFrequencystringКогда обращаться к базе: everytime — каждый запрос, auto — по решению модели, first — только первое сообщение
database.chunksnumberСколько фрагментов подкладывать в контекст

mcp[]

ПараметрТипОписание
mcp[].server*stringURL MCP-сервера, до 1024 символов
mcp[].clientIdstring | nullOAuth client id
mcp[].clientSecretstring | nullOAuth client secret
mcp[].accessTokenstring | nullГотовый access token, если авторизация уже пройдена
mcp[].scopestring | nullOAuth scope
mcp[].toolDisabledstring | nullОтключённые инструменты сервера, через запятую

apiFunctions[]

ПараметрТипОписание
apiFunctions[].name*stringИмя функции, которое видит модель
apiFunctions[].type*stringHTTP-метод: get или post
apiFunctions[].endpoint*stringURL, который будет вызван
apiFunctions[].descriptionstringОписание для модели — когда вызывать функцию
apiFunctions[].headersArray<object>Заголовки запроса: { key, value }
apiFunctions[].parametersArray<object>Параметры: { name, type (string | number | boolean), description, required, value }

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

{
"title": "Налоговый помощник",
"mention": "tax-helper",
"subtitle": "Консультации по НДС и УСН",
"description": "Отвечает на вопросы по налогам ИП и ООО.",
"instruction": "Ты налоговый консультант. Отвечай кратко, со ссылкой на статью НК РФ.",
"modelId": "gpt-4o",
"temperature": 0.3,
"sqlStore": false,
"access": {
"isPrivate": false,
"isFree": true,
"installPrice": 0,
"hideSettings": true,
"orgId": null
},
"database": {
"id": "68c9a1f0e4b0a2d3c4f5e6a7",
"requestFrequency": "auto",
"chunks": 3
},
"mcp": [
{
"server": "https://mcp.example.com/sse",
"clientId": "client-123",
"clientSecret": "secret-456",
"scope": "read",
"toolDisabled": "delete_file"
}
],
"apiFunctions": [
{
"type": "get",
"name": "get_rate",
"description": "Возвращает ставку НДС по категории товара",
"endpoint": "https://api.example.com/vat",
"headers": [{ "key": "X-Api-Key", "value": "..." }],
"parameters": [
{
"name": "category",
"type": "string",
"description": "Категория товара",
"required": true
}
]
}
]
}

Минимальный запрос

{
"title": "Помощник",
"modelId": "gpt-4o-mini"
}

Пример ответа

Секреты MCP (clientSecret, accessToken) в ответе не возвращаются.

{
"object": "assistant",
"id": "68c9b2d1e4b0a2d3c4f5e6b8",
"createDate": "2026-09-17T08:12:44.120Z",
"updateDate": "2026-09-17T08:12:44.120Z",
"mention": "tax-helper",
"title": "Налоговый помощник",
"subtitle": "Консультации по НДС и УСН",
"description": "Отвечает на вопросы по налогам ИП и ООО.",
"picture": "",
"modelId": "gpt-4o",
"temperature": "0.3",
"capabilities": 0,
"sqlStore": false,
"access": {
"isPrivate": false,
"isFree": true,
"installPrice": "0",
"hideSettings": true,
"orgId": null
},
"database": {
"id": "68c9a1f0e4b0a2d3c4f5e6a7",
"requestFrequency": "auto",
"chunks": 3
},
"mcp": [
{
"server": "https://mcp.example.com/sse",
"clientId": "client-123",
"scope": "read",
"toolDisabled": "delete_file"
}
],
"instruction": "Ты налоговый консультант...",
"apiFunctions": []
}