1. Attachments
Messaging API
  • Root
    • OTT
      • Send OTT
    • SMS
      • Send SMS
        • SendSms
        • SendSmsBatch
    • Voice
      • Calls
        • Place a call, or launch a campaign
    • Email
      • Raíz
      • Service
        • Health check
      • Delivery
        • Queue transactional email(s) for delivery
      • Attachments
        • DEPRECATED — you do not need this to send attachments
          POST
      • Templates
        • List EmailTemplates owned by the calling client
  • Raíz
  • Schemas
    • Schemas
      • MessageChannel
      • ApiSmsRequest
      • VoiceApiRequest
      • EmailRecipient
      • OTTMessagePayload
      • EmailRequest
      • OTTMessageRequest
      • EmailResponse
      • EmailResult
    • EmailDeliverAttachment
    • VoiceDeliverRequest
    • SmsBatchRequest
    • EmailDeliverPayload
    • ErrorMessage
    • BatchError
    • EmailDeliverRequest
    • ProblemDetails
    • EmailDeliverResult
    • CampaignAccepted
    • EmailDeliverResponse
    • AttachmentUploadResponse
    • EmailTemplateSummary
  1. Attachments

DEPRECATED — you do not need this to send attachments

Deprecated
POST
/attachments
Last modified:2026-08-21 18:59:10
Do not build on this endpoint. To send attachments, put them in the POST /deliver request as attachmentName + content (base64). One call, nothing to upload, nothing to store.
It exists because attachments used to require two calls: upload here, then send the returned attachmentId. Integrations built that way keep working and nothing is being removed, but there is no reason to start that way.

Restrictions#

Maximum 8 MB per file.
An email may carry up to 10 attachments, adding up to 8 MB.
Allowed: PDF, Word, Excel, PowerPoint, ODF, TXT, CSV, RTF, images (JPG/PNG/GIF/BMP/WEBP) and ZIP.
Executables, scripts, HTML and anything else are rejected. The check is a whitelist by extension and a file-signature match, so renaming a file does not get it through.
The returned attachmentId is valid for 24 hours (see expiresUtc).
Allowed extensions: .bmp .csv .doc .docx .gif .jpeg .jpg .odp .ods .odt .pdf .png .ppt .pptx .rtf .txt .webp .xls .xlsx .zip

Request

Authorization
API Key
Add parameter in header
X-API-KEY
Example:
X-API-KEY: ********************
or
Body Params multipart/form-dataRequired

Responses

🟢200
application/json
File stored.
Bodyapplication/json

🟠400
🟠401
🟠403
🔴500
Request Request Example
Shell
JavaScript
Java
Swift
curl --location 'https://api.trucontact.co/attachments' \
--header 'X-API-KEY: <api-key>' \
--form 'file=@""'
Response Response Example
200 - ok
{
    "attachmentId": "7f3a9c21e4b04d6f9a1c8e5b2d70f431",
    "originalName": "invoice-2026-04.pdf",
    "sizeBytes": 248193,
    "expiresUtc": "2026-08-22T03:14:07Z"
}
Modified at 2026-08-21 18:59:10
Previous
Queue transactional email(s) for delivery
Next
List EmailTemplates owned by the calling client
Built with