SnapPDFSnapPDF
integration · messaging · soon

SnapPDF + Discord

Bot that compresses any PDF uploaded to a channel above 10MB.

The SnapPDF Discord bot is currently in private preview (shipping Q3 2026). Install it to a server, give it read permissions on the channels where PDFs are shared, and it auto-compresses any PDF above a configurable threshold (default 10MB). Also exposes slash commands for ad-hoc ops. Biggest use case: education Discords where students share massive scanned textbooks.

What you can build

  • Auto-compress PDFs above threshold.
  • Slash commands: /snappdf compress|merge|ocr.
  • Per-channel config — different thresholds per channel.
  • Ephemeral responses (private to invoker) for sensitive ops.
  • Rate-limited to Discord's 50 req/s per bot token.

Setup

  1. 01
    Request preview access
    Email preview@snappdf.dev with your Discord server ID and intended use.
  2. 02
    Install the bot
    Preview invite link is sent individually; public invite TBD at launch.
  3. 03
    Configure threshold
    /snappdf config threshold 10MB — per-channel or per-server.
  4. 04
    Test with a large upload
    Upload a 20MB PDF. Bot reacts, compresses, replies with compressed version.

Code example

Illustrative bot handler (the actual bot is more involved).

client.on('messageCreate', async msg => {
  for (const att of msg.attachments.values()) {
    if (!att.name?.endsWith('.pdf')) continue;
    if (att.size < THRESHOLD) continue;

    await msg.react('⏳');

    const { pdf } = await snap.pdf.compress({
      fileUrl: att.url,
      level: 'high',
      stripMetadata: true,
    });

    await msg.reply({
      content: `Compressed ${att.name} (${fmt(att.size)} → ${fmt(pdf.byteLength)})`,
      files: [{ attachment: pdf, name: att.name.replace('.pdf', '-compressed.pdf') }],
    });
    await msg.reactions.removeAll();
  }
});

Known limits

  • · Preview-only access until Q3 2026.
  • · Discord CDN URLs expire after 24h; process quickly.

Pricing notes

Preview is free. At GA, available on Starter+ for production use.

Available from the Starter plan.

FAQ

When will it launch publicly?

Q3 2026, targeting August.

Why preview-only?

Discord bot verification takes 6-8 weeks. We want 100 private servers running cleanly before applying for verified status.

Can I self-host the bot?

Not yet. The code will open-source at GA under MIT so you can fork.

Discord's own limits?

Discord caps bot uploads at 25MB (non-Nitro servers) and 500MB (Boost level 3). SnapPDF compress brings big files under these limits.

GDPR?

We process only files explicitly in channels the bot is invited to. No message content is stored.

Start freeRead the quickstart

Related integrations