Συνημμένα

Ανεβάστε αρχεία και επισυνάψτε τα σε εξερχόμενα email. Τα εισερχόμενα email με συνημμένα αποθηκεύονται αυτόματα και είναι προσβάσιμα μέσω του API.

Επισκόπηση

Το AgentSend χειρίζεται συνημμένα αρχείων και προς τις δύο κατευθύνσεις. Για εξερχόμενο email, ανεβάζετε πρώτα ένα αρχείο για να λάβετε ένα ID συνημμένου, και μετά περνάτε αυτό το ID όταν στέλνετε μήνυμα. Για εισερχόμενο email, οποιαδήποτε συνημμένα συμπεριέλαβε ο αποστολέας αποθηκεύονται αυτόματα και εμφανίζονται στο αντικείμενο μηνύματος — δεν απαιτείται επιπλέον εργασία.

Τα συνημμένα αποθηκεύονται με ασφάλεια και προσφέρονται μέσω βραχύβιων presigned URLs. Οι σύνδεσμοι λήψης λήγουν μετά από 1 ώρα — ανακτήστε ένα νέο URL από το API όταν χρειάζεστε πρόσβαση σε αρχείο.

Ανέβασμα Συνημμένου

Στείλτε ένα request POST στο /attachments με το αρχείο ως multipart/form-data. Η απάντηση επιστρέφει ένα αντικείμενο συνημμένου με ένα id που μπορείτε να χρησιμοποιήσετε όταν στέλνετε ένα μήνυμα.

curl
curl -X POST https://api.agentsend.io/attachments \
  -H "x-api-key: $AGENTSEND_API_KEY" \
  -F "file=@/path/to/report.pdf"
javascript
const form = new FormData();
form.append("file", fileBlob, "report.pdf");

const res = await fetch("https://api.agentsend.io/attachments", {
  method: "POST",
  headers: { "x-api-key": process.env.AGENTSEND_API_KEY },
  body: form,
});

const attachment = await res.json();
console.log(attachment.id); // e.g. "att_a1b2c3d4"

Ιδιότητες Συνημμένου

Κάθε αντικείμενο συνημμένου περιέχει τα εξής πεδία:

Πεδίο Τύπος Περιγραφή
id string Μοναδικό αναγνωριστικό συνημμένου (πρόθεμα att_).
filename string Αρχικό όνομα αρχείου όπως ανέβηκε ή ελήφθη.
contentType string Τύπος MIME, π.χ. application/pdf ή image/png.
size number Μέγεθος αρχείου σε bytes.
url string Presigned URL λήψης. Λήγει μετά από 1 ώρα.
createdAt string Χρονοσήμανση ISO 8601 αποθήκευσης του συνημμένου.

Επισύναψη σε Μηνύματα

Περάστε έναν πίνακα attachmentIds στο σώμα μηνύματος κατά την αποστολή. Μπορείτε να αναφέρετε πολλαπλά συνημμένα σε ένα μεμονωμένο μήνυμα.

javascript
// 1. Upload the file
const form = new FormData();
form.append("file", fileBlob, "invoice.pdf");
const { id: attachmentId } = await fetch("https://api.agentsend.io/attachments", {
  method: "POST",
  headers: { "x-api-key": process.env.AGENTSEND_API_KEY },
  body: form,
}).then(r => r.json());

// 2. Send the message with the attachment
await fetch(`https://api.agentsend.io/inboxes/${inboxId}/messages`, {
  method: "POST",
  headers: {
    "x-api-key": process.env.AGENTSEND_API_KEY,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    to: ["customer@example.com"],
    subject: "Your invoice",
    bodyText: "Please find your invoice attached.",
    attachmentIds: [attachmentId],
  }),
});

Ανάκτηση Συνημμένων

Ανακτήστε ένα μεμονωμένο συνημμένο με ID με GET /attachments/{id}. Η απάντηση περιλαμβάνει ένα νέο presigned url που μπορείτε να χρησιμοποιήσετε για να κατεβάσετε το αρχείο.

javascript
const attachment = await fetch(
  `https://api.agentsend.io/attachments/${attachmentId}`,
  { headers: { "x-api-key": process.env.AGENTSEND_API_KEY } }
).then(r => r.json());

// Download the file using the presigned URL
const fileData = await fetch(attachment.url).then(r => r.arrayBuffer());

Εισερχόμενα Συνημμένα

Όταν φτάνει εισερχόμενο email με συνημμένα, το AgentSend αποθηκεύει κάθε αρχείο αυτόματα. Το αντικείμενο μηνύματος θα περιλαμβάνει έναν πίνακα attachments — κάθε καταχώρηση περιέχει τα metadata που χρειάζονται για την αναγνώριση και λήψη του αρχείου.

json — inbound message (excerpt)
{
  "id": "msg_xyz",
  "subject": "Here's the contract",
  "attachments": [
    {
      "id": "att_a1b2c3",
      "filename": "contract.pdf",
      "contentType": "application/pdf",
      "size": 204800
    }
  ]
}

Για να κατεβάσετε ένα εισερχόμενο συνημμένο, περάστε το id του στο GET /attachments/{id} για να λάβετε ένα presigned URL λήψης όπως φαίνεται στην ενότητα Ανάκτηση Συνημμένων παραπάνω.

Όρια Μεγέθους

Το μέγιστο μέγεθος για μεμονωμένο συνημμένο είναι 25 MB. Αυτό ισχύει τόσο για uploads όσο και για εισερχόμενα συνημμένα — αρχεία που υπερβαίνουν αυτό το όριο σε εισερχόμενο email απορρίπτονται και προστίθεται σημείωση περικοπής στο μήνυμα.

Πολλοί διακομιστές mail λήψης επιβάλλουν επίσης τα δικά τους όρια μεγέθους συνημμένων (συχνά 10–25 MB). Κρατήστε τα συνημμένα μικρά ή εξετάστε τη σύνδεση σε αρχεία που φιλοξενούνται εξωτερικά για βέλτιστη παραδοσιμότητα.