مساحة التخزين المحلية في API السحابة

تمنحك مساحة التخزين المحلية في API السحابة خيار التحكم في مكان تخزين بيانات الرسائل أثناء عدم النشاط. إذا كانت شركتك مرتبطة بصناعة خاضعة للتنظيم مثل التمويل أو الحكومة أو الرعاية الصحية، فسيكون من الأفضل تخزين بيانات الرسائل في بلد معين أثناء عدم النشاط بسبب السياسات التنظيمية أو سياسات الشركة.

توفر API السحابة طبقة إضافية من حماية البيانات عن طريق تنفيذ ضوابط إضافية لإدارة البيانات. تشتمل ميزة مساحة التخزين المحلية على تقييدين إضافيين في بيئة تشغيل API السحابة:

  • فترة صلاحية البيانات قيد الاستخدام (TTL): تم تطبيق تقييد جديد للاحتفاظ بالبيانات، ما يفرض مدة صلاحية الوصول إلى محتوى الرسائل بالنسبة إلى API السحابة خارج نطاق الولاية القضائية المستهدفة أثناء معالجته. عند استخدام مساحة التخزين المحلية، ستقوم API السحابة بحذف محتوى الرسائل من مساحة تخزين "البيانات قيد الاستخدام" الخاصة بها (على سبيل المثال، ذاكرة التخزين المؤقت، قوائم الانتظار) بعد فترة صلاحية تدوم لمدة 60 دقيقة. لن يكون هناك محتوى رسائل حساس على خوادم API السحابة في الولايات المتحدة بعد انتهاء فترة الصلاحية.
  • موقع البيانات أثناء عدم النشاط: تم تطبيق تقييد جديد على موضع البيانات، ما يفرض تحديد الموقع الفعلي الذي يُسمح لـ API السحابة باستخدامه كمخزن دائم لمحتوى الرسائل الحساسة. سيتم تخزين حمولة بيانات النص والوسائط لكل من الرسائل الواردة والصادرة في مساحات تخزين البيانات لدى API السحابة داخل الدولة (بخلاف الولايات المتحدة).

بمجرد تمكين مساحة التخزين المحلية لرقم هاتف النشاط التجاري، ستستخدم API مساحة تخزين مطوعة محليًا في البلد المحدد للحفاظ على محتوى الرسالة، بدلاً من استخدام مساحة التخزين الافتراضية في الولايات المتحدة.

ميزة مساحة التخزين المحلي تكمّل ضوابط الخصوصية والأمان الأخرى في API السحابة، وتسمح للعملاء بضمان مستوى أعلى من الامتثال للوائح المحلية لحماية البيانات.

البيانات المطوعة محليًا

تنفذ API السحابة التطويع المحلي لمحتوى الرسائل. تغطي ميزة مساحة التخزين المحلية تدفقات الرسائل التالية:

  • الرسائل الصادرة: الرسائل التي ترسلها إلى المستلمين من خلال API السحابة
  • الرسائل الواردة: الرسائل التي تتلقاها عبر API السحابة

تغطي ميزة مساحة التخزين المحلية أنواع الرسائل التالية:

  • الرسائل النصية: يتم تطويع حمولة بيانات النص (نص الرسالة) محليًا
  • رسائل الوسائط: يتم تطويع حمولة بيانات الوسائط (مقطع صوتي أو مستند أو صورة أو فيديو) محليًا
  • رسائل القوالب: يتم تطويع المكونات التي تحتوي على حمولة بيانات نص/ وسائط محليًا

بالإضافة إلى ذلك، يتم تضمين مجموعة محدودة من سمات البيانات التعريفية في مجموعة البيانات التي تم تطويعها محليًا، من أجل ربط حمولة البيانات المشفرة للرسالة التي تم تطويعها محليًا بشكل صحيح مع الرسالة التي تمت معالجتها في الأصل ومراجعة عملية التطويع المحلي. تخضع البيانات التعريفية للحماية بواسطة الترميز والتشفير.

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

المناطق المتوفرة

المناطق التالية مدعومة حاليًا بواسطة ميزة مساحة المحلية في API السحابة، ويمكن تحديدها أثناء تفعيل تنشيط مساحة التخزين المحلية:

  • آسيا والمحيط الهادئ: الهند، سنغافورة، إندونيسيا، كوريا الجنوبية، اليابان، أستراليا
  • أمريكا اللاتينية: البرازيل
  • الشرق الأوسط وإفريقيا: جنوب إفريقيا، البحرين، الإمارات العربية المتحدة
  • أوروبا: الاتحاد الأوروبي (ألمانيا)، المملكة المتحدة، سويسرا
  • أمريكا الشمالية: كندا

المتطلبات

لا يمكن تمكين مساحة التخزين المحلية أو تعطيلها إلا عندما تكون أرقام هواتف النشاط التجاري في حالة غير مسجلة.

تمكين مساحة التخزين المحلية

اتبع الخطوات أدناه لتمكين مساحة التخزين المحلية لرقم هاتف النشاط التجاري غير مسجل باستخدام الإصدار 21.0 من API أو إصدار أحدث. إذا كنت تستخدم إصدار API أقدم، فراجع تمكين مساحة التخزين المحلية (الإصدار 20 والإصدارات الأقدم).

الخطوة الأولى: تمكين مساحة التخزين المحلية على الرقم

استخدم نقطة النهاية POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/settings لتمكين مساحة التخزين المحلية على رقم هاتف النشاط التجاري غير المسجل:

بنية الطلب

POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/settings

{
  "storage_configuration": {
    "status": "IN_COUNTRY_STORAGE_ENABLED", 
    "data_localization_region": "<COUNTRY_CODE>"
  }
}

قم بتعيين <COUNTRY_CODE> إلى كود البلد الخاص بالبلد الذي سيتم تخزين البيانات فيه.

بنية الاستجابة

{
  "success": <SUCCESS>
}

عند نجاح العملية، سيتم تعيين <SUCCESS> إلى true.

مثال على الطلب

curl 'https://graph.facebook.com/v21.0/106540352242922/settings' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer EAAJB...' \
-d '
{
  "storage_configuration": {
    "status": "IN_COUNTRY_STORAGE_ENABLED", 
    "data_localization_region": "BR"
  }
}'

مثال على الاستجابة

{
  "success": true
}

الخطوة الثانية: تسجيل الرقم

استخدم نقطة النهاية POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/register لتسجيل رقم هاتف النشاط التجاري.

بنية الطلب

POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/register

{
  "messaging_product": "whatsapp",
  "pin": "<TWO_STEP_PIN>"
}

قم بتعيين <TWO_STEP_PIN> إلى رقم التعريف الشخصي للتحقق بخطوتين المطلوب لرقم هاتف النشاط التجاري.

بنية الاستجابة

{
  "success": <SUCCESS>
}

عند نجاح العملية، سيتم تعيين <SUCCESS> إلى true.

مثال على الطلب

curl 'https://graph.facebook.com/v21.0/v21.0/register' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer EAAJB...' \
-d '
{
  "messaging_product": "whatsapp",
  "pin": "123456"
}'

مثال على الاستجابة

{
  "success": true
}

الحصول على إعدادات مساحة التخزين المحلية

استخدم نقطة النهاية GET /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/settings للحصول على إعدادات مساحة التخزين المحلية في رقم هاتف واتساب للأعمال. على سبيل المثال:

curl 'https://graph.facebook.com/v21.0/179776755229976/settings' \
-H 'Authorization: Bearer EAAJB...'

يُرجع هذا عقدة تمثل إعدادات مساحة التخزين المحلية في رقم هاتف النشاط التجاري. على سبيل المثال:

{
  "storage_configuration": {
    "status": "IN_COUNTRY_STORAGE_ENABLED",
    "data_localization_region": "BR"
  }
}

تعطيل مساحة التخزين المحلية

استخدم نقطة النهاية POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/settings لتعطيل مساحة التخزين المحلية على رقم هاتف النشاط التجاري غير المسجل باستخدام الإصدار 21.0 من API أو إصدار أحدث. إذا كنت تستخدم إصدار API أقدم، فراجع تعطيل مساحة التخزين المحلية (الإصدار 20 والإصدارات الأقدم).

بنية الطلب

POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID/>settings

{
  "storage_configuration": {
    "status": "IN_COUNTRY_STORAGE_DISABLED"
  }
}

قم بتعيين <COUNTRY_CODE> إلى كود البلد الخاص بالبلد الذي سيتم تخزين البيانات فيه.

بنية الاستجابة

{
  "success": <SUCCESS>
}

عند نجاح العملية، سيتم تعيين <SUCCESS> إلى true.

مثال على الطلب

curl 'https://graph.facebook.com/v21.0/106540352242922/settings' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer EAAJB...' \
-d '
{
  "storage_configuration": {
    "status": "IN_COUNTRY_STORAGE_DISABLED"
  }
}'

مثال على الاستجابة

{
  "success": true
}

تمكين مساحة التخزين المحلية (الإصدار 20 والإصدارات الأقدم)

لتمكين مساحة التخزين المحلية لرقم هاتف نشاط تجاري غير مسجل باستخدام الإصدار 20.0 أو الإصدارات الأقدم):

الخطوة الأولى: مراجعة حالة التحقق

استخدم نقطة النهاية GET /<WHATSAPP_BUSINESS_PHONE_NUMBER> واطلب الحقل code_verification_status. إذا كانت حالة التحقق من الرمز هي VERIFIED، فيمكنك التخطي إلى الخطوة الرابعة. بخلاف ذلك، انتقل إلى الخطوة الثانية.

الخطوة الثانية: طلب رمز تحقق

استخدم نقطة النهاية POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/request_code لطلب رمز التحقق. عند نجاح العملية، ستستجيب API بالقيمة true وسيتم إرسال رمز التحقق إلى رقم الهاتف عبر الطريقة المحددة في المعلمة code_method.

على سبيل المثال، يطلب هذا الاستعلام رمز التحقق الذي سيتم إرساله عبر رسالة SMS باللغة الإنجليزية (اللغة المحلية للولايات المتحدة).

curl -X POST 'https://graph.facebook.com/v21.0/110200345501442/request_code?code_method=SMS&language=en_US' \
-H 'Authorization: Bearer EAAJB...'

استخدم الرمز الموجود في الرسالة التي يتم استلامها في الخطوة التالية.

الخطوة الثالثة: تحقق من صحة رقم هاتف النشاط التجاري

استخدم نقطة النهاية POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/verify_code للتحقق من رقم هاتف النشاط التجاري باستخدام رمز التحقق الموجود في الرسالة التي تم استلامها من الخطوة السابقة.

على سبيل المثال:

curl -X POST 'https://graph.facebook.com/v21.0/110200345501442/verify_code?code=123830' \
-H 'Authorization: Bearer EAAJB...'

الخطوة الرابعة: تسجيل رقم هاتف النشاط التجاري

استخدم نقطة النهاية POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/register لتسجيل رقم هاتف النشاط التجاري. يمكنك الإشارة إلى البلد الذي يجب تخزين البيانات فيه باستخدام معلمة data_localization_region.

على سبيل المثال، يمكّن هذا الطلب مساحة التخزين المحلية لرقم هاتف النشاط التجاري، ويحدد البلد الذي يجب تخزين البيانات فيه على أنه الهند:

curl 'https://graph.facebook.com/v21.0/110200345501442/register' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer EAAJB...' \
-d '
{
  "messaging_product": "whatsapp",
  "pin": "123456",
  "data_localization_region": "IN"
}'

تعطيل مساحة التخزين المحلية (الإصدار 20 والإصدارات الأقدم)

استخدم نقطة النهاية POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/deregister لتعطيل مساحة التخزين المحلية على رقم هاتف النشاط التجاري باستخدام الإصدار 20.0 من API أو إصدار أقدم.

على سبيل المثال:

curl -X POST 'https://graph.facebook.com/v21.0/110200345501442/deregister' \
-H 'Authorization: Bearer EAAJB...'

لاحظ أن هذا يؤدي إلى إلغاء تسجيل رقم هاتف النشاط التجاري وبالتالي لا يمكن استخدامه مع API السحابة في واتساب. إذا كنت تريد متابعة استخدامه مع API السحابة ولكن بدون تمكين مساحة التخزين المحلية، فيجب إعادة تسجيله من دون تضمين المعلمة data_localization_region.

الأسئلة المتكررة

س. ما مسارات الترحيل المتعلقة بنقل رقم هاتف إلى إصدار API السحابة مع مساحة التخزين المحلية؟

ندعم جميع مسارات الترحيل إلى إصدار API السحابة مع مساحة التخزين المحلية، وهذا يشمل:

  • ترحيل رقم API داخل المواقع الحالي إلى إصدار API السحابة مع مساحة التخزين المحلية
  • ترحيل رقم API السحابة الحالي إلى إصدار API السحابة مع مساحة التخزين المحلية
  • تمكين مساحة التخزين المحلية لرقم جديد في API السحابة

في كل هذه السيناريوهات، ستحتاج إلى إرسال طلب POST إلى نقطة النهاية /register لرقم الهاتف المحدد، مع تحديد البلد المستهدف الذي سيتم تطويع البيانات محليًا بناءً عليه في معلمة data_localization_region جديدة.

س. هل توجد أي مخاطر تتعلق بالترحيل؟ هل توجد أي حالات توقف مرتبطة بهذه العملية؟

لا توجد مخاطر تتعلق بالترحيل، هذه عملية مشابهة للترحيل من API داخل المواقع إلى API السحابة. راجع وثائق المطوّر هنا. عادةً ما يكون زمن التوقف أقل من 5 دقائق، ولا يلزم إعادة التحقق من رقم هاتف النشاط التجاري.