نئی رجسٹریشن بنائے بغیر مہم درست کریں
موجودہ مہم کی تفصیل، پیغامات کی مثالوں، رضامندی کی وضاحت یا مواد کی معاونت یافتہ خصوصیات میں ترمیم کے لیے یہ راستہ استعمال کریں۔ مہم کا شناختی نمبر اور اس کا موجودہ برانڈ اور استعمال کا معاملہ برقرار رکھیں۔ موجودہ مہم کی اصلاح کے لیے دوبارہ کوشش کرنے کا طریقہ نئی رجسٹریشن بنانا نہیں ہے۔
اجازت یافتہ ماخذ انٹرنیٹ پروٹوکول پتے سے HTTPS کے ذریعے فعال API اکاؤنٹ استعمال کرتے ہوئے اپنی شناخت کی توثیق کریں۔ صرف اسی اکاؤنٹ کی ملکیت والی مہم دستیاب ہوتی ہے۔ تبدیلیاں تیار کرنے سے پہلے اس کی موجودہ حالت پڑھیں؛ میعاد ختم ہونے والی مہموں کو اس طریقۂ کار سے اپ ڈیٹ نہیں کیا جا سکتا۔
curl --silent --show-error --fail-with-body --user "$API_USER:$API_PASSWORD" \
"https://api.multitel.net/tcr/v2/campaign/$CAMPAIGN_ID"صرف وہ فیلڈز منتخب کریں جن میں واقعی تبدیلی ہوئی ہے
campaign-update.json تیار کریں جس میں معاونت یافتہ تبدیلیاں شامل ہوں۔ موجودہ پورٹل صرف مہم کے تبدیل شدہ فیلڈز بھیجتا ہے اور brandId، usecase، campaignId یا صرف جواب میں دی جانے والی حالت کی معلومات نہیں بھیجتا۔ براہ راست API اپ ڈیٹس میں بھی فیلڈز پر مشتمل JSON آبجیکٹ استعمال ہوتا ہے، پورٹل کا changes/version غلاف نہیں۔
| فیلڈز | کیا فراہم کرنا ہے |
|---|---|
| description, messageFlow | سروس کی درست تفصیل اور یہ وضاحت کہ لوگ کیسے رضامندی دیتے ہیں، پیغامات وصول کرتے ہیں اور رضامندی واپس لیتے ہیں۔ ہر فیلڈ میں 40–4096 حروف کی اجازت ہے۔ |
| sample1–sample5 | اس مہم کے حقیقت پسندانہ نمونے، ہر غیر خالی نمونے میں 20–1024 حروف۔ اہلیت کی جانچ میں موزوں قرار پانے والے استعمال کے معاملے کے لیے درکار نمونوں کی تعداد برقرار رکھیں؛ غیر متعلقہ پیغامات نہ بھیجیں۔ |
| helpMessage, optinMessage, optoutMessage | وصول کنندگان کو دکھائے جانے والے متعلقہ جوابات، زیادہ سے زیادہ 1024 حروف۔ جہاں ضروری ہو، کم از کم 20 حروف کی شرط پوری کریں اور اصل سروس کی وضاحت کریں۔ کسی فیلڈ کو خالی کرنے سے پہلے رضامندی کے موجودہ تقاضوں کا جائزہ لیں۔ |
| optinKeywords, optoutKeywords, helpKeywords | بغیر خالی جگہوں کے، کوما سے الگ کیے گئے کلیدی الفاظ، زیادہ سے زیادہ 255 حروف۔ جوابات اور عملی طور پر کلیدی الفاظ پر ہونے والی کارروائی میں مطابقت برقرار رکھیں۔ |
| privacyPolicyLink, termsAndConditionsLink | متعلقہ عوامی ویب پتے، زیادہ سے زیادہ 2048 حروف، جو اس سروس کے اصل طریقوں کی وضاحت کرتے ہوں۔ |
| embeddedLinkSample | زیادہ سے زیادہ 255 حروف کا نمائندہ لنک جو پیغامات میں شامل ہوگا۔ |
| numberPool, embeddedLink, embeddedPhone, ageGated, directLending | مہم کی حقیقی خصوصیات کو JSON کی بولین قدروں کے طور پر دیں۔ کسی خصوصیت کو غیر فعال کرتے وقت false استعمال کریں، سٹرنگ "false" نہیں۔ |
| autoRenewal | عوامی API اسکیما اس JSON بولین کی معاونت کرتا ہے، اگرچہ پورٹل کا مہم کے مواد میں ترمیم کرنے والا عام ایڈیٹر اسے دستیاب نہیں کرتا۔ تجدید غیر فعال کرنے سے موجودہ کم از کم معاہداتی ذمہ داری منسوخ نہیں ہوتی اور نہ ہی پہلے سے واجب الادا چارجز ختم ہوتے ہیں۔ |
| resellerId | اسکیما دوبارہ فروخت کنندہ کے ساتھ وابستگی کا اختیار بھی دیتا ہے۔ یہ پورٹل کے مواد درست کرنے کے عام فارم کا حصہ نہیں ہے۔ اس فیلڈ کو مہم ایک گاہک سے دوسرے گاہک کو منتقل کرنے کے لیے استعمال نہ کریں، اور یہ فرض نہ کریں کہ API کسی مختلف دوبارہ فروخت کنندہ کے لیے ٹیلی کام آپریٹر کی سروس ترتیب دے گا۔ |
اپ ڈیٹ اسکیما brandId، usecase، subscriberOptin، subscriberOptout یا subscriberHelp کو قابل ترمیم فیلڈز کے طور پر فراہم نہیں کرتا۔ مہم بنانے کی درخواست کا مکمل ڈیٹا اپ ڈیٹ میں نقل نہ کریں۔ رجوع کریں: موجودہ اہلیت کی جانچ، جب پیغامات کے تقاضوں کا جائزہ لیں۔
مخصوص اصلاح جمع کرائیں
یہ مثال وضاحت کے لیے ملاقاتوں کی یاد دہانی کی سروس بیان کرتی ہے۔ اسے استعمال کرنے سے پہلے مہم کی اصل سروس اور رضامندی حاصل کرنے کے عمل کے مطابق ڈھالیں۔
{
"description": "Appointment reminders requested by customers of the registered business.",
"sample1": "Example business: Your requested appointment reminder is ready. Reply STOP to opt out."
}curl --silent --show-error --fail-with-body --user "$API_USER:$API_PASSWORD" \
--request PUT \
--header 'Content-Type: application/json' \
--header "Idempotency-Key: $IDEMPOTENCY_KEY" \
--data-binary @campaign-update.json \
"https://api.multitel.net/tcr/v2/campaign/$CAMPAIGN_ID"ایک ہی مطلوبہ ارسال کے لیے وہی کلید اور طریقے، راستے، استفسار اور درخواست کے متن کے بالکل وہی بائٹس برقرار رکھیں۔ تبدیل شدہ مواد کے لیے الگ سے جائزہ لی گئی درخواست ضروری ہے؛ مقررہ وقت گزر جانے کے بعد بغیر جانچ کے کلیدیں نہ بدلیں۔ مکمل ہو چکی درخواست کیش میں محفوظ خرابی دوبارہ لوٹا سکتی ہے، اور زیر عمل درخواست کی نقل Retry-After کے ساتھ 409 لوٹا سکتی ہے۔
مہم دوبارہ پڑھیں
HTTP 200 براہ راست مہم کا JSON آبجیکٹ لوٹاتا ہے۔ campaignId کی تصدیق کریں، پھر GET کے ذریعے وہی مہم حاصل کریں اور مطلوبہ فیلڈز کا موازنہ کریں۔ کامیابی سے محفوظ ہونے سے خودبخود ٹیلی کام آپریٹر کے ایک اور جائزے کی درخواست نہیں ہوتی، نمبروں کی تخصیص نہیں بدلتی، ارسال فعال نہیں ہوتا اور نہ ہی کوئی پیغام بھیجا جاتا ہے۔
پورٹل محفوظ کرنے سے پہلے فارم کا ورژن جانچتا ہے اور اس کے بعد مہم دوبارہ پڑھتا ہے۔ عوامی PUT اینڈ پوائنٹ پورٹل کے اس ورژن کی پابندی نافذ نہیں کرتا: بیک وقت ہونے والی ترامیم میں باہمی رابطہ رکھیں۔ یکساں درخواست کو دوبارہ بھیجنے پر ایک ہی نتیجہ برقرار رکھنے والی کلید کسی دوسرے ترمیم کنندہ کی اپ ڈیٹ کا پتا نہیں لگاتی۔
اگر پورٹل جائزے میں ایسی نامنظوری دکھاتا ہے جس کا مسئلہ ابھی حل نہیں ہوا، تو پہلے مواد درست کریں، پھر جائزے کی درخواست کی الگ کارروائی دستیاب ہونے پر استعمال کریں۔ یہ کارروائی حقیقی عملی ماحول کی موجودہ مہم اور اشتراک کی حالت جانچتی ہے۔ صرف مواد محفوظ کرنے سے یہ کارروائی شروع نہیں ہوتی، اور مہم کے شناختی نمبر کا موجود ہونا منظوری کا ثبوت نہیں ہے۔
موجودہ سروس میں مہم کی عام PUT اپ ڈیٹس مہم کی رجسٹریشن کا الگ چارج عائد کرنے کی کارروائی شروع نہیں کرتیں۔ موجودہ ماہانہ فیس، کم از کم معاہداتی ذمہ داریاں، نمبر کا کرایہ اور پیغامات کے استعمال کے چارجز بدستور لاگو ہوتے ہیں۔ مہم کے اس وقت مقرر کردہ نرخوں کے لیے دیکھیں: مہم کی فیس۔
پابندیوں اور غیر یقینی نتائج سے نمٹیں
HTTP 400 کی صورت میں فیلڈ کی سطح پر دی گئی خرابی پڑھیں اور طوالت، رضامندی کی عبارت اور مہم کی حالت جانچیں۔ 401، 403 یا 404 کی صورت میں API کی اسناد، اجازت یافتہ ماخذ انٹرنیٹ پروٹوکول پتے اور ملکیت کی جانچ کریں۔ 429 کی صورت میں Retry-After کی ہدایت پر عمل کریں۔ 500، 502 یا درخواست میں تعطل کی صورت میں مہم کا شناختی نمبر اور دستیاب requestId محفوظ رکھیں، پھر دوبارہ جمع کرانے سے پہلے موجودہ ریکارڈ کی جانچ کرکے مطابقت یقینی بنائیں۔
مقامی محفوظ نقل کا انحصار جواب میں لوٹائے گئے متن پر ہے۔ غیر خالی جزوی جواب میں پرانے فیلڈز، بشمول تجدید کی ضمنی معلومات، چھوٹ سکتے ہیں؛ خالی جواب کی وجہ سے پرانی قدریں برقرار رہ سکتی ہیں۔ صرف کامیابی کو اس بات کا ثبوت سمجھنے کے بجائے کہ ہر فیلڈ محفوظ رہا ہے، GET کے مکمل نتیجے کی تصدیق کریں۔ حل نہ ہونے والے اختلافات سپورٹ کو بتائیں۔ یہ راستہ ٹیلی کام آپریٹر کی تخصیصات کو ایک واحد ناقابل تقسیم کارروائی میں اپ ڈیٹ نہیں کرتا اور نہ ہی آپریٹر کی سروس فعال کرنے کے عمل کی بحالی کے لیے کوئی عمومی کارروائی فراہم کرتا ہے۔