Строка slackbot в черновиках часто описывают как «оператор не указан публично» — хотя здесь редкий случай, когда сам оператор официально и подробно документирует поведение своего бота на отдельной странице: api.slack.com/robots. Это Slack (продукт Salesforce), и его агент для превью ссылок работает не совсем так, как большинство ботов из этой энциклопедии, — с одним важным исключением из общего правила про robots.txt.
Что такое Slackbot на самом деле
Полное имя агента — Slackbot-LinkExpanding, с отдельным компаньоном Slack-ImgProxy для загрузки изображений. Когда пользователь Slack вставляет ссылку в канал или личное сообщение, Slackbot-LinkExpanding обращается к странице, используя HTTP Range-заголовки, чтобы забрать минимально необходимую часть страницы и извлечь oEmbed, Open Graph и Twitter Card теги для превью-карточки. Ответы кешируются на стороне Slack примерно на 30 минут, поэтому повторных запросов к одному и тому же URL чаще этого интервала быть не должно.
| Параметр | Значение |
| Название | Slackbot (полное имя — Slackbot-LinkExpanding; компаньон — Slack-ImgProxy) |
| User-Agent / паттерн | Slackbot-LinkExpanding 1.0 (+https://api.slack.com/robots) |
| Оператор | Slack (Salesforce) — официально задокументировано на api.slack.com/robots |
| Категория TrafficVeil | Фетчер превью-ссылок мессенджера (не проверка интеграции и не общий краулер) |
| Что делает на сайте | Забирает минимальную часть страницы для генерации превью ссылки, вставленной пользователем в Slack |
| Список IP | ❌ Отдельного публичного списка IP не найдено; проверяйте ASN и поведение |
| robots.txt | Официально НЕ соблюдается — Slack прямо заявляет, что не учитывает robots.txt для этого бота, так как действует от имени человека, а не как самостоятельный краулер |
| Пометка TrafficVeil | Легитимный — визит означает, что вашу страницу упомянули в Slack |
Зачем Slackbot приходит на сайт
Триггер — не расписание, а конкретное действие пользователя Slack: он вставил вашу ссылку в сообщение, и сервис обращается к странице, чтобы вытащить мета-теги для превью-карточки. Это тот же принцип, что у facebookexternalhit, Twitterbot или Snap URL Preview Service — точечный, событийный визит к одной конкретной странице, а не системный обход сайта.
Важный нюанс: почему robots.txt здесь не работает
В отличие от большинства ботов в этой энциклопедии, Slack официально и прямо заявляет: «Мы не соблюдаем файлы robots.txt. После внедрения и экспериментов с этим мы получили слишком много жалоб от пользователей, потому что значительная часть интернета недоступна для краулеров. Поскольку мы не краулер — мы не переходим по ссылкам и действуем от имени человека, — было логично перестать обрабатывать robots.txt, как если бы мы были краулером». Практический вывод: директива в robots.txt для Slackbot ничего не изменит — если нужно ограничить доступ, единственный рабочий способ — блокировка на уровне сервера по UA или IP.
Как найти Slackbot в логах
# Базовый поиск
grep -i "slackbot" /var/log/nginx/access.log
# Какие именно страницы упоминали в Slack
grep -i "slackbot" /var/log/nginx/access.log | awk '{print $7}' | sort | uniq -c | sort -rn | head
# Топ IP
grep -i "slackbot" /var/log/nginx/access.log | awk '{print $1}' | sort | uniq -c | sort -rn | head
Для верификации сверяйте IP через ASN — единичные точечные визиты к конкретной странице характерны для настоящего фетчера, а не для спуфинга:
IP="1.2.3.4"
whois -h whois.cymru.com " -v $IP"
Блокировка вручную и через TrafficVeil
# robots.txt Slack официально не читает, но директиву всё равно можно оставить
# как сигнал для других инструментов, которые её уважают
User-agent: Slackbot-LinkExpanding
Allow: /
TrafficVeil: для этого бота разумный вариант по умолчанию — «легитимный» без ограничений: нагрузка минимальна и кешируется самим Slack, а польза (корректные превью при упоминании ссылки в рабочих чатах) обычно перевешивает риски. Если всё же требуется заблокировать бота — не полагайтесь на robots.txt, настраивайте правило на уровне nginx/Apache или в TrafficVeil по UA/IP.
Что в итоге делать со Slackbot
| Ситуация | Действие |
| Стандартный случай | Allow без ограничений — визитов мало, а превью в Slack полезны для B2B-контента |
| Аудитория Slack не релевантна бизнесу | Блокировка на уровне сервера/TrafficVeil — robots.txt для этого не сработает |
| Подозрение на спуфинг (высокая частота, обход многих URL) | Сверять по ASN — настоящий Slackbot так себя не ведёт |