إدارة عمليات ترحيل البريد الإلكتروني عبر API

أدر عمليات ترحيل البريد الإلكتروني عبر TrekMail API: اختبر الاتصالات، وابدأ الاستيراد، وراقب التقدم، وألغ المهام أو أعدها، واحذف السجلات.

تفاصيل المقال

النوع والصعوبة والخطط ومعلومات آخر تحديث.

النوع
مرجع
الصعوبة
متوسط
الخطط
Starter · Pro · Agency
آخر تحديث
9 سبتمبر 2026

تتيح لك API الترحيل استيراد البريد الإلكتروني من أي موفر IMAP إلى صندوق بريد TrekMail من خلال تكامل أو وكيل. يمكنك اختبار الاتصالات وبدء الاستيراد ومراقبة التقدم لكل مجلد وإلغاء المهام قيد التشغيل وإعادة محاولة العمليات الفاشلة وتنظيف السجلات القديمة.

قبل البدء

  • تحتاج إلى خطة Starter أو أعلى. لا تتضمن خطة Nano أداة الترحيل.
  • يمكن لخطتي Pro وAgency بدء عمليات الترحيل وإلغاؤها وإعادة محاولتها وحذفها عبر API (migrations:read + migrations:write). يمكن لخطة Starter قراءة عمليات الترحيل عبر API وتشغيل عمليات جديدة من لوحة التحكم.
  • يمكن تشغيل عملية ترحيل واحدة لكل حساب في كل مرة. ابدأ عملية جديدة بعد انتهاء العملية الحالية أو ألغ الحالية أولا.

النطاقات

النطاق ما يفعله الخطط
migrations:read سرد عمليات الترحيل وعرض تفاصيل عملية الترحيل Starter · Pro · Agency
migrations:write اختبار الاتصالات والبدء والإلغاء وإعادة المحاولة والحذف Pro · Agency

نقاط النهاية

اختبار الاتصال

POST /api/v1/migrations/test-connection
Scope: migrations:write

تتحقق من بيانات اعتماد IMAP وتعيد قائمة بمجلدات المصدر مع أعداد الرسائل. استخدمها قبل بدء عملية ترحيل للتأكد من عمل الاتصال والسماح للمستخدم باختيار المجلدات التي يريد استيرادها.

نص الطلب:

الحقل النوع مطلوب الوصف
source_host string نعم اسم مضيف خادم IMAP (مثل imap.gmail.com)
source_port integer نعم منفذ IMAP (عادة 993 لاتصال SSL)
source_security string نعم ssl أو tls أو none
source_email string نعم عنوان البريد الإلكتروني على خادم المصدر
source_username string لا اسم المستخدم إذا كان مختلفا عن البريد الإلكتروني
source_password string نعم كلمة المرور أو كلمة مرور التطبيق

الاستجابة (نجاح):

{
  "success": true,
  "folders": {
    "INBOX": 1234,
    "Sent": 567,
    "Drafts": 12,
    "Work": 89
  }
}

الاستجابة (فشل): 422 مع رمز الخطأ connection_failed.

سرد عمليات الترحيل

GET /api/v1/migrations
Scope: migrations:read

تعيد قائمة مقسمة إلى صفحات بمهام الترحيل في حسابك.

معلمات الاستعلام:

المعلمة النوع الوصف
status string التصفية حسب الحالة (pending أو validating أو planning أو processing أو completed أو failed أو cancelled)
mailbox_id integer التصفية حسب صندوق البريد الوجهة
per_page integer النتائج في كل صفحة (الافتراضي: 20، الحد الأقصى: 100)

الحصول على عملية ترحيل

GET /api/v1/migrations/{id}
Scope: migrations:read

تعيد حالة الترحيل التفصيلية، بما في ذلك تفصيل التقدم لكل مجلد.

الاستجابة:

{
  "data": {
    "id": 5,
    "mailbox_id": 10,
    "mailbox_email": "support@acme.com",
    "provider": "gmail",
    "source_host": "imap.gmail.com",
    "source_email": "j***e@gmail.com",
    "status": "processing",
    "progress": 45,
    "total_messages": 1234,
    "imported_messages": 556,
    "failed_messages": 2,
    "skipped_duplicates": 12,
    "selected_folders": ["INBOX", "Sent"],
    "import_since": "2025-01-01",
    "skip_duplicates": true,
    "folders": [
      { "name": "INBOX", "status": "processing", "expected": 1000, "imported": 450, "failed": 2, "skipped": 10 },
      { "name": "Sent", "status": "pending", "expected": 234, "imported": 0, "failed": 0, "skipped": 0 }
    ],
    "error_message": null,
    "poll_hint_seconds": 10,
    "started_at": "2026-03-13T10:00:00+00:00",
    "finished_at": null,
    "created_at": "2026-03-13T09:59:50+00:00"
  }
}

تخبرك poll_hint_seconds بمعدل استطلاع التحديثات: كل 5 ثوان أثناء pending/validating/planning، وكل 10 ثوان أثناء processing، وتكون null في الحالات النهائية.

يُحجب جزء من source_email لأسباب أمنية (مثل j***e@gmail.com).

بدء عملية ترحيل

POST /api/v1/migrations
Scope: migrations:write

تبدأ عملية ترحيل بريد إلكتروني جديدة. يمكن تشغيل عملية ترحيل واحدة فقط لكل حساب في كل مرة.

نص الطلب:

الحقل النوع مطلوب الوصف
mailbox_id integer نعم معرف صندوق بريد TrekMail الوجهة
provider string نعم gmail أو outlook أو yahoo أو icloud أو generic_imap
source_host string نعم اسم مضيف خادم IMAP
source_port integer نعم منفذ IMAP
source_security string نعم ssl أو tls أو none
source_email string نعم عنوان البريد الإلكتروني المصدر
source_username string لا اسم المستخدم إذا كان مختلفا عن البريد الإلكتروني
source_password string نعم كلمة مرور المصدر أو كلمة مرور التطبيق
selected_folders string[] لا مجلدات محددة لاستيرادها (الافتراضي: الكل)
import_since date لا استيراد رسائل البريد الإلكتروني بعد هذا التاريخ فقط
skip_duplicates boolean لا تخطي الرسائل المكررة (الافتراضي: true)

الاستجابة: 201 مع مورد مهمة الترحيل.

استجابات الخطأ:

الحالة الرمز المعنى
409 conflict توجد عملية ترحيل نشطة قيد التشغيل بالفعل في هذا الحساب
503 migration_capacity_reached تم بلوغ حد الترحيل على مستوى الخادم (يمكن إعادة المحاولة)
422 validation_error المعلمات غير صالحة أو صندوق البريد غير موجود

إلغاء عملية ترحيل

POST /api/v1/migrations/{id}:cancel
Scope: migrations:write

تلغي عملية ترحيل قيد التشغيل. يجب أن تكون العملية في حالة نشطة (pending أو validating أو planning أو processing).

إعادة محاولة عملية ترحيل

POST /api/v1/migrations/{id}:retry
Scope: migrations:write

تعيد محاولة عملية ترحيل بحالة failed أو cancelled. تعيد ضبط التقدم إلى 0 وتدخل مسار التحقق مرة أخرى.

تعيد 409 إذا كانت هناك عملية ترحيل أخرى قيد التشغيل في الحساب.

عمليات الترحيل الجزئية

قد تحاول TrekMail مواصلة عملية ترحيل مكتملة جزئيا عندما يكون ذلك آمنا. تحقق من حالة الترحيل قبل اتخاذ أي إجراء. إذا لم تعد العملية تتقدم، فراجع بيانات اعتماد حساب المصدر وحدوده، ثم استخدم نقطة نهاية إعادة المحاولة أو إجراء متابعة في لوحة التحكم. لا تفترض أن الاستيراد الجزئي سيكتمل دون التحقق من حالته النهائية.

حذف عملية ترحيل

DELETE /api/v1/migrations/{id}
Scope: migrations:write

تحذف سجل عملية الترحيل. يجب ألا تكون العملية قيد التشغيل (ألغها أولا).

تعيد 204 No Content عند النجاح.

حدود المعدل

تخضع عمليات كتابة الترحيل لحد معدل مخصص يبلغ 10 طلبات في الدقيقة لكل رمز، وهو منفصل عن حد معدل API القياسي.

يفرض الخادم أيضا حدا عاما للتزامن (الافتراضي: 20 عملية ترحيل متزامنة). عند بلوغ الحد، تعيد طلبات الترحيل الجديدة 503 مع migration_capacity_reached وretryable: true. انتظر بضع دقائق ثم أعد المحاولة.

أحداث التدقيق

تُسجل كل إجراءات API الترحيل في سجل التدقيق:

  • migration_started: بدأت عملية ترحيل جديدة
  • migration_cancelled: أُلغيت عملية ترحيل قيد التشغيل
  • migration_retried: أُعيدت محاولة عملية ترحيل فاشلة أو ملغاة
  • migration_deleted: حُذف سجل عملية ترحيل

أدوات MCP

تتوفر إمكانات الترحيل نفسها عبر خادم MCP، بما في ذلك إجراءات الاختبار والسرد والبدء والإلغاء وإعادة المحاولة والاستئناف وتحديث كلمة المرور والحذف لعمليات الترحيل الفردية والجماعية. يمكن لمسؤول MCP مستضاف محليا أن يطلب موافقة صريحة على عمليات كتابة الترحيل. راجع ربط وكلاء الذكاء الاصطناعي (MCP) لمزيد من التفاصيل.

API الترحيل الجماعي

تتيح لك API الترحيل الجماعي ترحيل العديد من الحسابات دفعة واحدة باستخدام حمولة بيانات بنمط CSV. راجع الترحيل الجماعي للبريد الإلكتروني للاطلاع على دليل المستخدم، وتنسيق CSV للترحيل الجماعي للاطلاع على تنسيق البيانات.

نقاط النهاية

الطريقة نقطة النهاية النطاق الوصف
POST /api/v1/migrations/bulk/preview migrations:write معاينة بيانات CSV والتحقق منها
POST /api/v1/migrations/bulk migrations:write بدء دفعة ترحيل جماعي
GET /api/v1/migrations/bulk migrations:read سرد دفعات الترحيل الجماعي
GET /api/v1/migrations/bulk/{id} migrations:read الحصول على تفاصيل الدفعة مع حالة كل مهمة
POST /api/v1/migrations/bulk/{id}:cancel migrations:write إلغاء الدفعة بأكملها
POST /api/v1/migrations/bulk/{id}:retry migrations:write إعادة محاولة المهام الفاشلة في الدفعة
POST /api/v1/migrations/bulk/{id}:resume migrations:write استئناف الدفعة المتوقفة مؤقتا
DELETE /api/v1/migrations/bulk/{id} migrations:write حذف سجل الدفعة
PATCH /api/v1/migrations/bulk/{id}/jobs/{job}/password migrations:write تحديث كلمة مرور المصدر لمهمة فاشلة

طلب المعاينة

POST /api/v1/migrations/bulk/preview
Scope: migrations:write
الحقل النوع مطلوب الوصف
data string نعم بيانات CSV (صف واحد في كل سطر)
provider string لا gmail أو outlook أو yahoo أو icloud أو generic_imap
source_host string لا مضيف IMAP (إذا كان الموفر generic_imap)
source_port integer لا منفذ IMAP (الافتراضي 993)
source_security string لا ssl أو tls أو none
per_row_server boolean لا لكل صف إعدادات خادم خاصة به (تنسيق من 6 أعمدة)

تتضمن الاستجابة صفوفا مصنفة (valid وinvalid_source_email وinvalid_destination وما إلى ذلك)، وحدود الخطة، وتقدير الوقت، ومعلومات التخزين.

طلب بدء الدفعة

POST /api/v1/migrations/bulk
Scope: migrations:write

الحقول نفسها الموجودة في المعاينة، بالإضافة إلى:

الحقل النوع مطلوب الوصف
name string لا اسم الدفعة (يُنشأ تلقائيا إذا كان فارغا)
folder_strategy string لا all أو standard أو inbox_only (الافتراضي: all)
import_since string لا مرشح التاريخ (YYYY-MM-DD)
skip_duplicates boolean لا تخطي الرسائل المكررة (الافتراضي: true)
idempotency_key string لا مفتاح عدم التكرار المقدم من العميل

حدود التزامن

الخطة أقصى عدد صفوف لكل دفعة المتزامن لكل حساب
Starter 100 2
Pro 300 5
Agency 1,000 10

الحد العام للخادم (20 عملية ترحيل متزامنة) مشترك بين عمليات الترحيل الفردية والجماعية.

أدوات MCP

أدوات MCP للترحيل الجماعي هي preview_bulk_migration وstart_bulk_migration وlist_bulk_migrations وget_bulk_migration وcancel_bulk_migration وretry_bulk_migration وresume_bulk_migration وdelete_bulk_migration وupdate_bulk_migration_job_password. يمكن لمسؤول MCP مستضاف محليا أن يطلب موافقة صريحة على إجراءات الكتابة.

حلول سريعة

  • 403 "insufficient_scope": يحتاج الرمز إلى migrations:read أو migrations:write. أنشئ رمزا جديدا بالنطاقات الصحيحة.
  • 403 "token_scope_blocked_by_plan": تتطلب نطاقات الترحيل خطة مدفوعة (Starter أو أعلى).
  • 409 "active migration running": ألغ عملية الترحيل الحالية أو انتظر حتى تنتهي.
  • 503 "migration_capacity_reached": بلغ الخادم أقصى سعته. أعد المحاولة بعد بضع دقائق.
  • 422 عند test-connection: تحقق من بيانات اعتماد IMAP واسم المضيف والمنفذ وإعداد الأمان.

مقالات ذات صلة

انتقل إلى الأدلة القريبة التي تُكمل سير العمل.

نستخدم التقنيات الضرورية لتشغيل TrekMail وحمايته. عند التأكيد، تسمح أيضًا بتحليلات محدودة وقياس الإعلانات كما هو موضح في سياسة ملفات تعريف الارتباط.

تسجيل الدخول إلى TrekMail

الوصول إلى لوحة التحكم وصناديق البريد وإعدادات DNS الخاصة بك.

أو

12 أحرف كلمتا المرور متطابقتان

أو

تم إرسال بريد إعادة التعيين

إذا كان هناك حساب مرتبط بهذا البريد الإلكتروني، فقد أرسلنا تعليمات إعادة تعيين كلمة المرور.

بالمتابعة، فإنك توافق على شروط TrekMail و سياسة الخصوصية.