الإعلانات التي يؤدي النقر عليها إلى فتح محادثة في واتساب

يشرح هذا الدليل طريقة إنشاء إعلانات النقر لفتح محادثة في واتساب ونشرها باستخدام API التسويق.

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

تدعم إعلانات النقر لفتح محادثة في واتساب الإعلانات التي تتضمن صورة أو فيديو أو إعلانًا دوّارًا أو عرض شرائح. كما يمكنك أيضًا تضمين مطالبات الاستدعاءات في الإعلان.

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

نظرة عامة على إنشاء الإعلان

يوضح هذا المستند الخطوات المطلوب اتباعها لإعداد الدمج لإعلانات النقر لفتح محادثة في واتساب.

ستحتاج إلى ما يلي:

  1. إنشاء حملة إعلانية
  2. إنشاء مجموعة إعلانية تربط الإعلانات بالحملة الإعلانية
  3. إنشاء تصميم إعلان لنوع إعلان واتساب الذي تريد عرضه
  4. إنشاء إعلان عن طريق ربط تصميم الإعلان بالمجموعة الإعلانية
  5. نشر الإعلان على فيسبوك وInstagram وMessenger

قبل البدء

يفترض هذا الدليل أنه:

لإجراء استدعاءات ناجحة لكل نقاط النهاية في هذا الدليل، ستحتاج إلى ما يلي:

  • يجب توفير رمز وصول الصفحة الذي يطلبه شخص يمكنه تنفيذ المهمة ADVERTISE في الصفحة
  • يجب منح الأذونات التالية للشخص الذي يستخدم التطبيق:
    • ads_management
    • pages_manage_ads
    • pages_read_engagement
    • pages_show_list

الخطوة الأولى: إنشاء حملة إعلانية

ابدأ بإنشاء حملة إعلانية. لإجراء ذلك، يمكنك إرسال طلب POST إلى نقطة النهاية /act_<AD_ACCOUNT_ID>/campaigns حيث يكون <AD_ACCOUNT_ID> هو معرف الحساب الإعلاني من Meta. يجب أن يتضمن طلبك:

المعلمات

الاسمالوصف

name

string (سلسلة)

مطلوب.
اسم الحملة الإعلانية لإعلانات النقر لفتح محادثة في واتساب.

objective

enum (تعداد)

مطلوب.
هدف الحملة الإعلانية.
الأهداف المدعومة هي OUTCOME_ENGAGEMENT وOUTCOME_SALES وOUTCOME_TRAFFIC.
ملاحظة: بالنسبة للحملات الإعلانية التي تحتوي على مطالبات الاتصال، يجب أن يكون objective بالقيمة OUTCOME_ENGAGEMENT.

special_ad_categories

list (قائمة)<Object>

مطلوب.
فئات الإعلانات الخاصة المرتبطة بالحملة الإعلانية لإعلانات النقر لفتح محادثة في واتساب. راجع مرجع الحملة الإعلانية لمزيد من التفاصيل.

status

enum (تعداد)

اختياري.
الخيارات الصالحة هي PAUSED وACTIVE.
إذا كانت الحالة PAUSED، فسيتم إيقاف كل الإعلانات والمجموعات الإعلانية النشطة مؤقتًا وستكون الحالة الفعّالة CAMPAIGN_PAUSED.

الطلب القياسي

curl -X POST \
  -F 'name=Click to WhatsApp Campaign' \
  -F 'objective=OUTCOME_ENGAGEMENT' \
  -F 'status=ACTIVE' \
  -F 'special_ad_categories=[]' \
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/act_<AD_ACCOUNT_ID>/campaigns

طلب الاتصال بالحملة الإعلانية

curl -X POST \
  -F 'name=Click to WhatsApp Calling Campaign' \
  -F 'objective=OUTCOME_ENGAGEMENT' \
  -F 'status=PAUSED' \
  -F 'special_ad_categories=[]' \
  -F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/act_<AD_ACCOUNT_ID>/campaigns

الاستجابة

عند نجاح العملية، سيستلم التطبيق استجابة JSON تتضمن معرف الحملة الإعلانية التي تم إنشاؤها مؤخرًا.

{
  "id": "<AD_CAMPAIGN_ID>"
}

التحديث

يمكنك تحديث الحملة الإعلانية عن طريق إرسال طلب POST إلى /<AD_CAMPAIGN_ID>.

القراءة

للتحقق من إنشاء الحملة الإعلانية لإعلانات النقر لفتح محادثة في واتساب، يمكنك إرسال طلب GET إلى /<AD_CAMPAIGN_ID>. راجع مرجع الحملة الإعلانية للحصول على قائمة كاملة بالمعلمات المتوفرة.

الطلب

curl -X GET -G \
  -d 'fields=name,status,objective' \
  -d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/<AD_CAMPAIGN_ID>

الاستجابة

{
  "name": "Click to WhatsApp Campaign",
  "status": "PAUSED",
  "objective": "OUTCOME_ENGAGEMENT",
  "id": "<AD_CAMPAIGN_ID>"
}

الخطوة الثانية: إنشاء مجموعة إعلانية

بمجرد توفر حملة إعلانية، يمكنك إنشاء مجموعة إعلانية. لإنشاء مجموعة إعلانية، يمكنك إرسال طلب POST إلى نقطة النهاية /act_<AD_ACCOUNT_ID>/adsets حيث يكون <AD_ACCOUNT_ID> هو معرف الحساب الإعلاني في Meta. يجب أن يتضمن طلبك:

المعلمات

الاسمالوصف

bid_amount

unsigned int32 (غير موقّع)

مطلوب إذا تم تعيين bid_strategy على LOWEST_COST_WITH_BID_CAP أو COST_CAP.
الحد الأقصى للمبلغ الذي تريد دفعه لنتيجة ما استنادًا إلى optimization_goal.

bid_strategy

enum (تعداد)

اختياري.
إستراتيجية عرض الأسعار لهذه الحملة الإعلانية بحيث تناسب أهداف النشاط التجاري المحددة. راجع مرجع الحملة الإعلانية للحصول على المزيد من التفاصيل.
القيم:LOWEST_COST_WITHOUT_CAP وLOWEST_COST_WITH_BID_CAP وCOST_CAP

billing_event

enum (تعداد)

مطلوب.
يجب تعيينه على IMPRESSIONS لإعلانات النقر لفتح محادثة في واتساب. تفرض Meta رسومًا عند بدء عرض الإعلان على الأشخاص.

campaign_id

numeric string (سلسلة رقمية) أو integer (عدد صحيح)

مطلوب.
نقرة صالحة للحملة الإعلانية لإعلانات النقر لفتح محادثة في واتساب التي تريد إضافة هذه المجموعة الإعلانية فيها.

daily_budget

int64

مطلوب إذا لم يتم تعيين lifetime_budget.
الميزانية اليومية المحددة بعملة الحساب. مسموح فقط للمجموعات الإعلانية ذات مدة (الفرق بين end_time وstart_time) أطول من 24 ساعة.
يجب أن تكون إما daily_budget أو lifetime_budget أكثر من 0.

destination_type

string (سلسلة)

مطلوب.
يتم التعيين على WHATSAPP لإعلانات النقر لفتح محادثة في واتساب ذات الوجهة الواحدة.

end_time

datetime

مطلوب عند تحديد lifetime_budget.
عند إنشاء مجموعة إعلانية مع daily_budget، حدد end_time=0 أو اترك الحقل فارغًا لتعيين المجموعة الإعلانية كمستمرة بدون تاريخ انتهاء.
مثال:2015-03-12 23:59:59-07:00 أو 2015-03-12 23:59:59 PDT. طابع زمني بتنسيق UNIX للتوقيت العالمي الموحد (UTC).

lifetime_budget

int64

مطلوب إذا لم يتم تعيين daily_budget.
ميزانية الحملة الإعلانية كلها المحددة بعملة الحساب. إذا تم التحديد، فيجب أيضًا تحديد end_time.
يجب أن يكون daily_budget أو lifetime_budget أكبر من 0.

name

string (سلسلة)

مطلوب.
اسم المجموعة الإعلانية لإعلانات النقر لفتح محادثة في واتساب.

optimization_goal

enum (تعداد)

مطلوب.
الهدف الذي يتم تحسين المجموعة الإعلانية من أجله. استنادًا إلى هدف الحملة الإعلانية، قد تكون المجموعة الإعلانية مؤهلة لأهداف تحسين مختلفة.


OUTCOME_ENGAGEMENT: يمكن تحسين هدف التفاعل لـ CONVERSATIONS وLINK_CLICKS.
OUTCOME_SALES: يمكن تحسين هدف المبيعات لـ CONVERSATIONS وOFFSITE_CONVERSIONS وLINK_CLICKS وIMPRESSIONS وREACH.
OUTCOME_TRAFFIC: يمكن تحسين هدف الزيارات لـ CONVERSATIONS وLANDING_PAGE_VIEWS وLINK_CLICKS وIMPRESSIONS وREACH وPOST_ENGAGEMENT.

promoted_object

مطلوب.
الكائن الذي تروج له هذه الحملة الإعلانية عبر كل الإعلانات. بالنسبة إلى إعلانات النقر لفتح محادثة في واتساب، تتوفر الشروط التالية لـ promoted_object:

مطلوب:

  • page_id: مطلوب. معرف صفحة فيسبوك.

اختياري:

  • whatsapp_phone_number: رقم هاتف واتساب المرتبط بالمجموعة الإعلانية لإعلانات النقر لفتح محادثة في واتساب.

راجع المجموعة الإعلانية، كائن يتم ترويجه لمزيد من التفاصيل.

start_time

datetime

اختياري.
وقت بدء المجموعة الإعلانية. سيتم تعيين هذا الحقل افتراضيًا على الوقت الحالي إذا لم يتم توفير أي قيمة.
مثال:2015-03-12 23:59:59-07:00 أو 2015-03-12 23:59:59 PDT. طابع زمني بتنسيق UNIX للتوقيت العالمي الموحد (UTC).

status

enum (تعداد)

اختياري.
حالة المجموعة الإعلانية. يمكن أن تكون مختلفة عن الحالة السارية بسبب الحملة الإعلانية الأصلية. سيتم تعيين هذا الحقل افتراضيًا على ACTIVE إذا لم يتم توفير أي قيمة.
القيم:ACTIVE وPAUSED وDELETED وARCHIVED

targeting

كائن الاستهداف

مطلوب.
بنية الاستهداف لإعلان النقر لفتح محادثة في واتساب. راجع الاستهداف لمزيد من التفاصيل.

time_start

datetime

اختياري.
تبادلي مع start_time.

time_stop

datetime

مطلوب عند تحديد lifetime_budget.
تبادلي مع end_time.

تفضل بزيارة مرجع المجموعة الإعلانية للحساب الإعلاني للحصول على قائمة كاملة بالمعلمات المتوفرة.

الطلب

curl -X POST \
  -H "Content-Type: application/json" \
  -d '{
    "access_token":"<ACCESS_TOKEN>",
    "bid_amount":"<BID_AMOUNT>",
    "billing_event":"IMPRESSIONS",
    "campaign_id":"<CAMPAIGN_ID>",
    "daily_budget":"<DAILY_BUDGET>",
    "destination_type":"WHATSAPP",
    "name": "<AD_SET_NAME>",
    "optimization_goal": "IMPRESSIONS",
    "promoted_object": {
      "page_id": "<PAGE_ID>"
    },
    "status": "PAUSED",
    "start_time": "<START_TIME>",
    "targeting": { 
      "geo_locations": { "countries":["US","CA"] },
      "device_platforms": ["mobile", "desktop"]
    } 
  }' \
"https://graph.facebook.com/v21.0/act_<AD_ACCOUNT_ID>/adsets"

الاستجابة

{
  "id": "<AD_SET_ID>"
}

التحديث

يمكنك تحديث المجموعة الإعلانية عن طريق إرسال طلب POST إلى /<AD_SET_ID>.

القراءة

للتحقق من إنشاء المجموعة الإعلانية لإعلانات النقر لفتح محادثة في واتساب، يمكنك إرسال طلب GET إلى /<AD_SET_ID>. راجع مرجع المجموعة الإعلانية للحصول على قائمة كاملة بالمعلمات المتوفرة.

الطلب

curl -X GET -G \
  -d 'fields=name,destination_type,optimization_goal,bid_strategy,status' \
  -d 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v21.0/<AD_SET_ID>

الاستجابة

{
  "name": "Click to WhatsApp Campaign",
  "status": "PAUSED",
  "objective": "OUTCOME_ENGAGEMENT",
  "id": "<AD_SET_ID>"
}

الخطوة الثالثة: إنشاء تصميم إعلان

يسمح لك تصميم الإعلان بإضافة الأصول إلى الإعلانات. لإنشاء تصميم إعلان، يمكنك إرسال طلب POST إلى نقطة النهاية /act_<AD_ACCOUNT_ID>/adcreatives حيث يكون <AD_ACCOUNT_ID> هو معرف الحساب الإعلاني في Meta. يجب أن يتضمن طلبك:

المعلمات

الاسمالوصف

name

string (سلسلة)

مطلوب.
اسم تصميم الإعلان.

object_story_spec

مطلوب.
كائن يحتوي على معلومات حول الرسالة. راجع مواصفات قصة كائن تصميم الإعلان لمزيد من المعلومات.


مطلوب:

  • page_id: معرف صفحة فيسبوك

اختياري:

  • link_data: مواصفات منشور صفحة الرابط أو الإعلان الدوّار
  • photo_data: مواصفات منشور صفحة الصورة
  • text_data: مواصفات منشور صفحة النص
  • video_data: مواصفات منشور صفحة الفيديو

degrees_of_freedom_spec

اختياري.
راجع التحسينات القياسية لتصميم Advantage+ لمزيد من التفاصيل.

تفضل بزيارة مرجع تصميم الإعلان للحصول على قائمة كاملة بالمعلمات المتوفرة.

ملء الرسالة الترحيبية للصفحة

الرسالة الافتراضية التي يتم عرضها للعميل هي "مرحبًا! هل يمكنني الحصول على المزيد من المعلومات حول ذلك؟". يمكنك إنشاء المزيد من تجارب المستخدمين المخصصة لإعلانات النقر لفتح محادثة في واتساب عن طريق تخصيص الرسالة الترحيبية للإعلانات في الحقل page_welcome_message ضمن object_story_spec.

ملاحظة: إذا كنت تستخدم رسالة واتساب لتشغيل أي تدفقات للبرامج التلقائية، فيُرجى التأكد من التعاون مع موفر حلول الأنشطة التجارية والوكالات لتحديثها حتى تتأكد من عدم تعطيل التدفقات.

مثال

إضافة رسالة الملء التلقائي عن طريق تضمين رسالة ترحيبية

"page_welcome_message": {
  "type": "VISUAL_EDITOR",
  "version": 2,
  "landing_screen_type": "welcome_message",
  "media_type": "text",
  "text_format": {
    "customer_action_type": "autofill_message",
    "message": {
      "autofill_message": {
        "content": "<AUTOFILL_MESSAGE>"
      },
      "text": "<GREETING_MESSAGE>"
    }
  }
}

إضافة عناصر التمهيد وتشجيع التفاعل عن طريق تضمين رسالة ترحيبية

"page_welcome_message": {
  "type": "VISUAL_EDITOR",
  "version": 2,
  "landing_screen_type": "welcome_message",
    "media_type": "text",
    "text_format": {
      "customer_action_type": "ice_breakers",
      "message": {
        "text": "<GREETING_MESSAGE>",
        "ice_breakers": [
          {
            "title": "<ICEBREAKER>"
          },
          {
            "title": "<ICEBREAKER>"
          },
          {
            "title": "<ICEBREAKER>"
          }
        ]
      }
    }
  }
}

إضافة رسالة تتضمن مطالبة بالاتصال

curl \
  -F 'object_story_spec={
      "page_id": "<PAGE_ID>"
      "link_data": {
     "image_hash":<IMAGE_HASH>
            "call_to_action": {
              	"type": "WHATSAPP_MESSAGE",
              	"value": {
                  	"app_destination": "WHATSAPP"
             	 }
          },
          "link": "https://api.whatsapp.com/send",
          "name": <AD_HEADLINE>",
          "page_welcome_message":
       "type": "VISUAL_EDITOR",
        "version": 2,
        "landing_screen_type": "ctwa_call_prompt",
        "media_type": "text",
        "text_format": {
          "message": {
            "text": "<MESSAGE>"", 
            "call_prompt_data": {
              "call_prompt_message": "<CALL_PROMPT_MESSAGE>"
            }
          }
        },
        "user_edit": false
      },
  https://graph.facebook.com/v21.0/act_<AD_ACCOUNT_ID>/adcreatives

الاستجابة

{
  "id": "<AD_CREATIVE_ID>"
}

أمثلة على إنشاء تصميم الإعلان

الطلب

curl -X POST \
  -H "Content-Type: application/json" \
  -d '{
        "name": "Sample ad creative",
        "object_story_spec": {
          "page_id": "<PAGE_ID>",
          "link_data": {
            "name": "<AD_HEADLINE>",
            "message": "<AD_PRIMARY_TEXT>",
            "description": "<AD_DESCRIPTION>",
            "image_hash": "<IMAGE_HASH>",
            "link": "https://api.whatsapp.com/send",
            "page_welcome_message": "<PAGE_WELCOME_MESSAGE>",
            "call_to_action": {
              "type": "WHATSAPP_MESSAGE",
              "value": {
                "app_destination": "WHATSAPP"
              }
            }
          }
        },
        "degrees_of_freedom_spec": {
          "creative_features_spec": {
            "standard_enhancements": {
              "enroll_status": "OPT_IN"
            }
          }
        }
      }' \
"https://graph.facebook.com/v21.0/act_<AD_ACCOUNT_ID>/adcreatives"

الاستجابة

عند نجاح العملية، سيستلم التطبيق استجابة JSON تتضمن معرف تصميم الإعلان الذي تم إنشاؤه مؤخرًا.

{
  "id": "<AD_CREATIVE_ID>"
}

إنشاء تصميمات الإعلان باستخدام محتوى Instagram

كما يمكنك أيضًا استخدام محتوى Instagram الموجود لتصميمات الإعلانات لديك.

curl -X POST \
  -H "Content-Type: application/json" \
  -d '{
        "source_instagram_media_id": "<INSTAGRAM_MEDIA_ID>",
        "instagram_user_id": "<INSTAGRAM_USER_ID>",
        "object_id": "<PAGE_ID>",
        "call_to_action": {
          "type": "WHATSAPP_MESSAGE",
            "value": {
              "link": "https://api.whatsapp.com/send",
              "app_destination": "WHATSAPP"
            }
          }
        },
        "degrees_of_freedom_spec": {
          "creative_features_spec": {
            "standard_enhancements": {
              "enroll_status": "OPT_IN"
            }
          }
        }
      }' \
  https://graph.facebook.com/latest-api-version />/act_<AD_ACCOUNT_ID>/adcreatives

التحديث

يمكنك تحديث تصميم الإعلان عن طريق إرسال طلب POST إلى /<AD_CREATIVE_ID>.

القراءة

للتحقق من إنشاء تصميم إعلان للنقر لفتح محادثة في واتساب، يمكنك إرسال طلب GET إلى /<AD_CREATIVE_ID>. راجع تصميم الإعلان للحصول على قائمة كاملة بالمعلمات المتوفرة.

الطلب

curl -X GET -G \
  -d 'fields=name,object_story_spec{link_data{call_to_action,page_welcome_message}}' \
  -d 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v21.0/<AD_CREATIVE_ID>

الاستجابة

{
  "name": "Sample ad creative",
  "object_story_spec" {
    "page_welcome_message": {
      "type": "VISUAL_EDITOR",
      "version": 2,
      "landing_screen_type": "welcome_message",
      "media_type": "text",
      "text_format": {
        "customer_action_type": "autofill_message",
        "message": {
          "autofill_message": {
            "content": "Sample autofill message"
          },
        "text": "Sample greeting message"
        }
      }
    }
  },
  "id": "<AD_CREATIVE_ID>"
}

الخطوة الرابعة: إنشاء إعلان

تسمح لك الإعلانات بربط معلومات تصميم الإعلان بالمجموعات الإعلانية. لإنشاء مجموعة إعلانية، يمكنك إرسال طلب POST إلى نقطة النهاية /act_<AD_ACCOUNT_ID>/ads حيث يكون <AD_ACCOUNT_ID> هو معرف الحساب الإعلاني في Meta. يجب أن يتضمن طلبك:

المعلمات

الاسمالوصف

name

string (سلسلة)

مطلوب.
اسم إعلانك.

adset_id

numeric string (سلسلة رقمية) أو integer (عدد صحيح)

مطلوب.
معرف المجموعة الإعلانية.

creative

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

status

enum (تعداد)

مطلوب.
الحالة التي تم تكوينها للإعلان.
القيم:ACTIVE وPAUSED وDELETED وARCHIVED

الطلب

curl -X POST \
  -H "Content-Type: application/json" \
  -d '{
        "name": "Sample ad",
        "adset_id": "<AD_SET_ID>",
        "creative": {
          "creative_id": "<AD_CREATIVE_ID>"
        },
        "status": "PAUSED"
     }' \
  "https://graph.facebook.com/v21.0/act_<AD_ACCOUNT_ID>/ads"

الاستجابة

{
  "id": "<AD_ID>"
}

التحديث

يمكنك تحديثإعلان عن طريق إرسال طلب POST إلى /<AD_ID>.

القراءة

للتحقق من إنشاء إعلان النقر لفتح محادثة في واتساب، يمكنك إرسال طلب GET إلى /<AD_ID>. راجع مرجع الإعلان للحصول على قائمة كاملة بالمعلمات المتوفرة.

الطلب

curl -X GET -G \
  -d 'fields=status,adset_id,campaign_id \
  -d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/<AD_ID>

الاستجابة

{
  "status": "PAUSED",
  "adset_id": "<AD_SET_ID>",
  "campaign_id": "<AD_CAMPAIGN_ID>",
  "id": "<AD_ID>"
}

الخطوة الخامسة: نشر الإعلان

يمكنك التحقق من تواجد إعلانك في مدير الإعلانات. عندما تكون مستعدًا لنشر التغييرات، حدّد الحملة الإعلانية والمجموعة الإعلانية للحملة الإعلانية والإعلان وانقر على زر نشر.

كما يمكنك أيضًا نشر الإعلان باستخدام API. ما عليك سوى إرسال طلب POST إلى /<AD_ID> مع تعيين المعلمة status على ACTIVE حيث يكون <AD_ID> هو الإعلان الذي تريد نشره.

ستتم مراجعة الإعلان بواسطة Meta وستكون الحالة PENDING_REVIEW. بمجرد الموافقة، سيتم تحديث الحالة تلقائيًا إلى ACTIVE وسيتم عرض الإعلان.