Tapter для агентов и интеграций

Агент может создать страницу, загрузить картинки, добавить блоки и посмотреть на результат — от имени пользователя, который дал ему доступ, и только на его страницах.

Как подключиться

Рекомендуем

MCP: один клик, без токена

Добавьте этот адрес коннектором в своём MCP-клиенте. Клиент зарегистрируется сам, один раз откроет браузер, пользователь нажмёт «Разрешить» — и подключение готово. Никуда ничего вставлять не нужно.

https://tapter.one/mcp

OAuth 2.1 с PKCE и динамической регистрацией клиента. Токен не покидает связку «браузер — клиент», а пользователь может отключить приложение в «Настройках → API» в любой момент.

REST: для скриптов и агентов без MCP

API описывает себя сам. Начните с корня — он не требует токена и рассказывает, где лежит всё остальное: спецификация OpenAPI и схема каждого типа блока.

curl https://tapter.one/api/v1

Тот же OAuth работает и здесь. Для curl и планировщика пользователь может вместо этого выпустить персональный токен в «Настройках → API».

Типичные вызовы

Получить список страниц аккаунта

curl -H "Authorization: Bearer $TAPTER_TOKEN" \
  "https://tapter.one/api/v1/profiles"

Создать страницу

Сначала проверьте адрес: это публичный URL страницы, и занятый стоит лишнего круга.

curl -H "Authorization: Bearer $TAPTER_TOKEN" \
  "https://tapter.one/api/v1/profiles/check-login?login=my.coffee"

curl -X POST -H "Authorization: Bearer $TAPTER_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"login":"my.coffee"}' \
  "https://tapter.one/api/v1/profiles"

Добавить блок

У каждого типа блока есть своя JSON Schema, описания полей и готовый пример. Незнакомое поле вернётся как 422 с его именем — агент чинится с первой попытки. Заголовок «Precognition: true» проверяет запрос, ничего не записывая.

curl -H "Authorization: Bearer $TAPTER_TOKEN" \
  "https://tapter.one/api/v1/slot-types/button"

curl -X POST -H "Authorization: Bearer $TAPTER_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: add-button-1" \
  -d '{"type":"button","data":{"title":"Book now","link":"https://example.com/book"}}' \
  "https://tapter.one/api/v1/profiles/my.coffee/slots"

Проверить результат

Готовая страница в markdown — та же самая, что видит посетитель, и в том же порядке. Дешевле и надёжнее скриншота.

curl -H "Authorization: Bearer $TAPTER_TOKEN" \
  "https://tapter.one/api/v1/profiles/my.coffee/markdown"

Что доступно интеграции

Доступ выдаётся на пользователя и делится надвое:

  • profile:read — читать страницы аккаунта и всё, что на них.
  • profile:write — создавать страницы, добавлять, изменять и удалять блоки на них.
  • Видны только страницы того аккаунта, который выдал доступ. Чужих для API не существует.
  • Пользователь отключает приложение в один клик, и его следующий запрос сразу перестаёт работать.

Лимиты

  • 5 запросов в секунду и 60 в минуту, считаются по токену.
  • До 100 страниц на аккаунт.
  • До 100 блоков на страницу.
  • Картинки до 10 МБ, когда сервер скачивает их по ссылке; файлы крупнее — обычной multipart-загрузкой.

Чего сознательно нет

  • Удаления страницы. Оно необратимо, и делается только в дашборде.
  • Событий и билетов. Блоки событий можно читать и переставлять, но не создавать и не менять.
  • Витрин, товаров и заказов.
  • Настроек аккаунта, пароля, почты и платёжных данных.

Для машин

Всё, что нужно агенту, отдаётся по своим адресам. Эта страница их не дублирует: два описания одного контракта неизбежно разъезжаются.