Подробная инструкция по подключению VKFormBot
Обновлено 17 августа 2026 г.
VKFormBot принимает данные с формы на вашем сайте и мгновенно пересылает их вам в личные сообщения ВКонтакте. В этой инструкции — пошаговое подключение, примеры кода и ответы на частые вопросы.
Содержание
- Авторизация и подписка на бота
- Добавление и подтверждение сайта
- Получение endpoint для формы
- Простая HTML-форма без JavaScript
- Форма с JavaScript-обработчиком (fetch)
- Проверка и отладка
- Тарифы и лимиты
- Частые вопросы
Шаг 1. Авторизация и подписка на бота
Для начала работы нужно, чтобы сервис знал, в чей VK отправлять заявки.
- Нажмите Войти через VK и разрешите доступ к базовым данным профиля (id, имя, фото).
- Напишите боту сообщества VKFormBot команду
/start. Это привязывает диалог к вашему аккаунту. - После авторизации вы попадёте в личный кабинет.
Шаг 2. Добавление и подтверждение сайта
VKFormBot должен убедиться, что вы действительно владеете сайтом. Для этого используется мета-тег.
- В личном кабинете введите название и адрес сайта, нажмите «Добавить».
- Сервис выдаст уникальный мета-тег вида:
<meta name="vk-formbot-verify" content="a1b2c3d4-e5f6-...">
- Разместите этот мета-тег внутри
<head>на главной странице вашего сайта (обычно это файлindex.htmlили шаблон<head>в CMS). - Нажмите «Проверить мета-тег» в кабинете. Если всё верно, сайт получит статус «Подтверждён».
Шаг 3. Получение endpoint для формы
После подтверждения сайта в кабинете появится уникальный адрес (endpoint), на который нужно отправлять данные формы. Он выглядит так:
https://vkformbot.ru/api/v1/submit/ВАШ-УНИКАЛЬНЫЙ-UUID
Именно этот адрес нужно указать в форме или в JavaScript-обработчике.
Шаг 4. Простая HTML-форма без JavaScript
Самый простой способ — обычная HTML-форма. При отправке пользователь увидит пустой экран или будет перенаправлен обратно (в зависимости от настроек браузера), но сообщение в VK придёт.
<form action="https://vkformbot.ru/api/v1/submit/ВАШ-UUID" method="POST"> <input type="text" name="name" placeholder="Ваше имя" required> <input type="email" name="email" placeholder="Email" required> <input type="tel" name="phone" placeholder="Телефон"> <textarea name="message" placeholder="Сообщение"></textarea> <button type="submit">Отправить</button> </form>
Важно: поля могут быть любыми, но у каждого поля должен быть атрибут name. Это имя будет использовано в сообщении VK.
Шаг 5. Форма с JavaScript-обработчиком (fetch)
Если нужно показать пользователю сообщение «Отправлено» без перезагрузки страницы, используйте JavaScript. Ниже — готовый пример, который отправляет форму через fetch и обрабатывает ответ.
<!-- Форма на сайте -->
<form id="vkformbot-form">
<input type="text" name="name" placeholder="Ваше имя" required>
<input type="email" name="email" placeholder="Email" required>
<textarea name="message" placeholder="Сообщение"></textarea>
<button type="submit">Отправить</button>
<p id="vkformbot-result"></p>
</form>
<script>
(function () {
var endpoint = 'https://vkformbot.ru/api/v1/submit/ВАШ-UUID';
var form = document.getElementById('vkformbot-form');
var result = document.getElementById('vkformbot-result');
form.addEventListener('submit', async function (e) {
e.preventDefault();
result.textContent = 'Отправляем...';
var params = new URLSearchParams(new FormData(form));
try {
var resp = await fetch(endpoint, {
method: 'POST',
headers: { 'Accept': 'application/json' },
body: params
});
var data = await resp.json();
if (!resp.ok) throw new Error(data.detail || 'Ошибка сервера');
result.textContent = '✅ Отправлено! Мы ответим вам в ВК.';
form.reset();
} catch (err) {
result.textContent = '❌ Ошибка: ' + err.message;
}
});
})();
</script>
Пояснения:
endpoint— адрес из вашего личного кабинета.new FormData(form)собирает все поля формы.URLSearchParamsпреобразует данные в форматapplication/x-www-form-urlencoded, который понимает VKFormBot.- Заголовок
Accept: application/jsonговорит серверу вернуть JSON-ответ, а не перенаправлять на страницу referer. - Если ответ успешен, пользователь видит сообщение об успехе; при ошибке — текст ошибки.
Пример на чистом curl
Для проверки endpoint можно использовать curl из командной строки:
curl -X POST https://vkformbot.ru/api/v1/submit/ВАШ-UUID \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "name=Иван" \ -d "email=ivan@example.com" \ -d "message=Здравствуйте, у меня вопрос"
Шаг 6. Проверка и отладка
После установки формы обязательно протестируйте отправку:
- Откройте страницу с формой, заполните и отправьте.
- Убедитесь, что в VK пришло сообщение от бота VKFormBot.
- Если сообщения нет, откройте консоль браузера (F12 → Console) и посмотрите ошибки CORS или сети.
- Проверьте, что endpoint в коде точно совпадает с endpoint в кабинете, включая протокол
https://.
Шаг 7. Тарифы и лимиты
После регистрации всем пользователям доступен бесплатный тариф «Стандарт»:
- до 2 сайтов;
- до 20 отправок формы в сутки на каждый сайт.
Если нужно больше сайтов или отправок, в личном кабинете можно перейти на платный тариф. При оплате более чем на 6 месяцев предоставляется скидка 25%.
Владелец сообщества (пользователь с ID 471891640) имеет безлимитный тариф навсегда.
Частые вопросы
Где взять endpoint?
В личном кабинете откройте нужный сайт. После подтверждения там будет блок с адресом endpoint и кнопкой «Копировать».
Можно ли отправлять JSON?
Да, сервер понимает и application/x-www-form-urlencoded, и multipart/form-data, и application/json. При использовании JS-обработчика рекомендуется формат-urlencoded, чтобы не нужно было отдельно прикреплять файлы.
Хранятся ли данные заявок на сервере?
Нет. VKFormBot получает данные, формирует сообщение и тут же отправляет его в VK. Содержимое заявок не сохраняется и не попадает в логи.
Что будет, если превысить лимит отправок?
После достижения суточного лимита форма временно вернёт ошибку 429. Лимит обновляется каждые сутки. Для увеличения лимита перейдите на другой тариф.