المصادقة

JWT Bearer tokens لكل الـ API endpoints.

نظرة عامة

كل الـ endpoints تحت /api/* تتطلّب JWT Bearer token في ترويسة Authorization. الاستثناءات الوحيدة: /api/auth/login،/api/automation/webhook/*، و /webhook/* (markup بـ @Public()).

الحصول على Token

curl -X POST https://operix.operixdigital.com/api/auth/login \
  -H "Content-Type: application/json" \
  -d '{
    "email": "you@example.com",
    "password": "your-password"
  }'

الاستجابة:

{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "user": { "id": "...", "email": "...", "role": "admin" }
}

استخدام Token

curl https://operix.operixdigital.com/api/automation/workflows \
  -H "Authorization: Bearer eyJhbGciOiJI..."

انتهاء الصلاحية

الـ token صالح لـ 24 ساعة. بعدها يُرجِع الـ API 401 Unauthorized. الـ frontend يكتشف هذا ويعيدك تلقائياً لـ /login.

معلومة
لا يوجد refresh-token endpoint حالياً. لإطالة الجلسة، الـ user يجب يدخل من جديد.

X-Account-Id (multi-account)

لو الـ user عنده أكثر من حساب WhatsApp مرتبط (WaAccount)، الـ frontend يرسل X-Account-Id header لتحديد أي حساب يُستخدم. مطلوب لكل/api/whatsapp/* في multi-account setups.