OAuth 2.0

يوفر OAuth 2.0 مصادقة آمنة قائمة على الرموز لتطبيقات الطرف الثالث للوصول إلى Brevo نيابة عن المستخدمين.

نظرة عامة على تدفق OAuth

  1. طلب التفويض: إعادة توجيه المستخدم إلى Brevo
  2. تفويض المستخدم: يمنح المستخدم الأذونات
  3. رمز التفويض: تعيد Brevo التوجيه بالرمز
  4. تبادل رمز الوصول: تبادل الرمز للحصول على الرموز
  5. الوصول إلى API: استخدام رمز الوصول للطلبات

نقطة نهاية التفويض

https://app.brevo.com/oauth/authorize?
response_type=code&
client_id=YOUR_CLIENT_ID&
redirect_uri=YOUR_REDIRECT_URI&
scope=email%20contacts&
state=random_string

تبادل الرموز

Terminal window
curl -X POST "https://api.brevo.com/v3/oauth/token" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=authorization_code&code=AUTH_CODE&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET&redirect_uri=YOUR_REDIRECT_URI"

استخدام رمز الوصول

const response = await fetch('https://api.brevo.com/v3/account', {
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Accept': 'application/json'
}
});

النطاقات

  • email: إرسال رسائل البريد الإلكتروني للمعاملات
  • contacts: إدارة جهات الاتصال والقوائم
  • campaigns: إنشاء وإرسال الحملات
  • sms: إرسال رسائل SMS
  • webhooks: إدارة webhooks

تحديث الرمز

const refreshToken = async () => {
const response = await fetch('https://api.brevo.com/v3/oauth/token', {
method: 'POST',
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
body: new URLSearchParams({
grant_type: 'refresh_token',
refresh_token: 'YOUR_REFRESH_TOKEN',
client_id: 'YOUR_CLIENT_ID',
client_secret: 'YOUR_CLIENT_SECRET'
})
});
return response.json();
};