وقت محدود: خصم 30% على أول دفعة.
العودة إلى نظرة عامة على API

توثيق InboxWarm API

التوثيق المرجعي لواجهة REST API الخاصة بـ InboxWarm. استخدمه إلى جانب مجموعة InboxWarm API Postman.

عنوان URL الأساسي#

https://app.inboxwarm.ai/api/v1

المصادقة#

يستخدم InboxWarm مخطط مصادقة مختلطًا اعتمادًا على طريقة HTTP:

GET

طلبات GET وDELETE — أرسل مفتاح API الخاص بك كمعامل استعلام api_key.

POST

طلبات POST وPATCH — أرسل مفتاح API الخاص بك كحقل apiKey داخل نص JSON.

أنشئ المفاتيح وأدرها من Developer kit > API Integration في تطبيق InboxWarm. يمنح كل مفتاح وصولًا كاملاً إلى الحساب عبر كل نقطة نهاية أدناه.

مثال — طلب GET:

GET https://app.inboxwarm.ai/api/v1/email-accounts?api_key=YOUR_API_KEY

مثال — نص طلب POST:

{
  "apiKey": "YOUR_API_KEY",
  ...
}

حدود المعدل#

الحد الافتراضي هو 20 طلبًا/دقيقة لكل مفتاح API. تحقق من الاستخدام الحالي في أي وقت عبر GET /rate-limit — لا يُحتسب هذا الاستدعاء ضمن حصتك.

الأخطاء#

تتبع الأخطاء بنية متسقة:

{
  "error_code": "validation_error",
  "message": "One or more fields are invalid.",
  "details": {}
}

قيم error_code الشائعة: validation_error (400)، not_found (404)، conflict (409)، unprocessable (422).

فهرس نقاط النهاية#

النظام

فحص الصحة#

GEThttps://app.inboxwarm.ai/api/v1/health

فحص أساسي لحيوية API.

المصادقة:معامل الاستعلامapi_key

الاستجابات

{
  "status": "ok"
}

حالة حد المعدل#

GEThttps://app.inboxwarm.ai/api/v1/rate-limit

تحقق من استهلاك حد المعدل الحالي دون استنفاد طلب من حصتك.

المصادقة:معامل الاستعلامapi_key

الاستجابات

{
  "limit": 20,
  "remaining": 18,
  "reset": 1752585600
}

حسابات البريد الإلكتروني

سرد حسابات البريد الإلكتروني#

GEThttps://app.inboxwarm.ai/api/v1/email-accounts

سرد حسابات البريد الإلكتروني المتصلة مع حالتها الحالية. يدعم البحث والترقيم والترتيب. استخدم البحث للعثور على emailAccountId لعنوان ما إذا احتجت في أي وقت إلى إعادة تحديده.

المصادقة:معامل الاستعلامapi_key

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

searchالبحث حسب عنوان البريد الإلكتروني أو الاسم
statusactive | warming | paused | error | auth-expired
sort
sortBy

الاستجابات

{
  "items": [
    {
      "id": "12345",
      "fromEmail": "john@yourcompany.com",
      "fromName": "John Doe",
      "type": "gmail",
      "status": "warming",
      "createdAt": "2026-06-01T10:00:00.000Z"
    },
    {
      "id": "12346",
      "fromEmail": "sales@yourcompany.com",
      "fromName": "Sales Team",
      "type": "microsoft",
      "status": "active",
      "createdAt": "2026-06-03T14:20:00.000Z"
    }
  ],
  "total": 2,
  "page": 1,
  "limit": 20,
  "totalPages": 1
}

ربط حساب بريد إلكتروني#

POSThttps://app.inboxwarm.ai/api/v1/email-accounts

اربط حساب Gmail أو Microsoft أو SMTP/IMAP باستخدام بيانات اعتماد SMTP/IMAP (تعمل كلمة مرور التطبيق مع كل من Gmail وMicrosoft). احفظ emailAccountId المُعاد — فكل نقطة نهاية أخرى مرتبطة به.

المصادقة:حقل النصapiKey

نص الطلب

{
  "apiKey": "{{apiKey}}",
  "fromEmail": "john@yourcompany.com",
  "fromName": "John Doe",
  "type": "gmail",
  "smtp": {
    "host": "smtp.example.com",
    "port": 587,
    "password": "your-password",
    "encryption": "TLS",
    "userName": "smtp-username"
  },
  "imap": {
    "host": "imap.example.com",
    "port": 993,
    "encryption": "SSL",
    "userName": "imap-username"
  }
}

الاستجابات

{
  "emailAccountId": "12345",
  "fromEmail": "john@yourcompany.com",
  "fromName": "John Doe",
  "type": "gmail",
  "status": "active"
}

ربط مجمّع لحسابات البريد الإلكتروني#

POSThttps://app.inboxwarm.ai/api/v1/email-accounts/bulk-connect

اربط ما يصل إلى 20 حسابًا في استدعاء واحد. يتم التحقق من كل إدخال وربطه بشكل مستقل — فلا يوقف حساب واحد غير صالح أو مكرر باقي الحسابات — وتُبلغ الاستجابة عن نجاح أو فشل كل حساب، بنفس ترتيب المُدخلات.

المصادقة:حقل النصapiKey

نص الطلب

{
  "apiKey": "{{apiKey}}",
  "emailAccounts": [
    {
      "fromEmail": "john@yourcompany.com",
      "fromName": "John Doe",
      "type": "gmail",
      "smtp": { "host": "smtp.example.com", "port": 587, "password": "your-password", "encryption": "TLS", "userName": "smtp-username" },
      "imap": { "host": "imap.example.com", "port": 993, "encryption": "SSL", "userName": "imap-username" }
    },
    {
      "fromEmail": "sales@yourcompany.com",
      "type": "microsoft",
      "smtp": { "password": "app-specific-password" }
    }
  ]
}

الاستجابات

{
  "results": [
    {
      "success": true,
      "emailAccountId": "12345",
      "fromEmail": "john@yourcompany.com",
      "fromName": "John Doe",
      "type": "gmail",
      "status": "active"
    },
    {
      "success": false,
      "fromEmail": "sales@yourcompany.com",
      "error_code": "already_connected",
      "message": "This email address is already connected.",
      "details": {}
    }
  ]
}

قطع اتصال حساب البريد الإلكتروني#

POSThttps://app.inboxwarm.ai/api/v1/email-accounts/{emailAccountId}/disconnect

أوقف حسابًا مؤقتًا دون حذفه. يتم الحفاظ على الإعدادات والسجل لإعادة الاتصال لاحقًا.

المصادقة:حقل النصapiKey

نص الطلب

{
  "apiKey": "{{apiKey}}"
}

الاستجابات

{
  "emailAccountId": "12345",
  "status": "disconnected"
}

حذف حساب البريد الإلكتروني#

DELETEhttps://app.inboxwarm.ai/api/v1/email-accounts/{emailAccountId}

أزل حسابًا نهائيًا مع جميع بيانات التسخين والسجل المرتبطة به.

المصادقة:معامل الاستعلامapi_key

الاستجابات

لا يوجد محتوى للاستجابة

حذف مجمّع لحسابات البريد الإلكتروني#

POSThttps://app.inboxwarm.ai/api/v1/email-accounts/bulk-delete

أزل نهائيًا ما يصل إلى 20 حسابًا في استدعاء واحد.

المصادقة:حقل النصapiKey

نص الطلب

{
  "apiKey": "{{apiKey}}",
  "emailAccountIds": [
    "12345",
    "12346"
  ]
}

الاستجابات

{
  "results": [
    {
      "emailAccountId": "12345",
      "deleted": true
    },
    {
      "emailAccountId": "12346",
      "deleted": true
    }
  ]
}

الحصول على حالة حساب البريد الإلكتروني#

GEThttps://app.inboxwarm.ai/api/v1/email-accounts/{emailAccountId}/status

حالة تفصيلية لحساب واحد — صحة الاتصال، وحالة التسخين، وحالة المصادقة، والأخطاء النشطة.

المصادقة:معامل الاستعلامapi_key

الاستجابات

{
  "emailAccountId": "12345",
  "fromEmail": "john@yourcompany.com",
  "type": "gmail",
  "authStatus": "connected",
  "warmupStatus": "active",
  "healthScore": 92,
  "connectionError": null,
  "lastConnectedAt": "2026-07-15T08:00:00.000Z"
}

حالة مجمّعة لحسابات البريد الإلكتروني#

POSThttps://app.inboxwarm.ai/api/v1/email-accounts/bulk-status

حالة ما يصل إلى 50 حسابًا في استدعاء واحد، تُعاد بنفس ترتيب المعرفات المُدخلة.

المصادقة:حقل النصapiKey

نص الطلب

{
  "apiKey": "{{apiKey}}",
  "emailAccountIds": [
    "12345",
    "12346"
  ]
}

الاستجابات

{
  "results": [
    {
      "emailAccountId": "12345",
      "fromEmail": "john@yourcompany.com",
      "type": "gmail",
      "authStatus": "connected",
      "warmupStatus": "active",
      "healthScore": 92,
      "connectionError": null,
      "lastConnectedAt": "2026-07-15T08:00:00.000Z"
    },
    {
      "emailAccountId": "12346",
      "fromEmail": "sales@yourcompany.com",
      "type": "microsoft",
      "authStatus": "connected",
      "warmupStatus": "paused",
      "healthScore": 81,
      "connectionError": null,
      "lastConnectedAt": "2026-07-14T22:10:00.000Z"
    }
  ]
}

التسخين

الحصول على إعدادات التسخين#

GEThttps://app.inboxwarm.ai/api/v1/warmup-settings/{emailAccountId}

جلب تكوين التسخين الحالي لحساب ما.

المصادقة:معامل الاستعلامapi_key

الاستجابات

{
  "emailAccountId": "12345",
  "displayName": "Ada Lovelace",
  "timeZone": "America/New_York",
  "sendingDays": [1, 2, 3, 4, 5],
  "sendingWindowStartTime": "09:00",
  "sendingWindowEndTime": "17:00",
  "warmupLanguage": "en",
  "targetIndustry": "saas_software",
  "warmupTopics": ["Referral request", "Case study"]
}

تحديث إعدادات التسخين#

PATCHhttps://app.inboxwarm.ai/api/v1/warmup-settings/{emailAccountId}

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

المصادقة:حقل النصapiKey

نص الطلب

{
  "apiKey": "{{apiKey}}",
  "displayName": "Ada Lovelace",
  "timeZone": "America/New_York",
  "sendingDays": [1, 2, 3, 4, 5],
  "sendingWindowStartTime": "09:00",
  "sendingWindowEndTime": "17:00",
  "warmupLanguage": "en",
  "targetIndustry": "saas_software",
  "warmupTopics": ["Referral request", "Case study"]
}

الاستجابات

{
  "emailAccountId": "12345",
  "displayName": "Ada Lovelace",
  "timeZone": "America/New_York",
  "sendingDays": [1, 2, 3, 4, 5],
  "sendingWindowStartTime": "09:00",
  "sendingWindowEndTime": "17:00",
  "warmupLanguage": "en",
  "targetIndustry": "saas_software",
  "warmupTopics": ["Referral request", "Case study"]
}

عرض لغات الإحماء#

GEThttps://app.inboxwarm.ai/api/v1/warmup-settings/languages

عرض كل لغة يمكن توليد محتوى الإحماء بها، لمعرفة القيم التي تقبلها warmupLanguage.

المصادقة:معامل الاستعلامapi_key

الاستجابات

{
  "languages": [
    { "code": "en", "name": "English", "nativeName": "English", "script": "Latin" },
    { "code": "es", "name": "Spanish", "nativeName": "Español", "script": "Latin" },
    { "code": "ja", "name": "Japanese", "nativeName": "日本語", "script": "Japanese" }
  ]
}

عرض قطاعات الإحماء#

GEThttps://app.inboxwarm.ai/api/v1/warmup-settings/industries

عرض كل قطاع مستهدف والمواضيع المقترحة له، لمعرفة القيم التي تقبلها targetIndustry وwarmupTopics.

المصادقة:معامل الاستعلامapi_key

الاستجابات

{
  "industries": [
    {
      "key": "e_commerce",
      "name": "E-Commerce",
      "topics": [
        "Abandoned cart follow-up",
        "New product launch",
        "Seasonal sale announcement",
        "Order and shipping update",
        "Customer review request"
      ]
    },
    {
      "key": "saas_software",
      "name": "SaaS / Software",
      "topics": ["Feature announcement", "Onboarding tip", "Case study"]
    }
  ]
}

بدء التسخين#

POSThttps://app.inboxwarm.ai/api/v1/warmup-settings/{emailAccountId}/start

ابدأ التسخين لحساب ما.

المصادقة:حقل النصapiKey

نص الطلب

{
  "apiKey": "{{apiKey}}"
}

الاستجابات

{
  "emailAccountId": "12345",
  "warmupStatus": "active"
}

إيقاف التسخين#

POSThttps://app.inboxwarm.ai/api/v1/warmup-settings/{emailAccountId}/stop

أوقف التسخين لحساب ما.

المصادقة:حقل النصapiKey

نص الطلب

{
  "apiKey": "{{apiKey}}"
}

الاستجابات

{
  "emailAccountId": "12345",
  "warmupStatus": "paused"
}

إجراء تسخين مجمّع#

POSThttps://app.inboxwarm.ai/api/v1/warmup-settings/bulk-action

ابدأ أو أوقف التسخين لما يصل إلى 50 حسابًا في استدعاء واحد.

المصادقة:حقل النصapiKey

نص الطلب

{
  "apiKey": "{{apiKey}}",
  "emailAccountIds": [
    "12345",
    "12346"
  ],
  "action": "start"
}

الاستجابات

{
  "results": [
    {
      "emailAccountId": "12345",
      "status": "ok"
    },
    {
      "emailAccountId": "12346",
      "status": "ok"
    }
  ]
}

تحديث مجمّع لإعدادات التسخين#

POSThttps://app.inboxwarm.ai/api/v1/warmup-settings/bulk-update

طبّق إعدادات الجدول و/أو المحتوى على ما يصل إلى 50 حسابًا في استدعاء واحد.

المصادقة:حقل النصapiKey

نص الطلب

{
  "apiKey": "{{apiKey}}",
  "emailAccountIds": [
    "12345",
    "12346"
  ],
  "apply": ["language", "window"],
  "warmupLanguage": "es",
  "sendingWindowStartTime": "06:00",
  "sendingWindowEndTime": "10:00"
}

الاستجابات

{
  "updatedCount": 2
}

سجل نشاط التسخين#

GEThttps://app.inboxwarm.ai/api/v1/warmup-status/{emailAccountId}

نشاط التسخين اليوم لحساب ما: المُرسَل، المُستلَم، المُردود عليه، المزعج، المرتد.

المصادقة:معامل الاستعلامapi_key

الاستجابات

{
  "emailAccountId": "12345",
  "date": "2026-07-15",
  "current": "active",
  "dailySendingLimit": 10,
  "sent": 12,
  "received": 10,
  "replied": 7,
  "spam": 1,
  "bounced": 0
}

قابلية التسليم

الحصول على درجة الإعداد#

GEThttps://app.inboxwarm.ai/api/v1/setup-score/{emailAccountId}

درجة صحة الإعداد المخزنة مؤقتًا (فحوصات DMARC وSPF وDKIM وMX والقائمة السوداء) لحساب ما.

المصادقة:معامل الاستعلامapi_key

الاستجابات

{
  "emailAccountId": "12345",
  "emailAccountScore": 86,
  "dmarcScore": 15,
  "spfScore": 29,
  "dkimScore": 18,
  "mxRecordScore": 9,
  "ipBlacklistScore": 5,
  "domainBlacklistScore": 10,
  "updatedAt": "2026-07-14T10:30:00.000Z",
  "manualLastRefreshedAt": "2026-07-14T10:30:00.000Z"
}

تحديث درجة الإعداد#

POSThttps://app.inboxwarm.ai/api/v1/setup-score/{emailAccountId}/refresh

أعد حساب درجة الإعداد لحساب ما بشكل متزامن.

المصادقة:حقل النصapiKey

نص الطلب

{
  "apiKey": "{{apiKey}}"
}

الاستجابات

{
  "emailAccountId": "12345",
  "emailAccountScore": 88,
  "dmarcScore": 15,
  "spfScore": 29,
  "dkimScore": 18,
  "mxRecordScore": 9,
  "ipBlacklistScore": 7,
  "domainBlacklistScore": 10,
  "updatedAt": "2026-07-15T09:00:00.000Z",
  "manualLastRefreshedAt": "2026-07-15T09:00:00.000Z"
}

فحص صحة DNS#

GEThttps://app.inboxwarm.ai/api/v1/dns-health/{emailAccountId}

بحث DNS مباشر لنطاق الإرسال الخاص بالحساب — نجاح/فشل لـ SPF وDKIM وDMARC وMX.

المصادقة:معامل الاستعلامapi_key

الاستجابات

{
  "emailAccountId": "12345",
  "spf": "pass",
  "dkim": "pass",
  "dmarc": "pass",
  "mx": "pass",
  "cachedAt": "2026-07-15T09:00:00.000Z"
}

الحصول على درجة قابلية التسليم#

POSThttps://app.inboxwarm.ai/api/v1/deliverability-score/{emailAccountId}

معدل قابلية تسليم صندوق الوارد مقابل الرسائل المزعجة إجماليًا ولكل ESP لنطاق تاريخي.

المصادقة:حقل النصapiKey

نص الطلب

{
  "apiKey": "{{apiKey}}",
  "startDate": "2026-06-01",
  "endDate": "2026-06-30",
  "esps": [
    "gmail",
    "outlook",
    "other"
  ]
}

الاستجابات

{
  "emailAccountId": "12345",
  "totalDeliverabilityRate": 88,
  "totalSentCount": 1500,
  "totalInboxCount": 1320,
  "totalSpamInboxCount": 180,
  "gmail": {
    "deliverabilityRate": 92,
    "sentCount": 500,
    "inboxCount": 460,
    "spamCount": 40
  },
  "outlook": {
    "deliverabilityRate": 92,
    "sentCount": 500,
    "inboxCount": 460,
    "spamCount": 40
  },
  "other": {
    "deliverabilityRate": 92,
    "sentCount": 500,
    "inboxCount": 460,
    "spamCount": 40
  }
}

التقارير

لوحة التحكم#

GEThttps://app.inboxwarm.ai/api/v1/dashboard

ملخص تسخين على مستوى الحساب عبر جميع صناديق البريد الوارد المتصلة.

المصادقة:معامل الاستعلامapi_key

الاستجابات

{
  "totalAccounts": 42,
  "activeWarmups": 30,
  "pausedWarmups": 8,
  "accountsWithErrors": 2,
  "avgSetupScore": 78.5
}

تقرير حساب واحد#

POSThttps://app.inboxwarm.ai/api/v1/reports

تقرير تسخين يومي لحساب واحد على مدى نطاق تاريخي.

المصادقة:حقل النصapiKey

نص الطلب

{
  "apiKey": "{{apiKey}}",
  "emailAccountId": "12345",
  "from": "2026-06-01",
  "to": "2026-06-30"
}

الاستجابات

{
  "emailAccountId": "12345",
  "from": "2026-06-01",
  "to": "2026-06-30",
  "days": [
    {
      "date": "2026-06-15",
      "sent": 25,
      "inbox": 20,
      "received": 22,
      "spam": 3,
      "bounced": 1,
      "undelivered": 0,
      "replied": 5,
      "deliverabilityRate": 92.5
    }
  ]
}

تقرير مجمّع#

POSThttps://app.inboxwarm.ai/api/v1/reports/bulk

تقارير تسخين يومية لما يصل إلى 50 حسابًا على مدى نطاق تاريخي.

المصادقة:حقل النصapiKey

نص الطلب

{
  "apiKey": "{{apiKey}}",
  "emailAccountIds": [
    "12345",
    "12346"
  ],
  "from": "2026-06-01",
  "to": "2026-06-30"
}

الاستجابات

{
  "reports": [
    {
      "emailAccountId": "12345",
      "from": "2026-06-01",
      "to": "2026-06-30",
      "days": [
        {
          "date": "2026-06-15",
          "sent": 25,
          "inbox": 20,
          "received": 22,
          "spam": 3,
          "bounced": 1,
          "undelivered": 0,
          "replied": 5,
          "deliverabilityRate": 92.5
        }
      ]
    }
  ]
}

تصدير التقرير#

POSThttps://app.inboxwarm.ai/api/v1/reports/export

ابدأ تصدير CSV غير متزامن لتقارير التسخين، يُسلَّم عبر البريد الإلكتروني عند جاهزيته.

المصادقة:حقل النصapiKey

نص الطلب

{
  "apiKey": "{{apiKey}}",
  "emailAccountIds": [
    "12345",
    "12346"
  ],
  "from": "2026-06-01",
  "to": "2026-06-30"
}

الاستجابات

{
  "jobId": "a1b2c3d4",
  "status": "queued"
}