npm
@nateq/sdk
GitHub
الكود المصدري والمشكلات
المتطلبات
Node.js الإصدار 18 أو أحدث.التثبيت
البدء السريع
أنشئ مفتاح API بنطاقemails:send، ثم ضعه في بيئتك:
المصادقة
تقرأ الحزمةNATEQ_API_KEY افتراضياً. مرّره صراحةً لتحميله من مدير أسرار، أو
للتعامل مع أكثر من مؤسسة:
إرسال البريد الإلكتروني
تُنجَزsend() بمجرد قبول الواجهة للرسالة. أما التسليم فيحدث بعد ذلك — الوعد
المُنجَز يعني أن Nateq تحمّلت مسؤولية الرسالة، لا أنها وصلت.
htmlBody أو plainTextBody أو كليهما. احذف fromEmail و
emailAddressId لاستخدام عنوان مؤسستك الافتراضي المُوثَّق.
قراءة البريد الإلكتروني
limit هي 50 والحد الأقصى 100.
الأخطاء
كل خطأ يرث منNateqError، لذا تكفي كتلة catch واحدة:
راجع الأخطاء لرموز الواجهة الأساسية.
إعادة المحاولة والإرسال المُكرر
تُعاد عمليات القراءة (get و list) تلقائياً عند انتهاء المهلة أو أخطاء 5xx أو
فشل الاتصال، مع تراجع تدريجي يحترم Retry-After.
أما send() فلا. لا تملك الواجهة مفتاح تكرار (idempotency key)، لذا فإن
عملية إرسال تفشل بعد وصولها إلى الخادم قد تكون قد أُرسلت فعلاً. إعادتها قد
تُرسل رسالتين إلى عميلك، والحزمة لن تتخذ هذا القرار نيابةً عنك.
الاستثناء هو 429، الذي تُطلقه الواجهة قبل إرسال أي شيء — لذا تُعاد المحاولة،
لأن التكرار مستحيل.
إذا أطلقت send() خطأ NateqTimeoutError أو NateqServerError، فالنتيجة غير
معروفة فعلاً. تحقق منها قبل إعادة المحاولة:
الإعدادات
baseUrl عبر https، إلا إذا كان يشير إلى localhost للتطوير المحلي.
الاستخدام مع أُطر العمل
أنشئ العميل مرة واحدة وأعد استخدامه. فهو عديم الحالة وآمن للمشاركة.
الإرسال داخل الطلب يربط زمن استجابتك بزمن استجابتنا. لأي شيء غير حرج، أرسل من
مهمة في الخلفية أو من طابور بدلاً من ذلك.