انتقل إلى المحتوى

واجهة برمجة تطبيقات الرسائل (Messages API)

createMessage مهمل

Anchor link to

POST https://api.pushwoosh.com/json/1.3/createMessage

تُنشئ إشعار دفع جديد.

نص الطلب

Anchor link to
الاسمالنوعالوصف
auth*stringرمز الوصول إلى API من لوحة تحكم Pushwoosh.
application*stringرمز تطبيق Pushwoosh
notifications*arrayمصفوفة JSON من معلمات الرسالة. انظر التفاصيل في مثال الطلب أدناه.
{
"status_code": 200,
"status_message": "OK",
"response": {
"Messages": [
"C3F8-C3863ED4-334AD4F1"
]
}
}

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

Anchor link to
مثال
{
"request": {
"application": "XXXXX-XXXXX", // مطلوب. رمز تطبيق Pushwoosh.
"auth": "yxoPUlwqm…………pIyEX4H", // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh.
"notifications": [{
"send_date": "now", // اختياري. YYYY-MM-DD HH:mm أو 'now'
"content": { // اختياري. كائن أو سلسلة نصية.
"en": "English", // استخدم "wns_content" بدلاً من ذلك لنظام Windows.
"fr": "French"
},
"title": { // اختياري. كائن أو سلسلة نصية.
"en": "Title", // يتم تجاهله إذا تم تحديد عناوين خاصة بالمنصة
"fr": "Titre" // 'ios_title', 'android_header', إلخ.
}, // انظر أمثلة المعلمات الخاصة بالمنصة أدناه.
"subtitle":{ // اختياري. كائن أو سلسلة نصية.
"en": "Subtitle", // يتم تجاهله إذا تم تحديد عناوين خاصة بالمنصة
"fr": "Sous-titre" // 'ios_subtitle', إلخ.
}, // انظر أمثلة المعلمات الخاصة بالمنصة أدناه.
"ignore_user_timezone": true, // اختياري.
"timezone": "America/New_York", // اختياري. إذا تم تجاهله، يكون UTC-0 هو الافتراضي لـ "send_date".
// انظر https://php.net/manual/timezones.php
// للمناطق الزمنية المدعومة.
"campaign": "CAMPAIGN_CODE", // اختياري. رمز الحملة الذي تريد تعيين
// رسالة الدفع هذه إليه.
"geozone": { // اختياري. إرسال إلى منطقة جغرافية
"lat": 22.22,
"lng": 33.33,
"range": 110
},
"rich_media": "XXXXX-XXXXX", // اختياري. انسخ رمز الوسائط الغنية من شريط URL
// لصفحة محرر الوسائط الغنية في لوحة تحكم Pushwoosh.
"link": "https://google.com", // اختياري. للروابط العميقة أضف "minimize_link": 0
"minimize_link": 0, // اختياري. 0 — عدم التصغير، 2 — bitly. الافتراضي = 2.
// يرجى ملاحظة أن أدوات تقصير الروابط لها قيود
// على عدد الاستدعاءات.
"data": { // اختياري. سلسلة JSON أو كائن JSON، سيتم تمريره
"key": "value" // كمعلمة "u" في الحمولة (محولة إلى سلسلة JSON).
},
"transactionId": "unique UUID", // اختياري. معرف رسالة فريد لمنع التكرار
// في حالة مشاكل الشبكة. يتم تخزينه على جانب
// Pushwoosh لمدة 5 دقائق.
"platforms": [ // اختياري. 1 — iOS؛ 3 — Android؛ 7 — Mac OS X؛ 8 — Windows؛
1, 3, 7, 8, 9, 10, // 9 — Amazon؛ 10 — Safari؛ 11 — Chrome؛
11, 12, 17 // 12 — Firefox؛ 17 — Huawei
],
"preset": "XXXXX-XXXXX", // اختياري. رمز الإعداد المسبق للدفع من لوحة التحكم الخاصة بك.
// إذا تم إرسال معلمات محددة في الطلب،
// فإنها تتجاوز معلمات الإعداد المسبق.
"send_rate": 100, // اختياري. التقييد. القيم الصالحة هي من 100 إلى 1000 دفعة/ثانية.
"send_rate_avoid": true, // اختياري. إذا تم تعيينه إلى true، فلن يتم تطبيق حد التقييد
// على هذا الإشعار بالدفع المحدد.
// متعلق بالقوالب، يرجى الرجوع إلى دليل محرك القوالب لمعرفة المزيد
"template_bindings": { // اختياري.
"TemplatePlaceholder": "Value"
},
"dynamic_content_placeholders": { // اختياري. عناصر نائبة للمحتوى الديناميكي بدلاً من علامات الجهاز.
"firstname": "John",
"lastname": "Doe"
},
"message_type": "marketing", // اختياري. "marketing" أو "transactional".
// إذا تم حذفه، يتم التعامل معه على أنه transactional: يتم تسليمه للجميع.
// لا يتم تسليم الرسائل التسويقية لأعضاء المجموعة الضابطة.
// معلمات تحديد التكرار. تأكد من تكوين تحديد التكرار العالمي في لوحة التحكم.
// لا ينطبق تحديد التكرار على الرسائل المتعلقة بالمعاملات.
// في جميع الحالات الأخرى، بما في ذلك "message_type" المحذوف، ينطبق تحديد التكرار.
"capping_days": 30, // اختياري. عدد الأيام لتحديد التكرار (بحد أقصى 30 يومًا)
"capping_count": 10, // اختياري. الحد الأقصى لعدد الدفعات التي يمكن إرسالها من
// تطبيق معين إلى جهاز معين خلال فترة 'capping_days'.
// في حالة تجاوز الرسالة التي تم إنشاؤها حد
// 'capping_count' لجهاز ما، فلن
// يتم إرسالها إلى ذلك الجهاز.
"capping_exclude": true, // اختياري. إذا تم تعيينه إلى true، فلن يتم احتساب هذا الإشعار بالدفع
// ضمن تحديد التكرار للدفعات المستقبلية.
"capping_avoid": true, // اختياري. إذا تم تعيينه إلى true، فلن يتم تطبيق تحديد التكرار
// على هذا الإشعار بالدفع المحدد.
// لحفظ الرسالة في صندوق الوارد عبر API، استخدم "inbox_date" أو "inbox_image".
// يتم حفظ الرسالة عند استخدام أحد هذين المعلمين على الأقل.
"inbox_date": "2017-02-02", // اختياري. حدد متى تتم إزالة رسالة من صندوق الوارد.
// ستتم إزالة الرسالة من صندوق الوارد في الساعة 00:00:01 UTC
// من التاريخ المحدد، لذا فإن اليوم السابق هو
// آخر يوم يمكن للمستخدم رؤية الرسالة في صندوق الوارد الخاص به.
// إذا لم يتم تحديده، فإن تاريخ الإزالة الافتراضي هو
// اليوم التالي لتاريخ الإرسال.
"inbox_image": "Inbox image URL", // اختياري. الصورة التي سيتم عرضها بجوار الرسالة.
"inbox_days": 5, // اختياري. حدد متى تتم إزالة رسالة من
// صندوق الوارد (عمر رسالة صندوق الوارد بالأيام).
// يمكن استخدامه بدلاً من معلمة "inbox_date".
// حتى 30 يومًا.
"devices": [ // اختياري. حدد الرموز المميزة أو hwids لإرسال دفعات مستهدفة
"hwid_XXXX" // إشعارات. لا يزيد عن 1000 رمز/hwid في
], // مصفوفة. إذا تم تعيينه، سيتم إرسال الرسالة فقط إلى
// الأجهزة الموجودة في القائمة. مجموعة التطبيقات لقائمة الأجهزة
// غير مسموح بها. يمكن أن تكون رموز الدفع لنظام iOS بأحرف صغيرة فقط.
"to": [ // اختياري. للبريد الإلكتروني والرسائل القصيرة والقنوات المماثلة. قائمة المستلمين
"email_1", "email_2" // (على سبيل المثال، عناوين البريد الإلكتروني، أرقام الهواتف). 1000 عنصر كحد أقصى.
], // للدفع، استخدم "devices" بدلاً من ذلك.
// إشعارات الدفع التي تركز على المستخدم
"users": [ // اختياري. إذا تم تعيينه، سيتم تسليم الرسالة فقط إلى
"user_XXXX" // معرفات المستخدم المحددة (المعينة عبر استدعاء /registerUser).
], // إذا تم تحديده مع devices أو to،
// سيتم تجاهل الأخير. لا يزيد عن 1000 معرف مستخدم
// في مصفوفة. مجموعة التطبيقات لقائمة المستخدمين
// غير مسموح بها.
// المرشحات والشروط
"filter": "FILTER_NAME", // اختياري.
"conditions": [ // اختياري. انظر الملاحظة أدناه.
["Country", "EQ", "fr"],
["Language", "EQ", "en"]
],
"conditions_operator": "AND" // اختياري. عامل منطقي لمصفوفات الشروط.
// القيم الممكنة: AND | OR. AND هو الافتراضي.
}]
}
}

مثال على طلب إشعار VoIP

Anchor link to

يدعم Pushwoosh إشعارات المكالمات بنمط VoIP لنظامي iOS و Android.
يمكنك أدناه العثور على أمثلة لطلبات createMessage API لكل منصة.

مثال
{
"request": {
"application": "XXXXX-XXXXX", // مطلوب. رمز تطبيق Pushwoosh.
"auth": "yxoPUlwqm…………pIyEX4H", // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh.
"notifications": [
{
"voip_push": true, // مطلوب. المعلمة مطلوبة لإرسال إشعار دفع VoIP.
"ios_root_params": {
"aps": {
"mutable-content": 1 // مطلوب لمرفقات الوسائط في iOS10+.
},
"callerName": "CallerName", // اختياري. اسم المتصل. إذا لم يتم تحديده، يتم عرض "متصل غير معروف".
"video": true, // اختياري. يشير إلى ما إذا كانت مكالمات الفيديو مدعومة.
"supportsHolding": true, // اختياري. يشير إلى ما إذا كانت وظيفة تعليق المكالمات مدعومة.
"supportsDTMF": false, // اختياري. يتحكم في دعم إشارة التردد المتعدد ثنائي النغمة.
"callId": "42", // اختياري. المعرف الفريد للمكالمة المراد إلغاؤها.
"cancelCall": true // اختياري. اضبط على "true" لإلغاء المكالمة بالمعرف "callId" المحدد.
}
}
]
}
}
مثال
{
"request": {
"application": "XXXXX-XXXXX", // مطلوب. رمز تطبيق Pushwoosh.
"auth": "yxoPUlwqm…………pIyEX4H", // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh.
"notifications": [
{
"voip_push": true, // مطلوب. المعلمة مطلوبة لإرسال إشعار دفع VoIP.
"android_root_params": {
"callerName": "callerName", // اختياري. اسم المتصل. إذا لم يتم تحديده، يتم عرض "متصل غير معروف".
"video": true, // اختياري. يشير إلى ما إذا كانت مكالمات الفيديو مدعومة.
"callId": 42, // اختياري. المعرف الفريد للمكالمة المراد إلغاؤها.
"cancelCall": true // اختياري. اضبط على "true" لإلغاء المكالمة بالمعرف "callId" المحدد.
}
}
]
}
}

معلمات خاصة بالمنصة

Anchor link to

معلمات iOS

Anchor link to
مثال
{
"request": {
"application": "12345-67891", // مطلوب. رمز تطبيق Pushwoosh
"auth": "yxoPUlwqm…………pIyEX4H", // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
"notifications": [{
"ios_title": { // اختياري. كائن أو سلسلة نصية. يضيف عنوانًا خاصًا بـ iOS لإشعار الدفع.
"en": "title"
},
"ios_subtitle": { // اختياري. كائن أو سلسلة نصية. يضيف عنوانًا فرعيًا خاصًا بـ iOS لإشعار الدفع.
"en": "subtitle"
},
"ios_content": { // اختياري. كائن أو سلسلة نصية. يضيف محتوى خاصًا بـ iOS لإشعار الدفع.
"en": "content"
},
"ios_badges": 5, // اختياري. رقم شارة تطبيق iOS.
// استخدم "+n" أو "-n" لزيادة/تقليل قيمة الشارة بمقدار n.
"ios_sound": "sound file.wav", // اختياري. اسم ملف الصوت في الحزمة الرئيسية للتطبيق.
// إذا ترك فارغًا، سيصدر الجهاز صوت نظام افتراضي.
"ios_sound_off": true, // اختياري. تمكين/تعطيل الصوت المحدد بواسطة حقل "ios_sound".
"ios_ttl": 3600, // اختياري. معلمة مدة البقاء - أقصى عمر للرسالة بالثواني.
"ios_silent": 1, // اختياري. يُمكّن الإشعارات الصامتة (يتجاهل "sound" و "content").
"ios_category_id": "1", // اختياري. معرف فئة iOS8 من Pushwoosh.
"ios_root_params": { // اختياري. معلمات المستوى الجذر لقاموس aps.
"aps": {
"content-available": "0", // اختياري. اضبط "1" لإرسال دفعة صامتة و "0" لدفعة عادية.
"mutable-content": 1 // مطلوب لمرفقات الوسائط في iOS10+.
},
"callerName": "CallerName", // معلمة VoIP اختيارية. اسم المتصل. إذا لم يتم تحديده، يتم عرض "متصل غير معروف".
"video": true, // معلمة VoIP اختيارية. يشير إلى ما إذا كانت مكالمات الفيديو مدعومة.
"supportsHolding": true, // معلمة VoIP اختيارية. يشير إلى ما إذا كانت وظيفة تعليق المكالمات مدعومة.
"supportsDTMF": false, // معلمة VoIP اختيارية. يتحكم في دعم إشارة التردد المتعدد ثنائي النغمة.
"data": {} // بيانات اختيارية مقدمة من المستخدم، بحد أقصى 4 كيلوبايت
},
"ios_attachment": "URL", // اختياري. إدراج محتوى وسائط في الإشعار.
"ios_thread_id": "some thread id", // اختياري. معرف لتجميع الإشعارات ذات الصلة.
// سيتم تجميع الرسائل التي لها نفس معرف السلسلة
// على شاشة القفل وفي مركز الإشعارات.
"ios_critical": true, // اختياري. يحدد إشعار iOS كتنبيه حرج
// يشغل الصوت حتى لو كان الجهاز في وضع صامت أو
// وضع عدم الإزعاج قيد التشغيل.
"ios_category_custom": "category", // اختياري. فئة APNS مخصصة.
"ios_interruption_level": "active", // اختياري. واحد من "passive", "active", "time-sensitive",
// "critical". يشير إلى أهمية
// وتوقيت تسليم الإشعار. ارجع إلى
// دليل الدفع لمرة واحدة للحصول على التفاصيل.
"apns_collapse_id": "promo", // اختياري. معرف طي APNs. الإشعارات التي لها نفس
// apns_collapse_id تحل محل بعضها البعض على الجهاز.
"apns_trim_content": 1 // اختياري. (0|1) يقص سلاسل المحتوى الزائدة بنقاط حذف.
}]
}
}

معلمات Android

Anchor link to
مثال
{
"request": {
"application": "12345-67891", // مطلوب. رمز تطبيق Pushwoosh
"auth": "yxoPUlwqm…………pIyEX4H", // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
"notifications": [{
"android_header": { // اختياري. رأس إشعار Android.
"en": "header"
},
"android_content": { // اختياري. محتوى إشعار Android.
"en": "content"
},
"android_root_params": { // اختياري. كائن مفتاح-قيمة مخصص.
"key": "value", // معلمات المستوى الجذر لمستلمي حمولة android.
"CancelID": 12345678, // اختياري. يلغي إشعار الدفع بالمعرف
"voip": true, // معلمة VoIP مطلوبة. المعلمة مطلوبة لإرسال إشعارات دفع VoIP.
"callerName": "callerName", // معلمة VoIP اختيارية. اسم المتصل. إذا لم يتم تحديده، يتم عرض "متصل غير معروف".
"video": true, // معلمة VoIP اختيارية. يشير إلى ما إذا كانت مكالمات الفيديو مدعومة.
}, // معرف الرسالة المحدد (احصل على المعرف من سجل الرسائل)
"android_sound": "soundfile", // اختياري. بدون امتداد ملف. إذا ترك فارغًا،
// سيصدر الجهاز صوت نظام افتراضي.
"android_sound_off": true, // اختياري. تمكين/تعطيل الصوت المحدد بواسطة حقل "android_sound"
"android_icon": "icon.png", // اختياري.
"android_custom_icon": "URL.png", // اختياري. عنوان URL كامل لملف الصورة.
"android_banner": "URL.png", // اختياري. عنوان URL كامل لملف الصورة.
"android_badges": 5, // اختياري. رقم شارة أيقونة تطبيق Android.
// استخدم "+n" أو "-n" لزيادة/تقليل قيمة الشارة بمقدار n.
"android_gcm_ttl": 3600, // اختياري. معلمة مدة البقاء — أقصى عمر للرسالة بالثواني.
"android_vibration": 0, // اختياري. اهتزاز قسري لنظام Android للدفعات ذات الأولوية العالية.
"android_led": "#rrggbb", // اختياري. لون LED سداسي عشري، سيقوم الجهاز بأفضل تقريب له.
"android_priority": -1, // اختياري. يضبط معلمة "importance" للأجهزة التي تعمل بنظام
// Android 8.0 والإصدارات الأحدث، بالإضافة إلى معلمة "priority"
// للأجهزة التي تعمل بنظام Android 7.1 والإصدارات الأقدم. يحدد
// مستوى المقاطعة لقناة إشعار أو إشعار
// معين. القيم الصالحة هي -2، -1، 0، 1، 2.
"android_delivery_priority": "normal", // اختياري. "normal" أو "high".
// يُمكّن تسليم الإشعار عندما يكون
// الجهاز في وضع توفير الطاقة.
"android_ibc": "#RRGGBB", // اختياري. لون خلفية الأيقونة على Lollipop، #RRGGBB،
// #AARRGGBB، "red"، "black"، "yellow"، إلخ.
"android_silent": 1, // اختياري. 0 أو 1. تمكين الإشعار الصامت.
// تجاهل الصوت والمحتوى
"android_group_id": "123", // اختياري. معرف لتجميع الإشعارات ذات الصلة. الرسائل التي لها
// نفس معرف السلسلة سيتم تجميعها في
// مركز الإشعارات.
"android_collapse_key": "promo" // اختياري. مفتاح طي FCM. الإشعارات التي لها نفس
// مفتاح الطي تحل محل بعضها البعض أثناء عدم اتصال الجهاز بالإنترنت.
}]
}
}

معلمات Huawei

Huawei
{
"request": {
"application": "12345-67891", // مطلوب. رمز تطبيق Pushwoosh
"auth": "yxoPUlwqm…………pIyEX4H", // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
"notifications": [{
"huawei_android_header": { // اختياري. كائن أو سلسلة نصية. عنوان الإشعار
"en": "header"
},
"huawei_android_content": { // اختياري. كائن أو سلسلة نصية. محتوى الإشعار
"en": "content"
},
"huawei_android_badges": true, // اختياري.
"huawei_android_silent": 0, // اختياري. 0 أو 1. تمكين الإشعار الصامت.
// تجاهل الصوت والمحتوى
"huawei_android_icon": "URL.png", // اختياري.
"huawei_android_led": "#FF0011", // اختياري. لون LED سداسي عشري، سيقوم الجهاز بأفضل تقريب له
"huawei_android_vibration": 1, // اختياري. اهتزاز قسري من Huawei للدفعات ذات الأولوية العالية
"huawei_android_sound": "sound.wav", // اختياري. إذا ترك فارغًا، سيصدر الجهاز
// صوت نظام افتراضي
"huawei_android_sound_off": true, // اختياري. تمكين/تعطيل الصوت المحدد بواسطة
// حقل "huawei_android_sound"
"huawei_android_custom_icon": "URL.png", // اختياري
"huawei_android_gcm_ttl": 2400, // اختياري. معلمة مدة البقاء - أقصى
// عمر للرسالة بالثواني
"huawei_android_banner": "URL.png", // اختياري. عنوان URL للمسار الكامل لملف الصورة
"huawei_android_root_params": { // اختياري. كائن مفتاح-قيمة مخصص.
"key": "value" // معلمات المستوى الجذر لمستلمي حمولة Huawei.
},
"huawei_android_priority": 0, // اختياري. القيم الصالحة: -2، -1، 0، 1، 2
"huawei_android_ibc": "#0011AA", // اختياري. لون خلفية الأيقونة على Lollipop
"huawei_android_lockscreen": 1, // اختياري
"huawei_android_delivery_priority": "normal", // اختياري. "normal" أو "high". يُمكّن تسليم الإشعار
// في وضع توفير الطاقة
"huawei_android_group_id": "group_id" // اختياري. معرف لتجميع الإشعارات ذات الصلة
}]
}
}

معلمات Safari

Anchor link to
Safari
{
"request": {
"application": "12345-67891", // مطلوب. رمز تطبيق Pushwoosh
"auth": "yxoPUlwqm…………pIyEX4H", // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
"notifications": [{
"safari_url_args": [ // مطلوب، ولكن قد تكون القيمة فارغة
"firstArgument",
"secondArgument"
],
"safari_title": { // اختياري. كائن أو سلسلة نصية. عنوان الإشعار.
"en": "content"
},
"safari_content": { // اختياري. كائن أو سلسلة نصية. محتوى الإشعار.
"en": "content"
},
"safari_action": "Click here", // اختياري.
"safari_ttl": 3600 // اختياري. معلمة مدة البقاء — أقصى
// عمر للرسالة بالثواني.
}]
}
}

معلمات Chrome

Anchor link to
Chrome
{
"request": {
"application": "12345-67891", // مطلوب. رمز تطبيق Pushwoosh
"auth": "yxoPUlwqm…………pIyEX4H", // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
"notifications": [{
"chrome_title": { // اختياري. كائن أو سلسلة نصية. يمكنك تحديد رأس
"en": "title" // الرسالة في هذه المعلمة.
},
"chrome_content": { // اختياري. كائن أو سلسلة نصية. يمكنك تحديد محتوى
"en": "content" // الرسالة في هذه المعلمة.
},
"chrome_icon": "URL.png", // اختياري. عنوان URL كامل للأيقونة أو مسار ملف موارد الامتداد
"chrome_gcm_ttl": 3600, // اختياري. معلمة مدة البقاء – أقصى عمر للرسالة بالثواني.
"chrome_duration": 20, // اختياري. 50 ثانية كحد أقصى. يغير وقت عرض دفعة chrome.
// اضبط على 0 لعرض الدفعة حتى يتفاعل المستخدم معها.
"chrome_image": "image_URL", // اختياري. عنوان URL لصورة كبيرة.
"chrome_root_params": { // اختياري. تعيين معلمات خاصة بالرسائل المرسلة إلى Chrome.
"key": "value"
},
"chrome_button_text1": "text1", // اختياري
"chrome_button_url1": "button1_URL", // اختياري. يتم تجاهله إذا لم يتم تعيين chrome_button_text1.
"chrome_button_text2": "text2", // اختياري
"chrome_button_url2": "button2_url" // اختياري. يتم تجاهله إذا لم يتم تعيين chrome_button_text2.
}]
}
}

معلمات Firefox

Anchor link to
Firefox
{
"request": {
"application": "12345-67891", // مطلوب. رمز تطبيق Pushwoosh
"auth": "yxoPUlwqm…………pIyEX4H", // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
"notifications": [{
"firefox_title": { // اختياري. كائن أو سلسلة نصية. يمكنك تحديد رأس الرسالة هنا.
"en": "title"
},
"firefox_content": { // اختياري. كائن أو سلسلة نصية. يمكنك تحديد محتوى الرسالة هنا.
"en": "content"
},
"firefox_icon": "URL.png", // اختياري. عنوان URL للمسار الكامل للأيقونة أو المسار إلى
// الملف في موارد الامتداد.
"firefox_root_params": { // اختياري. تعيين معلمات خاصة بالرسائل المرسلة إلى Firefox.
"key": "value"
}
}]
}
}

معلمات Amazon

Anchor link to
Amazon
{
"request": {
"application": "12345-67891", // مطلوب. رمز تطبيق Pushwoosh
"auth": "yxoPUlwqm…………pIyEX4H", // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
"notifications": [{
"adm_header": { // اختياري. كائن أو سلسلة نصية. يمكنك تحديد رأس الرسالة هنا.
"en": "header"
},
"adm_content": { // اختياري. كائن أو سلسلة نصية. يمكنك تحديد محتوى الرسالة هنا.
"en": "content"
},
"adm_root_params": { // اختياري. كائن مفتاح-قيمة مخصص
"key": "value"
},
"adm_sound": "push.mp3", // اختياري.
"adm_sound_off": true, // اختياري. تمكين/تعطيل الصوت المحدد بواسطة حقل "adm_sound"
"adm_icon": "icon.png", // اختياري. عنوان URL كامل للأيقونة.
"adm_custom_icon": "URL.png", // اختياري.
"adm_banner": "URL.png", // اختياري.
"adm_ttl": 3600, // اختياري. معلمة مدة البقاء — أقصى عمر للرسالة
// بالثواني.
"adm_priority": -1 // اختياري. أولوية الدفعة في درج دفعات Amazon،
// القيم الصالحة هي -2، -1، 0، 1 و 2.
}]
}
}

معلمات Mac OS X

Anchor link to
Mac OS X
{
"request": {
"application": "12345-67891", // مطلوب. رمز تطبيق Pushwoosh
"auth": "yxoPUlwqm…………pIyEX4H", // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
"notifications": [{
"mac_title": { // اختياري. كائن أو سلسلة نصية. يضيف عنوانًا لإشعار الدفع.
"en": "title"
},
"mac_subtitle": { // اختياري. يضيف عنوانًا فرعيًا لإشعار الدفع.
"en": "subtitle"
},
"mac_content": { // اختياري. يضيف محتوى لإشعار الدفع.
"en": "content"
},
"mac_badges": 3, // اختياري.
"mac_sound": "sound.caf", // اختياري.
"mac_sound_off": true, // اختياري. تمكين/تعطيل الصوت المحدد بواسطة حقل "mac_sound"
"mac_root_params": { // اختياري.
"content-available": 1
},
"mac_ttl": 3600 // اختياري. معلمة مدة البقاء — أقصى عمر للرسالة بالثواني.
}]
}
}

معلمات Windows

Anchor link to
Windows
{
"request": {
"application": "12345-67891", // مطلوب. رمز تطبيق Pushwoosh
"auth": "yxoPUlwqm…………pIyEX4H", // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
"notifications": [{
"wns_content": { // مطلوب. محتوى (XML أو خام) الإشعار المشفر بـ base64 الخاص بـ MIME
// في شكل كائن أو سلسلة نصية
"en": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48YmFkZ2UgdmFsdWU9ImF2YWlsYWJsZSIvPg==",
"de": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48YmFkZ2UgdmFsdWU9Im5ld01lc3NhZ2UiLz4="
},
"wns_type": "Badge", // اختياري. 'Tile' | 'Toast' | 'Badge' | 'Raw'
"wns_tag": "myTag", // اختياري. يستخدم في سياسة استبدال المربعات.
// سلسلة أبجدية رقمية لا تزيد عن 16 حرفًا.
"wns_cache": 1, // اختياري. (1|0) يترجم إلى قيمة X-WNS-Cache-Policy.
"wns_ttl": 600 // اختياري. وقت انتهاء صلاحية الإشعار بالثواني.
}]
}
}

الاستجابة:

رمز حالة HTTPstatus_codeالوصف
200200تم إنشاء الرسالة بنجاح
200210خطأ في الوسيطة. انظر status_message لمزيد من المعلومات
400N/Aسلسلة طلب غير صالحة
500500خطأ داخلي

تتبع رسائل API

Anchor link to

لأغراض موازنة التحميل، لا نقوم بتخزين الرسائل المرسلة عبر API مع معلمة “devices” التي تحتوي على أقل من 10 أجهزة في مصفوفة. ولهذا السبب، لن يتم عرض هذه الرسائل في سجل الرسائل الخاص بك.

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

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

شروط العلامة

Anchor link to

كل شرط علامة هو مصفوفة مثل [tagName, operator, operand] حيث

  • tagName: اسم العلامة
  • operator: “EQ” | “IN” | “NOTEQ” | “NOTIN” | “LTE” | “GTE” | “BETWEEN” | “NOTSET” | “ANY”
  • operand: سلسلة نصية | عدد صحيح | مصفوفة | تاريخ

وصف العامل

Anchor link to
  • EQ: قيمة العلامة تساوي المعامل؛
  • IN: قيمة العلامة تتقاطع مع المعامل (يجب أن يكون المعامل دائمًا مصفوفة)؛
  • NOTEQ: قيمة العلامة لا تساوي المعامل؛
  • NOTIN: قيمة العلامة لا تتقاطع مع المعامل (يجب أن يكون المعامل دائمًا مصفوفة)؛
  • GTE: قيمة العلامة أكبر من أو تساوي المعامل؛
  • LTE: قيمة العلامة أقل من أو تساوي المعامل؛
  • BETWEEN: قيمة العلامة أكبر من أو تساوي قيمة المعامل الدنيا ولكنها أقل من أو تساوي قيمة المعامل القصوى (يجب أن يكون المعامل دائمًا مصفوفة)؛
  • NOTSET: العلامة غير معينة. لا يتم النظر في المعامل؛
  • ANY: العلامة لها أي قيمة. لا يتم النظر في المعامل.

علامات السلسلة النصية

Anchor link to

العوامل الصالحة: EQ, IN, NOTEQ, NOTIN, NOTSET, ANY
المعاملات الصالحة:

  • EQ, NOTEQ: يجب أن يكون المعامل سلسلة نصية؛
  • IN, NOTIN: يجب أن يكون المعامل مصفوفة من السلاسل النصية مثل ["value 1", "value 2", "value N"]؛
  • NOTSET: العلامة غير معينة. لا يتم النظر في المعامل؛
  • ANY: العلامة لها أي قيمة. لا يتم النظر في المعامل.

علامات الأعداد الصحيحة

Anchor link to

العوامل الصالحة: EQ, IN, NOTEQ, NOTIN, BETWEEN, GTE, LTE, NOTSET, ANY
المعاملات الصالحة:

  • EQ, NOTEQ, GTE, LTE: يجب أن يكون المعامل عددًا صحيحًا؛
  • IN, NOTIN: يجب أن يكون المعامل مصفوفة من الأعداد الصحيحة مثل [value 1, value 2, value N]؛
  • BETWEEN: يجب أن يكون المعامل مصفوفة من الأعداد الصحيحة مثل [min_value, max_value]؛
  • NOTSET: العلامة غير معينة. لا يتم النظر في المعامل؛
  • ANY: العلامة لها أي قيمة. لا يتم النظر في المعامل.

علامات التاريخ

Anchor link to

العوامل الصالحة: EQ, IN, NOTEQ, NOTIN, BETWEEN, GTE, LTE, NOTSET, ANY
المعاملات الصالحة:

  • "YYYY-MM-DD 00:00" (سلسلة نصية)
  • الطابع الزمني لـ unix 1234567890 (عدد صحيح)
  • "N days ago" (سلسلة نصية) للعوامل EQ, BETWEEN, GTE, LTE

علامات منطقية (Boolean)

Anchor link to

العوامل الصالحة: EQ, NOTSET, ANY
المعاملات الصالحة: 0, 1, true, false

علامات القائمة

Anchor link to

العوامل الصالحة: IN, NOTIN, NOTSET, ANY
المعاملات الصالحة: يجب أن يكون المعامل مصفوفة من السلاسل النصية مثل ["value 1", "value 2", "value N"].

مقتطفات /createMessage

Anchor link to

نماذج طلبات /createMessage:

#!/bin/bash
#Usage
if [ ! -n "$1" ] || [ ! -n "$2" ]
then
echo "`basename $0` usage: api_token appid message";
exit 1;
fi;
MESSAGE="$3";
if [ -z "$3" ]
then
MESSAGE='One push to rule them all!'
fi;
echo -e "Response:"
curl --data-binary "
{\"request\":
{\"application\":\"$2\",
\"auth\":\"$1\",
\"notifications\":
[{
\"send_date\": \"now\",
\"content\": \"$MESSAGE\"
}]
}
}" \
-H "Content-type: application/json" \
"https://api.pushwoosh.com/json/1.3/createMessage"
echo "";
exit 0;

deleteMessage

Anchor link to

POST https://api.pushwoosh.com/json/1.3/deleteMessage

تحذف رسالة، سواء كانت لا تزال مجدولة أو تم إرسالها بالفعل. بالنسبة للرسالة المجدولة، يؤدي هذا أيضًا إلى إزالتها من سجل الرسائل (Message History) على الفور — بالنسبة للرسالة التي تم إرسالها بالفعل، انظر التحذير أدناه.

لا تتأثر عمليات الإرسال اللاحقة التي تم إنشاؤها من الرسالة باستخدام إعادة الإرسال إلى غير الفاتحين — احذف أو ألغِ كل منها على حدة.

استخدم /cancelMessage بدلاً من ذلك إذا كنت تريد إيقاف الإرسال ولكن الاحتفاظ بالرسالة في سجل الرسائل بالحالة canceled.

نص الطلب

Anchor link to
الاسمالنوعالوصف
auth*stringرمز الوصول إلى API من لوحة تحكم Pushwoosh.
message*stringرمز الرسالة الذي تم الحصول عليه في طلب /createMessage.
{
"status_code": 200,
"status_message": "OK"
}
مثال
{
"request":{
"auth": "yxoPUlwqm…………pIyEX4H", // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
"message": "xxxx-xxxxxxx-xxxxxx" // مطلوب. رمز الرسالة الذي تم الحصول عليه في /createMessage
}
}

رموز الحالة:

رمز حالة HTTPstatus_codeالوصف
200200تم حذف الرسالة بنجاح
200210خطأ في الوسيطة، على سبيل المثال، لا تزال الرسالة في حالة creating. انظر status_message لمزيد من المعلومات
400N/Aسلسلة طلب غير صالحة
500500خطأ داخلي
<?php
// see https://gomoob.github.io/php-pushwoosh/delete-message.html
use Gomoob\Pushwoosh\Model\Request\DeleteMessageRequest;
// creates request instance
$request = DeleteMessageRequest::create()->setMessage('MESSAGE_CODE');
// call '/deleteMessage' Web Service
$response = $pushwoosh->deleteMessage($request);
if($response->isOk()) {
print 'Great, my message has been deleted !';
} else {
print 'Oups, the deletion failed :-(';
print 'Status code : ' . $response->getStatusCode();
print 'Status message : ' . $response->getStatusMessage();
}

getMessageDetails

Anchor link to

POST https://api.pushwoosh.com/json/1.3/getMessageDetails

يسترجع تفاصيل الرسالة.

نص الطلب

Anchor link to
الاسمالنوعالوصف
auth*stringرمز الوصول إلى API من لوحة تحكم Pushwoosh.
message*stringرمز الرسالة أو معرف الرسالة.
{
"status_code": 200,
"status_message": "OK",
"response": {
"message": {
"id": 2068991743,
"created": "2016-09-14 17:19:42",
"send_date": "2016-09-14 17:19:41",
"status": "done",
"content": {
"en": "Hello {Name|CapitalizeFirst|friend}! 🚀"
},
"platforms": "[1]",
"ignore_user_timezone": "1",
"code": "XXXX-92B4C3C5-A7F5EF70",
"data": {
"key": "value"
}
}
}
}
مثال
{
"request":{
"auth": "yxoPUlwqm…………pIyEX4H", // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
"message": "xxxx-xxxxxxx-xxxxxx" // مطلوب. رمز الرسالة أو معرف الرسالة
}
}

createTargetedMessage مهمل

Anchor link to

POST https://api.pushwoosh.com/json/1.3/createTargetedMessage

تُنشئ إشعار دفع مستهدف جديد.

نص الطلب

Anchor link to
الاسمالنوعالوصف
auth*stringرمز الوصول إلى API من لوحة تحكم Pushwoosh.
devices_filter*stringانظر الملاحظة أدناه.
send_date*stringYYYY-MM-DD HH:mm أو ‘now’.
ignore_user_timezonebooleanإذا تم تجاهله، يكون UTC-0 هو الافتراضي لـ “send_date”.
timezonestringإذا تم تجاهله، يكون UTC-0 هو الافتراضي لـ “send_date”.
campaignstringرمز حملة تريد تعيين رسالة الدفع هذه إليها.
content*stringمحتوى الإشعار. انظر مثال الطلب للحصول على التفاصيل.
transactionIdstringمعرف رسالة فريد لمنع تكرار الرسائل في حالة مشاكل الشبكة. يتم تخزينه على جانب Pushwoosh لمدة 5 دقائق.
linkstringرابط يتم فتحه بمجرد أن يفتح المستخدم رسالة دفع.
minimize_linkinteger0 - عدم التصغير، 2 - bit.ly. الافتراضي = 2.
dataobjectسلسلة JSON أو كائن JSON. سيتم تمريره كمعلمة “u” في الحمولة (محولة إلى سلسلة JSON).
presetstringرمز الإعداد المسبق.
send_rateintegerالتقييد. القيم الصالحة هي من 100 إلى 1000 دفعة في الثانية.
inbox_datestringحدد متى تتم إزالة رسالة من صندوق الوارد.
inbox_imagestringعنوان URL للصورة التي سيتم عرضها بجوار الرسالة في صندوق الوارد.
{
"status_code": 200,
"status_message": "OK",
"response": {
"messageCode": "97B0-C7473871-2FBDFDC6"
}
}

المزيد من أمثلة الاستجابة:

{
"status_code": 210,
"status_message": "Errors occurred while compiling filter",
"response": {
"errors": [{
"message": "Invalid tag set specification. \")\" expected.",
"type": "syntax"
}]
}
}
مثال
{
"request": {
"auth": "yxoPUlwqm…………pIyEX4H", // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
"devices_filter": "A(\"XXXXX-XXXXX\") * T(\"City\", EQ, \"Name\")", // مطلوب. بناء الجملة مشروح أدناه
"send_date": "now", // اختياري. YYYY-MM-DD HH:mm أو 'now'
"ignore_user_timezone": true, // اختياري.
"timezone": "America/New_York", // اختياري. إذا تم تجاهله، يكون UTC-0 هو الافتراضي لـ "send_date".
// مزيد من المعلومات https://php.net/manual/timezones.php.
"campaign": "CAMPAIGN_CODE", // اختياري. رمز الحملة الذي تريد تعيين رسالة الدفع هذه إليه.
"content": { // اختياري. كائن أو سلسلة نصية. استخدم "wns_content" بدلاً من ذلك لنظام Windows.
"en": "English",
"de": "Deutsch"
},
"transactionId": "unique UUID", // اختياري. معرف رسالة فريد لمنع تكرار الرسائل
// في حالة مشاكل الشبكة. يتم تخزينه على جانب
// Pushwoosh لمدة 5 دقائق.
"rich_media": "XXXXX-XXXXX", // اختياري. انسخ رمز الوسائط الغنية من شريط URL الخاص بـ
// صفحة محرر الوسائط الغنية في لوحة تحكم Pushwoosh.
"link": "https://google.com", // اختياري. للروابط العميقة أضف "minimize_link": 0
"minimize_link": 0, // اختياري. 0 — عدم التصغير، 2 — bitly. الافتراضي = 2.
// تم تعطيل أداة تقصير عناوين URL من Google منذ 30 مارس 2019.
// يرجى ملاحظة أن أدوات تقصير الروابط لها قيود
// على عدد الاستدعاءات.
"data": { // اختياري. سلسلة JSON أو كائن JSON.
"key": "value" // سيتم تمريره كمعلمة "u" في الحمولة
}, // (محولة إلى سلسلة JSON).
"preset": "XXXXX-XXXXX", // اختياري. رمز الإعداد المسبق للدفع من لوحة التحكم الخاصة بك.
"send_rate": 100, // اختياري. التقييد. القيم الصالحة هي من 100 إلى 1000 دفعة/ثانية.
"dynamic_content_placeholders": { // اختياري. عناصر نائبة للمحتوى الديناميكي بدلاً من علامات الجهاز.
"firstname": "John",
"lastname": "Doe"
},
// لحفظ الرسالة في صندوق الوارد عبر API، استخدم "inbox_date" أو "inbox_image".
// يتم حفظ الرسالة عند استخدام أحد هذين المعلمين على الأقل.
"inbox_image": "Inbox image URL", // اختياري. الصورة التي سيتم عرضها بجوار الرسالة.
"inbox_date": "2017-02-02" // اختياري. حدد متى تتم إزالة رسالة من صندوق الوارد.
// ستتم إزالة الرسالة من صندوق الوارد في الساعة 00:00:01 UTC من
// التاريخ المحدد، لذا فإن اليوم السابق هو آخر
// يوم يمكن للمستخدم رؤية الرسالة في صندوق الوارد الخاص به.
// إذا لم يتم تحديده، فإن تاريخ الإزالة الافتراضي هو اليوم
// التالي لتاريخ الإرسال.
}
}

الأساسيات بسيطة جدًا – يتم تنفيذ جميع المرشحات على مجموعات من الكيانات.

المجموعات

Anchor link to

يتم تعريف المجموعات على النحو التالي:

1. الأجهزة المشتركة في تطبيق معين (A)؛
2. الأجهزة التي تطابق قيم العلامات المحددة (T) أو قيمة علامة خاصة بالتطبيق (AT)؛\

بناء الجملة

Anchor link to

لنجرب بعض العينات وفقًا للقائمة أعلاه.

استهداف مشتركي التطبيق

Anchor link to

يحدد المرشح “A” مجموعة من الأجهزة المشتركة في تطبيق معين:

A("XXXXX-XXXXX", ["iOS", "Android", "OsX", "Windows", "Amazon", "Safari", "Chrome", "Firefox"])

حيث

  • “XXXXX-XXXXX” – رمز تطبيق Pushwoosh
  • [“iOS”, “Android”, …] – مصفوفة من المنصات المستهدفة. إذا تم حذفها، سيتم إرسال الرسالة إلى جميع المنصات المتاحة لهذا التطبيق.

التصفية حسب قيم العلامات

Anchor link to

يحدد المرشح “T” مجموعة من الأجهزة التي تم تعيين قيم علامات محددة لها.

T(\"Age\", IN, [17,20])

يحدد مجموعة الأجهزة التي تم تعيين علامة “age” لها على إحدى القيم: 17، 18، 19، 20.

أنواع العلامات والعوامل

Anchor link to

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

يمكن أن تكون العلامة واحدة من ثلاثة أنواع مختلفة: سلسلة نصية، عدد صحيح، قائمة. يحدد نوع العلامة العوامل التي يمكنك استخدامها لعلامة معينة.

علامات السلسلة النصية

Anchor link to

العوامل القابلة للتطبيق:

  • EQ – يستهدف الأجهزة ذات قيمة علامة محددة
  • IN – يستهدف الأجهزة ذات أي من قيم العلامات المحددة
  • NOTIN – يستهدف الأجهزة التي لا تحتوي على قيم علامات محددة
  • NOTEQ – يستهدف الأجهزة ذات قيمة علامة لا تساوي قيمة محددة
  • NOTSET – يستهدف الأجهزة التي لا تحتوي على قيمة لعلامة محددة
  • ANY – يستهدف الأجهزة ذات أي قيمة معينة لعلامة محددة

أمثلة:

T (\"Age\", EQ, 30) – يصفّي المستخدمين في سن 30

T (\"favorite_color\", IN, [\"red\",\"green\",\"blue\"]) – يصفّي المستخدمين الذين اختاروا الأحمر أو الأخضر أو الأزرق كلونهم المفضل.

T (\"Name", NOTSET, \"\") – يستهدف الأجهزة التي لا تحتوي على قيمة لعلامة الاسم.

يمكنك استخدام قيم رقمية مع علامات السلسلة النصية، ولكن سيتم تحويل هذه القيم إلى سلسلة نصية.

علامات الأعداد الصحيحة

Anchor link to

العوامل القابلة للتطبيق:

  • GTE – أكبر من أو يساوي قيمة محددة
  • LTE– أقل من أو يساوي قيمة محددة
  • EQ – يساوي قيمة محددة
  • BETWEEN – بين القيم الدنيا والقصوى المحددة
  • IN – أي من القيم المحددة
  • NOTIN – لا توجد قيم محددة معينة لجهاز
  • NOTEQ – الأجهزة ذات قيمة علامة لا تساوي قيمة محددة
  • NOTSET – الأجهزة التي لا تحتوي على قيمة لعلامة محددة
  • ANY – الأجهزة ذات أي قيمة معينة لعلامة محددة

أمثلة:

T (\"Level\", EQ, 14) – يصفّي المستخدمين في المستوى 14 فقط.

T (\"Level\", BETWEEN, [1,5) – يصفّي المستخدمين في المستويات 1، 2، 3، 4، و 5.

T (\"Level", GTE, 29) – يستهدف المستخدمين الذين وصلوا إلى المستوى 29 على الأقل.

علامات القائمة

Anchor link to

العوامل القابلة للتطبيق:

  • IN – الأجهزة ذات أي من قيم العلامات المحددة

مثال: T("Category", IN, ["breaking_news","business","politics"])

علامات التاريخ

Anchor link to

العوامل القابلة للتطبيق:

  • GTE – أكبر من أو يساوي قيمة محددة
  • LTE– أقل من أو يساوي قيمة محددة
  • EQ – يساوي قيمة محددة
  • BETWEEN – بين القيم الدنيا والقصوى المحددة
  • NOTEQ – الأجهزة ذات قيمة علامة لا تساوي قيمة محددة
  • NOTSET – الأجهزة التي لا تحتوي على قيمة لعلامة محددة
  • ANY – الأجهزة ذات أي قيمة معينة لعلامة محددة

أمثلة:

AT("7777D-322A7","Last Application Open", BETWEEN, ["2022-02-28", "2022-03-02"])

AT("7777D-322A7","Last Application Open", GTE, "90 days ago")

العمليات

Anchor link to
  • “+” – يضم مجموعتين (يساوي OR)
  • “*” – يتقاطع مع مجموعتين (يساوي AND)
  • “\” – يطرح مجموعة من أخرى (يساوي NOT)

جميع العمليات ترابطية من اليسار. ”+” و ”*” لهما نفس الأولوية. "" لها أولوية أكبر. يمكنك استخدام الأقواس لتحديد أولويات الحسابات.

لاحظ أن عملية "" ليست تبادلية. A("12345-12345") \ A("67890-67890") ليست هي نفسها A("67890-67890") \ A("12345-12345").

getPushHistory مهمل

Anchor link to

POST https://api.pushwoosh.com/json/1.3/getPushHistory

يحصل على سجل الرسائل مع تفاصيل الدفع.

نص الطلب

Anchor link to
الاسمالنوعالوصف
auth*stringرمز الوصول إلى API من لوحة تحكم Pushwoosh.
limitMessagesintegerيحد من عدد الرسائل في الاستجابة. القيم الممكنة من 10 إلى 1000.
sourcestringمصدر سجل الدفع. يمكن أن يكون null أو: “CP”, “API”, “GeoZone”, “RSS”, “AutoPush”, “A/B Test”.
searchBystringالقيم الممكنة للبحث بها. يمكن أن يكون null أو: “notificationID”, “notificationCode”, “applicationCode”, “campaignCode”.
valuestringقيمة البحث المحددة وفقًا لحقل “searchBy”.
lastNotificationIDstringيستخدم للترقيم. آخر messageId من استدعاء /getPushHistory السابق. انظر التفاصيل أدناه.
{
"status_code": 200,
"status_message": "OK",
"response": {
"rows": [{
"id": 10191611434,
"code": "8071-07AD1171-77238AD1",
"createDate": "2020-09-14 12:26:21",
"sendDate": "2020-09-14 12:26:21",
"content": {
"en": "Hello!"
},
"url": null,
"ios_title": null,
"ios_subtitle": null,
"ios_root_params": null,
"android_header": null,
"android_root_params": null,
"conditions": null,
"conditions_operator": "AND",
"filter_code": "E3A64-A5F3C",
"filter_conditions": "#In-app Purchase(≠0)",
"filter_name": "Purchased something",
"geozone": null,
"campaignId": "",
"campaignName": "",
"subscription_segments": null,
"open": {
"C90C0-0E786": {
"IOS": 0
}
},
"sent": {
"C90C0-0E786": {
"IOS": 1
}
},
"ctr": {
"C90C0-0E786": 0
}
}, {
"id": 10191609202,
"code": "41CA-83F8E0D7-7A63822B",
"createDate": "2020-09-14 12:25:55",
"sendDate": "2020-09-14 12:25:55",
"content": {
"en": "Hi!"
},
"url": null,
"ios_title": null,
"ios_subtitle": null,
"ios_root_params": null,
"android_header": null,
"android_root_params": null,
"conditions": null,
"conditions_operator": "AND",
"filter_code": null,
"filter_conditions": null,
"filter_name": null,
"geozone": null,
"campaignId": "",
"campaignName": "",
"subscription_segments": {
"2D732-BB981": "News"
},
"open": {
"C90C0-0E786": {
"CHROME": 0,
"IOS": 0
}
},
"sent": {
"C90C0-0E786": {
"CHROME": 1,
"IOS": 2
}
},
"ctr": {
"C90C0-0E786": 0
}
}]
}
}
مثال
{
"request":{
"auth": "yxoPUlwqm…………pIyEX4H", // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
"source": null, // اختياري. القيم الممكنة هي null, "CP", "API", "GeoZone",
// "RSS", "AutoPush", "A/B Test"
"searchBy": "applicationCode", // اختياري. القيم الممكنة هي "", "notificationID",
// "notificationCode", "applicationCode", "campaignCode"
"value": "C8717-703F2", // اختياري. قيمة البحث المحددة وفقًا لحقل "searchBy".
"lastNotificationID": 0, // اختياري. يستخدم للترقيم. آخر messageId من
// استدعاء /getPushHistory السابق. انظر التفاصيل أدناه.
"limitMessages": 1000 // اختياري. قيمة ممكنة من 10 إلى 1000.
}
}

ستعيد هذه الدالة 1000 رسالة من الحساب مرتبة حسب معرف الرسالة. للحصول على الصفحة الثانية، حدد آخر معرف رسالة من الاستجابة السابقة في معلمة lastNotificationId.

أنواع بيانات الاستجابة

Anchor link to
id -- int | 0
code -- string
createDate -- string (date: %Y-%m-%d %H:%M:%S)
sendDate -- string (date: %Y-%m-%d %H:%M:%S)
content -- array ( dict {lang: value} | list [])
title -- array ( dict {lang: value} | list [])
subtitle -- array ( dict {lang: value} | list [])
url -- string
ios_title -- string | array ( dict {lang: value} ) | null
ios_subtitle -- string | array ( dict {lang: value} ) | null
ios_root_params -- dict (JSON) | null
android_header -- string | array ( dict {lang: value} ) | null
android_root_params -- dict (JSON) | null
conditions -- list (JSON) | null
conditions_operator -- string | null
filter_code -- string | null
filter_name -- string | null
filter_conditions -- string | null
geozone -- string | null
campaignId -- string | ""
campaignName -- string | ""
subscription_segments (obsolete) -- list (JSON) | null
data -- dict (JSON) | null
open -- dict [dict [string: int]] | "" Example: 'open': {'AAAAA-BBBBB': {'IOS': 1, 'ANDROID': 1}}
sent -- dict [dict [string: int]] | "" Example: 'sent': {'AAAAA-BBBBB': {'IOS': 10, 'ANDROID': 10}}
ctr -- dict [string: int] | "" Example: {'AAAAA-BBBBB': 1}
errors -- dict [string: int] | "" Example: {'ANDROID': 1, 'IOS': 1}

cancelMessage

Anchor link to

POST https://api.pushwoosh.com/json/1.3/cancelMessage

تلغي إرسال رسالة مجدولة. تظل الرسالة في سجل الرسائل (Message History) بالحالة canceled. كما يتم إلغاء عمليات الإرسال اللاحقة التي تم إنشاؤها منها باستخدام إعادة الإرسال إلى غير الفاتحين.

استخدم /deleteMessage بدلاً من ذلك إذا كنت تريد إزالة الرسالة من سجل الرسائل (انظر التحذير هناك حول الرسائل التي تم إرسالها بالفعل).

نص الطلب

Anchor link to
الاسمالنوعالوصف
auth*stringرمز الوصول إلى API من لوحة تحكم Pushwoosh.
message*stringرمز الرسالة الذي تم الحصول عليه في استجابة /createMessage.
{
"status_code":200,
"status_message":"OK"
}
مثال
{
"request":{
"auth": "yxoPUlwqm…………pIyEX4H", // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
"message": "xxxx-xxxxxxx-xxxxxx" // مطلوب. رمز الرسالة الذي تم الحصول عليه في استجابة /createMessage
}
}

رموز الحالة:

رمز حالة HTTPstatus_codeالوصف
200200تم إلغاء الرسالة بنجاح
200210خطأ في الوسيطة. انظر status_message لمزيد من المعلومات.
400N/Aسلسلة طلب غير صالحة
500500خطأ داخلي