صناديق البريد

يحصل كل وكيل على صندوق بريد خاص به بعنوان بريد إلكتروني فريد. صناديق البريد هي الوحدة الأساسية في AgentSend.

نظرة عامة

صندوق البريد هو عنوان بريد إلكتروني مخصص لوكيل واحد. كل رسالة يرسلها أو يستقبلها وكيلك تمر عبر صندوق بريد. يمكنك إنشاء أي عدد من صناديق البريد — واحد لكل وكيل، أو لكل عميل، أو لكل سير عمل — لا توجد قيود.

افتراضياً، يتم تجهيز صناديق البريد على نطاق @agentsend.io. إذا أردت أن يرسل وكلاؤك من نطاقك الخاص (مثل agent@yourcompany.com)، راجع النطاقات المخصصة.

صناديق البريد معزولة عن بعضها. لا يمكن للوكيل إرسال أو استقبال البريد إلا عبر صندوقه الخاص — ولا يستطيع الوصول إلى رسائل صندوق آخر.

إنشاء صندوق بريد

POST /inboxes

أنشئ صندوق بريد جديد بإرسال طلب POST. كلا الحقلين في الجسم اختيار‌ي — إذا تركت displayName، يُنشأ الصندوق بدونه. إذا تركت domainId، يُجهَّز العنوان على @agentsend.io.

javascript
const res = await fetch("https://api.agentsend.io/inboxes", {
  method: "POST",
  headers: {
    "x-api-key": process.env.AGENTSEND_API_KEY,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    displayName: "Support Agent",   // optional
    domainId: "dom_abc123",         // optional — omit for @agentsend.io
  }),
});

const inbox = await res.json();
console.log(inbox.address); // e.g. a1b2c3@agentsend.io
console.log(inbox.id);      // e.g. inb_7x9kQm2Np...

تتضمن الاستجابة كائن صندوق البريد الكامل، بما في ذلك address المُولَّد تلقائياً والذي يمكنك استخدامه فوراً.

خصائص صندوق البريد

يحتوي كل كائن صندوق بريد على الحقول التالية:

الخاصية النوع الوصف
id string (uuid) المعرّف الفريد لصندوق البريد. استخدمه في جميع طلبات API.
address string (email) عنوان البريد الإلكتروني الكامل المُعيَّن لهذا الصندوق، مثل a1b2c3@agentsend.io.
displayName string | null تسمية مقروءة للصندوق. تظهر كاسم المرسل في ترويسات الرسائل الصادرة.
domainId string | null معرّف نطاق مخصص مرتبط بهذا الصندوق. null لعناوين @agentsend.io الافتراضية.
status string الحالة الحالية للصندوق: active أو suspended أو deleted. صناديق active فقط يمكنها الإرسال والاستقبال.
dailySendLimit number الحد الأقصى لعدد الرسائل التي يمكن للصندوق إرسالها في نافذة 24 ساعة.
sendsToday number عدد الرسائل المُرسلة في النافذة الحالية (24 ساعة). يُعاد التعيين عند منتصف ليل UTC.
totalSent number العدد التراكمي لجميع الرسائل المُرسلة من هذا الصندوق منذ إنشائه.
bounceCount number عدد الارتدادات الحادة المسجلة لهذا الصندوق. قد تؤدي معدلات الارتداد المرتفعة إلى تعليقه.
complaintCount number عدد شكاوى البريد المزعج المسجلة لهذا الصندوق.
createdAt string (ISO 8601) طابع زمني لوقت إنشاء الصندوق.

النطاقات المخصصة

افتراضياً، يحصل كل صندوق على عنوان على @agentsend.io. إذا أردت أن يرسل وكلاؤك من نطاقك الخاص — مثلاً agent@support.yourcompany.com — يمكنك ربط نطاق مخصص وتمرير domainId عند إنشاء الصندوق.

💡

تحسّن النطاقات المخصصة قابلية التسليم وثقة العلامة التجارية. راجع دليل النطاقات لإضافة نطاقك والتحقق منه، ثم عد هنا لإنشاء صناديق عليه.

قائمة صناديق البريد

GET /inboxes

احصل على قائمة مقسَّمة إلى صفحات لجميع صناديق البريد في حسابك. استخدم limit وoffset للتنقل بين الصفحات.

javascript
const res = await fetch(
  "https://api.agentsend.io/inboxes?limit=20&offset=0",
  {
    headers: { "x-api-key": process.env.AGENTSEND_API_KEY },
  }
);

const { data, total } = await res.json();
// data  — array of inbox objects
// total — total count across all pages

for (const inbox of data) {
  console.log(inbox.address, inbox.status, inbox.sendsToday);
}
معامل الاستعلام Type Description
limit number عدد النتائج المطلوب إرجاعها. الافتراضي 20، الحد الأقصى 100.
offset number عدد النتائج المطلوب تخطيها. الافتراضي 0.

حذف صندوق بريد

DELETE /inboxes/{id}

يحذف صندوق البريد نهائياً مع جميع الرسائل والمحادثات وWebhooks المرتبطة به.

هذا الإجراء نهائي ولا يمكن التراجع عنه. تُحذف فوراً كل الرسائل والمحادثات واشتراكات webhook التابعة للصندوق. يُحرَّر عنوان البريد وقد يُعاد تعيينه.

javascript
await fetch(`https://api.agentsend.io/inboxes/${inboxId}`, {
  method: "DELETE",
  headers: { "x-api-key": process.env.AGENTSEND_API_KEY },
});
// Returns 204 No Content on success

حدود الإرسال

لكل صندوق dailySendLimit يحدد عدد الرسائل التي يمكن إرسالها خلال نافذة 24 ساعة المتجددة. يخبرك الحقل sendsToday بعدد عمليات الإرسال المستخدمة في النافذة الحالية.

إذا بلغ الصندوق حده، تُرجع طلبات الإرسال التالية خطأ 429 Too Many Requests. تُعاد النافذة عند منتصف ليل UTC.

راقب sendsToday قبل إرسال دفعات كبيرة. إذا احتاج وكيلك إلى إرسال أكثر مما يسمح به الحد الافتراضي، تواصل مع الدعم لطلب زيادة لحسابك.

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

const remaining = inbox.dailySendLimit - inbox.sendsToday;
if (remaining <= 0) {
  console.log("Daily send limit reached. Try again after midnight UTC.");
} else {
  console.log(`${remaining} sends remaining today`);
}