File Attachments
RapiDesq supports file attachments across every channel and surface where they're relevant — customer chat conversations, email replies, ticket attachments, internal team chat, knowledge base articles, and branding assets. Every file is scanned for viruses before anyone can download it, and customer data stays isolated per tenant. This guide covers where files can be attached, how uploads and downloads work, virus scanning, storage architecture, and configuration options like bring-your-own-storage for enterprise plans.
Overview
File attachments are consistent across the platform: same upload flow, same scanning, same access control, same retention. That consistency is the point — agents, customers, and admins shouldn't have to learn a different file handling model for each feature.
Every upload is scanned for viruses before anyone can download it. Every file is stored in per-tenant isolation so one tenant's files are never accessible to another. Files respect the same data residency commitments as the rest of your data — they stay in the region where your tenant was created.
Where Files Can Be Attached
- Chat conversations — customers upload through the chat widget; agents upload from the agent workspace. Images display inline; other files show as downloadable attachments with filename and size.
- Email channel — inbound emails with attachments flow into the ticket automatically; agents can attach files to outbound replies.
- Tickets — attach files directly to a ticket without them being messages. Useful for reference documents, screenshots, or evidence.
- Internal team chat — agents share files in one-to-one and group conversations.
- Knowledge base — attach images, PDFs, and other supporting files to knowledge base articles.
- Custom fields — a custom field of type "file" can hold a single attached file, tied to the ticket or contact.
- Branding assets — tenant logo, chat widget avatar, bot avatars, agent profile photos.
Upload Flow
Users upload files the ways you'd expect: clicking an attachment button, drag-and-drop into a conversation pane, or pasting from the clipboard (useful for screenshots). Regardless of entry point, the pipeline is the same:
- The file is uploaded directly from the user's browser to per-tenant storage using a short-lived secure upload URL. The upload doesn't pass through RapiDesq's application servers, which keeps the system scalable and reduces latency.
- The upload is registered against the context it belongs to (conversation, ticket, article, etc.) but marked as pending scan.
- Virus scanning runs asynchronously in the background. For most files this completes within seconds.
- Once scanning passes, the file becomes available to download. If it fails, the file is quarantined and the uploader is notified.
From a user perspective, the file appears immediately with a small indicator that scanning is in progress. For the typical case (clean files scanned in seconds), the delay is barely noticeable.
Virus Scanning
Every uploaded file is scanned before it becomes available for download. Files that fail scanning are:
- Quarantined — moved to an isolated location where they can't be downloaded.
- Logged — the upload event is recorded in the audit log with the scan result.
- Reported to the uploader — the user who uploaded sees that the file was blocked, so they know their file wasn't delivered.
- Not visible to downstream users — the file never appears to agents, customers, or other users in any form.
Admins can review quarantined files through the audit log and, if appropriate (a false positive on a business-critical file, for example), restore them after manual review.
Supported Formats and Size Limits
RapiDesq accepts all common file types by default — documents (PDF, Word, Excel, PowerPoint, text, Markdown), images (PNG, JPG, GIF, WebP, SVG), archives (ZIP), audio and video in common formats, and CAD, design, and other business file formats. Executable files (.exe, .bat, .sh, .app, and similar) are blocked by default because they're a common malware vector.
Size limits are configurable per tenant, with platform-level maximums (typically 100MB per file at launch). Admins can lower the limits to match their organization's policies.
Inbound email attachments are subject to the smaller of RapiDesq's limit and the email provider's own attachment size limits (typically 25MB for Gmail and 35MB for Microsoft 365).
Storage Architecture
RapiDesq provides per-tenant storage by default. Every tenant's files live in a dedicated storage bucket that no other tenant can access, with encryption at rest and in transit. Files stay in the region where your tenant was created, respecting the same data residency commitments as the rest of your data.
Bring Your Own Storage (Enterprise)
Enterprise plans can optionally connect their own cloud storage (AWS S3, Azure Blob Storage, or GCS) for file attachments. This gives the customer full control over where files live, with RapiDesq acting as a managed layer over the storage they own.
BYO storage is useful when:
- Compliance requirements specify that data must live in customer-owned infrastructure
- The organization has existing data governance tooling (DLP, retention, backup) that it wants applied to support files
- A specific region not yet covered by RapiDesq's regional deployments is required
Switching between RapiDesq-managed storage and BYO is supported without losing files or breaking existing references, though the migration can take time for tenants with large file volumes.
Access Control
File access follows the access control of the object the file is attached to:
- A file attached to a conversation is visible to the participants in that conversation (customer, assigned agents, supervisors of the relevant team).
- A file attached to a ticket is visible to anyone with permission to view that ticket.
- Internal team chat files are visible only to conversation participants.
- Knowledge base files inherit the visibility of their article — private collections mean private files; public collections (public help center) mean public files.
Every file download is logged in the audit trail with who downloaded it and when.
Clipboard Paste and Drag-Drop
For agents, pasting from the clipboard is the fastest way to share screenshots. Copy an image (OS screenshot shortcut), focus the conversation compose area, paste, done. The file uploads and appears inline.
Drag-and-drop works across the agent workspace: drag a file from the desktop onto a conversation, ticket, or team chat and it uploads to the right context.
Retention and Deletion
Files are retained according to the tenant's data retention policy (see Data Retention & GDPR). When a ticket, conversation, or contact is deleted, the associated files are deleted along with it. Files referenced only by archived content follow the retention policy for that archived content.
GDPR right-to-erasure requests remove files along with the associated customer data. Legal holds suspend deletion for files attached to the items on hold.
Best Practices
- Configure size limits to match your policies. The platform defaults are generous; most organizations want tighter limits for operational control.
- Use the knowledge base for reusable content, not ticket attachments. A screenshot that illustrates a common issue belongs in a KB article that the bot can cite, not as a one-off attachment to many tickets.
- Review quarantined files periodically. False positives happen. A monthly look at quarantine gives you visibility into what's being blocked and whether anything needs to be released.
- For regulated industries, consider BYO storage. If your DLP, backup, or audit tooling applies to storage, connecting your own bucket brings support files under the same governance.
Related Topics
- Chat Widget — file upload in customer-facing chat.
- Email Channel — attachments in inbound and outbound email.
- Ticket Management — attaching files directly to tickets.
- Data Retention & GDPR — retention policies for files and right-to-erasure handling.