Для разработчиков

Новый токен бота

POST/bots/{id}/tokens

Выпускает боту ещё один токен со своим именем и правами. Токенов у бота может быть несколько: например, отдельный на каждый сервис, чтобы отзывать их по одному.

Значение токена приходит в ответе один раз — сохраните его сразу. Токен бессрочный и работает, пока его не удалят.

Права выбирают из тех, что можно выдать боту: их перечисляет GETКаталог прав бота. На право не из каталога метод отвечает 400. Без scopes токен выпускается без прав.

Работать с токенами бота могут только его создатель и администратор пространства, если настройки бота открывают администраторам доступ к редактированию. Владельцу чата с ботом метод отвечает 403, даже когда остальные настройки бота ему открыты.

Параметры пути

id
integer, (int32)
*
Идентификатор бота
Пример:1738816

Тело запроса

application/json
name
string
*
Имя токена: по нему токены различают в списке
Пример:Сервер уведомлений
Длина:
<= 255 символов
scopes[]
array of strings
Права токена. Доступны только права, которые можно выдать боту. Если не передать, токен выпускается без прав.
Пример:["messages:create","chats:read"]

Ответ

201Created
The request has succeeded and a new resource has been created as a result.
data
object
*
Токен бота
id
integer, (int64)
*
Идентификатор токена
Пример:4827
token
string
*
Токен в маскированном виде (видны первые 8 и последние 4 символа). Полное значение приходит один раз: при выпуске и перевыпуске токена.
Пример:cH5kR9mN...x7Qp
name
nullablestring
*
Имя токена. null у токена, выпущенного без имени.
Пример:Сервер уведомлений
user_id
integer, (int64)
*
Идентификатор бота, которому принадлежит токен
Пример:1738816
scopes[]
array of strings
*
Права токена
Пример:["messages:create","chats:read"]
created_at
string, (date-time)
*
Дата и время выпуска токена (ISO-8601, UTC+0) в формате YYYY-MM-DDThh:mm:ss.sssZ
Пример:2025-01-15T10:30:00.000Z
revoked_at
nullablestring, (date-time)
*
Дата отзыва токена. Всегда null: отозванные токены в ответ не попадают.
Пример:null
expires_in
nullableinteger, (int32)
*
Время жизни токена в секундах. У токенов бота null: они бессрочные.
Пример:null
last_used_at
nullablestring, (date-time)
*
Дата последнего использования токена. null, пока по токену не было ни одного запроса. Обновляется не чаще раза в час, поэтому может отставать.
Пример:2025-02-24T14:20:00.000Z
authorized_at
nullablestring, (date-time)
*
Дата авторизации. У токенов бота null.
Пример:null
Новый токен бота
pachca bots create-token 1738816 \  --name='Сервер уведомлений' \  --scopes='["messages:create","chats:read"]' \  --json \  --token YOUR_ACCESS_TOKEN
Ответ 201
{  "data": {    "id": 4827,    "token": "bm90X2FfcmVhbF90b2tlbg",    "name": "Сервер уведомлений",    "user_id": 1738816,    "scopes": [      "messages:create",      "chats:read"    ],    "created_at": "2025-01-15T10:30:00.000Z",    "revoked_at": null,    "expires_in": null,    "last_used_at": null,    "authorized_at": null  }}