নিবন্ধন ফর্ম তৈরি করার আগে বিকল্পগুলো লোড করুন
রেজিস্ট্রির মান কোডে স্থিরভাবে বসিয়ে না দিয়ে বিকল্পগুলো পূরণ করতে বর্তমান মেসেজিং নিবন্ধন ক্যাটালগ ব্যবহার করুন। ব্র্যান্ডের ফর্মের জন্য পোর্টাল ব্যবসার ধরন, শিল্পখাত, বিকল্প ব্যবসায়িক শনাক্তকারীর ধরন, ব্র্যান্ডের সঙ্গে সম্পর্ক, দেশ, যুক্তরাষ্ট্রের অঙ্গরাজ্য ও স্টক এক্সচেঞ্জের ক্যাটালগ লোড করে। ক্যাম্পেইনের ফর্মের জন্য এটি ব্যবহারের ক্ষেত্র, বৈধ উপ-ব্যবহারের ক্ষেত্র ও সংযোগ অংশীদারদের লোড করে। ফেরত পাওয়া প্রতিটি যন্ত্রপাঠ্য মান তার প্রদর্শনযোগ্য লেবেলের সঙ্গে রাখুন; পরবর্তী অনুরোধ তৈরি করার সময় অনূদিত লেবেলের বদলে সেই মান ব্যবহার করুন।
একটি ক্যাটালগ বেছে নিন
| নাম | উদ্দেশ্য |
|---|---|
| usecase | ক্যাম্পেইনের ব্যবহারের ক্ষেত্রগুলোর সংজ্ঞা। উপ-ব্যবহারের ক্ষেত্রের বিকল্পগুলো লোড করার সময় validSubUsecase=true যোগ করুন। |
| entityType | ব্র্যান্ডের ব্যবসা বা প্রতিষ্ঠানের ধরন। |
| vertical | ব্র্যান্ডের জন্য শিল্পখাতের বিকল্পগুলো। |
| altBusinessIdType | বিকল্প ব্যবসায়িক শনাক্তকারীর শ্রেণিগুলো। |
| brandRelationship | নিবন্ধন ফর্মে ব্যবহৃত সম্পর্কের বিকল্পগুলো। |
| country | রেজিস্ট্রির দেশের বিকল্পগুলো; ফোন নম্বর পাওয়া যায় এমন দেশের তালিকা থেকে এগুলো আলাদা। |
| usState | নিবন্ধনের ঠিকানার জন্য যুক্তরাষ্ট্রের অঙ্গরাজ্যের বিকল্পগুলো। |
| stockExchange | ব্র্যান্ডের ব্যবসার ধরন অনুযায়ী প্রয়োজন হলে স্টক এক্সচেঞ্জের বিকল্পগুলো। |
| cnp | সংযোগ অংশীদারদের শনাক্তকারী। আপনার অ্যাকাউন্টের ক্যাম্পেইন কার্যপ্রবাহে সমর্থিত অংশীদারটি বেছে নিন। |
TCR প্রতিক্রিয়া সরাসরি প্রক্রিয়া করুন
প্রতিক্রিয়ার মূল অংশ সরাসরি TCR API থেকে আসে। অনেক পুরোনো /v3 এন্ডপয়েন্টের বিপরীতে, এতে অতিরিক্ত status/response মোড়ক থাকে না। এর অর্থ নির্ধারণের আগে HTTP স্ট্যাটাস যাচাই করুন। ক্যাটালগে স্ট্রিং লেবেল বা কাঠামোবদ্ধ সংজ্ঞা থাকতে পারে, তাই প্রতিটি মানে একই ফিল্ড আছে বলে ধরে নেবেন না। HTTP অনুরোধ সফল হলেও মূল অংশটি প্রত্যাশিত কাঠামোর বৈধ JSON না হলে, নীরবে খালি তালিকা দিয়ে প্রতিস্থাপন না করে তথ্য খোঁজার ব্যর্থতা জানান।
ক্যাটালগের বিকল্পগুলোকে যোগ্যতা ও মূল্য নির্ধারণ থেকে আলাদা রাখুন
ব্যবহারের ক্ষেত্রের সাধারণ ক্যাটালগ থেকে বোঝা যায় না কোনো নির্দিষ্ট ব্র্যান্ড কোন কোন ব্যবহারের ক্ষেত্রের জন্য যোগ্য। বর্তমান পোর্টাল ক্যাম্পেইন তৈরির আগে ব্র্যান্ডভিত্তিক যোগ্যতার তথ্য খোঁজে এবং নির্বাচিত ক্যারিয়ারের শর্তগুলো যাচাই করে। একইভাবে, সরবরাহকারীর ফি-সংক্রান্ত মেটাডেটা অ্যাকাউন্টের চূড়ান্ত খুচরা মূল্য নয়। প্রযোজ্য অ্যাকাউন্টের মূল্য ও নিবন্ধনের শর্তগুলো আলাদাভাবে পর্যালোচনা করুন। ক্যাটালগ লোড করলে কোনো ব্র্যান্ড, ক্যাম্পেইন বা মেসেজিং নম্বর অনুমোদিত হয় না।
ক্যাটালগ পাওয়া না গেলে ব্যবস্থা নিন
তথ্য খোঁজা ব্যর্থ হলে ফর্মে গ্রাহকের দেওয়া তথ্য সংরক্ষণ করুন। ত্রুটি দেখান এবং Retry-After ফেরত এলে তার নির্দেশ মেনে চলুন এবং পুনঃচেষ্টার মধ্যে অপেক্ষার সময় বাড়ান। বারবার প্রতিটি ক্যাটালগ পুনরায় লোড করবেন না এবং অনুরোধের হারসীমা বা ডেটা পরিবহনের ত্রুটিকে বৈধ খালি ক্যাটালগ হিসেবে গণ্য করবেন না। এই GET-এর জন্য আইডেমপোটেন্সি কী প্রয়োজন হয় না এবং পরিবর্তনমূলক অনুরোধের আইডেমপোটেন্সি ভান্ডার থেকে এটি পুনরায় চালানো হয় না।
অনুরোধ
অনুমোদিত উৎস আইপি ঠিকানা থেকে HTTPS-এর মাধ্যমে সক্রিয় API অ্যাকাউন্ট ব্যবহার করুন। বর্তমান রুট অ্যাকাউন্টের প্রমাণীকরণ নীতি সমর্থন করে, যার মধ্যে Basic প্রমাণীকরণ ও সক্রিয় বেয়ারার API অ্যাকাউন্ট অন্তর্ভুক্ত। প্রদানকারীর পরিচয়পত্র ব্যবহার করবেন না।
পাথে সমর্থিত ক্যাটালগের নাম দিয়ে GET অনুরোধ করুন। প্রযোজ্য ক্যাটালগ ফিল্টারগুলো কোয়েরি স্ট্রিংয়ে দিন। অনুরোধের কোনো মূল অংশ প্রয়োজন নেই।
curl --fail-with-body --silent --show-error \
--user "$API_USER:$API_PASSWORD" \
"https://api.multitel.net/tcr/v2/enum/usecase?validSubUsecase=true"| নাম | ধরন | আবশ্যক | বিবরণ |
|---|---|---|---|
type | স্ট্রিং | হ্যাঁ | মূল বড় ও ছোট হাতের অক্ষর অপরিবর্তিত রেখে ক্যাটালগের নাম। পোর্টাল usecase, entityType, vertical, altBusinessIdType, brandRelationship, country, usState, stockExchange ও cnp ব্যবহার করে। এগুলো ক্যাটালগের নাম, ব্র্যান্ড বা ক্যাম্পেইনের শনাক্তকারী নয়। |
| নাম | ধরন | আবশ্যক | বিবরণ |
|---|---|---|---|
validSubUsecase | বুলিয়ান | না | usecase ক্যাটালগের ক্ষেত্রে বৈধ উপ-ব্যবহারের ক্ষেত্রের বিকল্পগুলো লোড করতে পোর্টাল অনুরোধে true পাঠায়। ব্যবহারের ক্ষেত্রের সাধারণ ক্যাটালগ লোড করার সময় এটি বাদ দিন। কোনগুলো উপলভ্য এবং সেগুলোর সংজ্ঞা রেজিস্ট্রি সরবরাহ করে। |
প্রতিক্রিয়া
এই TCR রুট রেজিস্ট্রির মূল অংশ তার HTTP স্ট্যাটাসসহ সরাসরি ফেরত দেয়। এটি পুরোনো v3 status.code/status.msg/response মোড়ক ব্যবহার করে না। ক্যাটালগের কাঠামো ভিন্ন হয়: কোনোটি মানকে বর্ণনামূলক অবজেক্টের সঙ্গে মেলায়; অন্যগুলো মানকে স্ট্রিংয়ের সঙ্গে মেলায়। পরবর্তী ফর্ম জমা দেওয়ার সময় যন্ত্রপাঠ্য কীগুলো অক্ষুণ্ণ রাখুন। সংক্ষিপ্ত কাল্পনিক usecase উদাহরণটি অবজেক্ট-মানযুক্ত ম্যাপ দেখায়; এটি সরাসরি ব্যবহৃত ক্যাটালগ বা নিশ্চিতভাবে সম্পূর্ণ স্কিমা নয়। HTTP স্ট্যাটাস ও প্রত্যাশিত JSON কাঠামো উভয়ই যাচাই করুন।
প্রতিক্রিয়ার কাঠামোর উদাহরণ; এটি অ্যাকাউন্টের সরাসরি তথ্য বা বর্তমান মূল্যপ্রস্তাব নয়।
{
"2FA": {
"displayName": "Authentication",
"description": "Example authentication use case"
}
}ত্রুটি
- 401: অ্যাকাউন্টের প্রমাণীকরণ ব্যর্থ হয়েছে। API পরিচয়পত্র, অ্যাকাউন্ট সক্রিয় আছে কি না এবং প্রযোজ্য উৎস-আইপি বিধিনিষেধ যাচাই করুন।
- 400/404 ও রেজিস্ট্রির অন্যান্য ত্রুটি: ক্যাটালগ বা ফিল্টার অবৈধ অথবা উপলভ্য নয়। বর্তমান রুট উজানের সেবার HTTP স্ট্যাটাস ও প্রতিক্রিয়ার মূল অংশ অপরিবর্তিত রাখে; সর্বজনীন কোনো v3 ত্রুটি মোড়ক নেই।
- 429: অ্যাকাউন্টের বা প্রদানকারীর ভাগ করা অনুরোধসীমা পূর্ণ হয়েছে। Retry-After-এর নির্দেশ মেনে চলুন এবং অপেক্ষার সময় বাড়িয়ে পুনরায় চেষ্টা করুন।
- 502: রেজিস্ট্রির সঙ্গে যোগাযোগ করা যায়নি। কী উপলভ্য আছে তা অজানা; সফল ফলাফল হিসেবে খালি বিকল্প বসাবেন না।
- 503: অনুরোধ সীমিতকারী বা উজানের সেবা উপলভ্য নয়। পুনরায় চেষ্টা করার আগে মূল অংশ এবং কোনো Retry-After হেডার থাকলে তা পরীক্ষা করুন।
উপলভ্যতা ও আনুষঙ্গিক প্রভাব
- পর্যালোচিত কার্যপথে এই ক্যাটালগ GET কোনো ব্র্যান্ড বা ক্যাম্পেইন তৈরি করে না, নিবন্ধন জমা দেয় না, রিসোর্স সংরক্ষণ করে না বা নিবন্ধন ফি ধার্য করে না। এটি প্রদানকারীর সঙ্গে যোগাযোগ করে এবং অনুরোধের নিরীক্ষা রেকর্ড লেখে।
- ক্যাটালগের সংজ্ঞা ও সরবরাহকারীর যেকোনো ফি-সংক্রান্ত মেটাডেটা গ্রাহকের জন্য খুচরা মূল্যপ্রস্তাব নয়। বর্তমান পোর্টাল ক্যাম্পেইনের খুচরা মূল্য আলাদাভাবে সংগ্রহ করে; পুরোনো getCampaignPrice সহায়ক ফাংশন ও পুরোনো এনামের মূল্যসংক্রান্ত টীকাগুলোকে এই রুটের মূল্য নির্ধারণের চুক্তি হিসেবে গণ্য করা যাবে না।
- ক্যাটালগে কোনো এন্ট্রি সমর্থিত হলেই তা প্রমাণ করে না যে নির্দিষ্ট কোনো ব্র্যান্ড সেই ব্যবহারের ক্ষেত্রের জন্য যোগ্য। পরবর্তী নিবন্ধন অনুরোধের আগে ব্র্যান্ডভিত্তিক যোগ্যতা যাচাই, ঘোষণাসমূহ, সম্মতি ও অ্যাকাউন্টের মূল্য পর্যালোচনা সম্পন্ন করুন।