توثيق InboxWarm API
التوثيق المرجعي لواجهة REST API الخاصة بـ InboxWarm. استخدمه إلى جانب مجموعة InboxWarm API Postman.
في هذه الصفحة
حسابات البريد الإلكتروني
التسخين
قابلية التسليم
عنوان URL الأساسي#
https://app.inboxwarm.ai/api/v1المصادقة#
يستخدم InboxWarm مخطط مصادقة مختلطًا اعتمادًا على طريقة HTTP:
طلبات GET وDELETE — أرسل مفتاح API الخاص بك كمعامل استعلام api_key.
طلبات 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",
...
}حدود المعدل#
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).
فهرس نقاط النهاية#
حسابات البريد الإلكتروني
/email-accountsسرد حسابات البريد الإلكترونيPOST/email-accountsربط حساب بريد إلكترونيPOST/email-accounts/bulk-connectربط مجمّع لحسابات البريد الإلكترونيPOST/email-accounts/{emailAccountId}/disconnectقطع اتصال حساب البريد الإلكترونيDELETE/email-accounts/{emailAccountId}حذف حساب البريد الإلكترونيPOST/email-accounts/bulk-deleteحذف مجمّع لحسابات البريد الإلكترونيGET/email-accounts/{emailAccountId}/statusالحصول على حالة حساب البريد الإلكترونيPOST/email-accounts/bulk-statusحالة مجمّعة لحسابات البريد الإلكترونيالتسخين
/warmup-settings/{emailAccountId}الحصول على إعدادات التسخينPATCH/warmup-settings/{emailAccountId}تحديث إعدادات التسخينGET/warmup-settings/languagesعرض لغات الإحماءGET/warmup-settings/industriesعرض قطاعات الإحماءPOST/warmup-settings/{emailAccountId}/startبدء التسخينPOST/warmup-settings/{emailAccountId}/stopإيقاف التسخينPOST/warmup-settings/bulk-actionإجراء تسخين مجمّعPOST/warmup-settings/bulk-updateتحديث مجمّع لإعدادات التسخينGET/warmup-status/{emailAccountId}سجل نشاط التسخينقابلية التسليم
النظام
فحص الصحة#
https://app.inboxwarm.ai/api/v1/healthفحص أساسي لحيوية API.
api_keyالاستجابات
{
"status": "ok"
}حالة حد المعدل#
https://app.inboxwarm.ai/api/v1/rate-limitتحقق من استهلاك حد المعدل الحالي دون استنفاد طلب من حصتك.
api_keyالاستجابات
{
"limit": 20,
"remaining": 18,
"reset": 1752585600
}حسابات البريد الإلكتروني
سرد حسابات البريد الإلكتروني#
https://app.inboxwarm.ai/api/v1/email-accountsسرد حسابات البريد الإلكتروني المتصلة مع حالتها الحالية. يدعم البحث والترقيم والترتيب. استخدم البحث للعثور على emailAccountId لعنوان ما إذا احتجت في أي وقت إلى إعادة تحديده.
api_keyمعاملات الاستعلام
searchالبحث حسب عنوان البريد الإلكتروني أو الاسمstatusactive | warming | paused | error | auth-expiredsortsortByالاستجابات
{
"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
}ربط حساب بريد إلكتروني#
https://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"
}ربط مجمّع لحسابات البريد الإلكتروني#
https://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": {}
}
]
}قطع اتصال حساب البريد الإلكتروني#
https://app.inboxwarm.ai/api/v1/email-accounts/{emailAccountId}/disconnectأوقف حسابًا مؤقتًا دون حذفه. يتم الحفاظ على الإعدادات والسجل لإعادة الاتصال لاحقًا.
apiKeyنص الطلب
{
"apiKey": "{{apiKey}}"
}الاستجابات
{
"emailAccountId": "12345",
"status": "disconnected"
}حذف حساب البريد الإلكتروني#
https://app.inboxwarm.ai/api/v1/email-accounts/{emailAccountId}أزل حسابًا نهائيًا مع جميع بيانات التسخين والسجل المرتبطة به.
api_keyالاستجابات
لا يوجد محتوى للاستجابة
حذف مجمّع لحسابات البريد الإلكتروني#
https://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
}
]
}الحصول على حالة حساب البريد الإلكتروني#
https://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"
}حالة مجمّعة لحسابات البريد الإلكتروني#
https://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"
}
]
}التسخين
الحصول على إعدادات التسخين#
https://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"]
}تحديث إعدادات التسخين#
https://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"]
}عرض لغات الإحماء#
https://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" }
]
}عرض قطاعات الإحماء#
https://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"]
}
]
}بدء التسخين#
https://app.inboxwarm.ai/api/v1/warmup-settings/{emailAccountId}/startابدأ التسخين لحساب ما.
apiKeyنص الطلب
{
"apiKey": "{{apiKey}}"
}الاستجابات
{
"emailAccountId": "12345",
"warmupStatus": "active"
}إيقاف التسخين#
https://app.inboxwarm.ai/api/v1/warmup-settings/{emailAccountId}/stopأوقف التسخين لحساب ما.
apiKeyنص الطلب
{
"apiKey": "{{apiKey}}"
}الاستجابات
{
"emailAccountId": "12345",
"warmupStatus": "paused"
}إجراء تسخين مجمّع#
https://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"
}
]
}تحديث مجمّع لإعدادات التسخين#
https://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
}سجل نشاط التسخين#
https://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
}قابلية التسليم
الحصول على درجة الإعداد#
https://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"
}تحديث درجة الإعداد#
https://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#
https://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"
}الحصول على درجة قابلية التسليم#
https://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
}
}التقارير
لوحة التحكم#
https://app.inboxwarm.ai/api/v1/dashboardملخص تسخين على مستوى الحساب عبر جميع صناديق البريد الوارد المتصلة.
api_keyالاستجابات
{
"totalAccounts": 42,
"activeWarmups": 30,
"pausedWarmups": 8,
"accountsWithErrors": 2,
"avgSetupScore": 78.5
}تقرير حساب واحد#
https://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
}
]
}تقرير مجمّع#
https://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
}
]
}
]
}تصدير التقرير#
https://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"
}