Sending attachments
Include anattachments array on POST /messages (the same field works on reply and forward requests). Each item needs a filename, a content_type, and the file’s bytes encoded as content_base64:
Request body
Receiving attachments
Inbound attachments are stored automatically and appear on every message retrieval — in webhook payloads,GET /messages/{id}, and GET /threads/{id}:
Attachment object
url field is a short-lived signed download link — fetch the file bytes directly from storage with no additional authentication. When the link expires, call GET /attachments/{id} to mint a fresh one at any time.
Size limit
Email providers cap total message size. A single email’s attachments must fit within ~7 MB so the base64-encoded message stays under the 10 MB provider limit. Attempting to send an oversized attachment returns413 attachment_too_large before the message is dispatched — it is never a silent failure.
Need to move larger files? Contact us about large-file support with direct-to-storage
uploads, available on higher plans.
Storage limits
Sentvia stores every inbound attachment against a per-plan cap:| Plan | Storage |
|---|---|
| Free | 1 GB |
| Pro | 20 GB |
| Scale | 100 GB |
| Business | 500 GB |
402 storage_limit_reached. Your outbound send is blocked, but inbound mail is never rejected — messages always arrive and are stored, and the dashboard warns you as you approach your limit. Track current usage on the Overview page.