Guide

Allow Discordbot through Cloudflare

Discordbot is Discord’s link-preview crawler. It must receive HTTP 200 HTML with Open Graph tags and optional component-embed JSON. A Cloudflare JS challenge, bot fight mode, or email-obfuscation rewrite on that response will prevent the unfurl.

WAF exception

Create a Cloudflare custom rule: if User-Agent contains Discordbot and the path starts with /p/, skip all remaining challenges and Bot Fight Mode. Return 200. Do the same for image hosts you reference in the gallery.

Confirm with curl -A Discordbot https://tinycord.com/p/demo-launch — you should see the inline script in the body, not a challenge interstitial.

Cache versus recrawl

Discord caches a preview for about 30 minutes. Cloudflare should not add another 30 minutes of HTML cache on user slugs or edits will look stuck. Keep CDN s-maxage short (about 15 seconds) on /p/*.

Do not append ?v= to the public share URL. That forces everyone to re-paste. Use ?v= only in Embed Debugger while testing.

Try it on your own page

Or browse the examples gallery.

Create a card