CloudStorage API: хранение данных пользователя
Сохранишь и прочитаешь данные пользователя через CloudStorage Mini App без своего бэкенда.
CloudStorage
CloudStorage (Bot API 6.9+) — ключ-значение хранилище в инфраструктуре Telegram: до 1024 ключей на пользователя на бота, значение до 4096 символов. Данные привязаны к паре «пользователь + бот», доступны с любого устройства, где открыт тот же Mini App.
Это не замена серверной БД для платежей и прав доступа: пользователь или клиент теоретически может влиять на клиентский контекст. Для секретов и балансов — свой бэкенд + валидный initData.
setItem / getItem
Ограничения ключей: 1–128 символов, только A-Z a-z 0-9 _ -.
Как это работает
- Привязка — данные живут у Telegram в контексте бота и
user.id, не вlocalStorageустройства. - Колбэки — API асинхронный через callback; оберни в Promise для async/await.
- Лимиты — 1024 ключа, 4096 символов на значение; для больших данных — свой storage.
- Не для секретов — токены сессий и приватные ключи сюда не клади.
Частые ошибки
Кладёшь JSON > 4096 символов → setItem падает. Сократи payload или храни на сервере.
Ключ с точкой или пробелом → недопустимые символы. Используй snake_case / kebab-case.
Считаешь CloudStorage источником правды для баланса → легко рассинхронизировать с сервером. Деньги и доступы — только бэкенд после валидации initData.
Что дальше
- initData: проверка на бэкенде — когда нужен свой сервер вместо CloudStorage
- Отправка данных в бот (sendData) — передать результат боту одним сообщением
- Тема оформления mini-app — пример настройки, которую логично хранить в CloudStorage
Материалы gramdocs.tech носят образовательный характер и не являются финансовой, юридической или инвестиционной рекомендацией. Работа с блокчейном TON и токеном Gram связана с рисками потери средств. Правовая информация