বিদ্যমান মেসেজিং ব্র্যান্ডের তথ্য সংশোধন করুন
ব্যবসার যোগাযোগের তথ্য বা ঠিকানা বদলালে বিদ্যমান ব্র্যান্ডটি হালনাগাদ করুন। এর ব্র্যান্ড আইডি অপরিবর্তিত রাখুন; বিদ্যমান ব্যবসার তথ্য সংশোধনের জন্য আরেকটি নিবন্ধন তৈরি করা সঠিক পদ্ধতি নয়। অনুমোদিত উৎস আইপি ঠিকানা থেকে HTTPS ব্যবহার করে একটি সক্রিয় API অ্যাকাউন্টের মাধ্যমে কাজ করুন। ব্র্যান্ডটি অবশ্যই সেই অ্যাকাউন্টের মালিকানাধীন হতে হবে।
প্রথমে বর্তমান রেকর্ডটি পড়ুন। আপনার স্থানীয় অনুলিপিটি গোপন রাখুন, কারণ এতে ব্যবসার পরিচয় ও যোগাযোগের তথ্য রয়েছে।
curl --silent --show-error --fail-with-body --user "$API_USER:$API_PASSWORD" \
"https://api.multitel.net/tcr/v2/brand/$BRAND_ID" \
--output current-brand.jsonব্র্যান্ডের বর্তমান ফিল্ডগুলো অক্ষুণ্ণ রাখুন
বর্তমান রেকর্ড থেকে শুধু ব্র্যান্ডের লেখার উপযোগী ফিল্ডগুলো বেছে নিয়ে brand-update.json প্রস্তুত করুন। কাঙ্ক্ষিত সংশোধন করার সময় ব্যবসার পরিচয় এবং অন্যান্য আবশ্যক মান অক্ষুণ্ণ রাখুন। সম্পূর্ণ GET প্রতিক্রিয়া পাঠাবেন না: brandId, পরিচয়/অবস্থার ফলাফল, সময়চিহ্ন এবং শুধু প্রতিক্রিয়ায় ব্যবহৃত অন্যান্য ফিল্ড হালনাগাদের অন্তর্ভুক্ত নয়।
হালনাগাদের স্কিমায় entityType, displayName, country, email এবং brandRelationship আবশ্যক। সত্তার ধরনভিত্তিক নিয়মও প্রযোজ্য থাকে। কোনো প্রতিষ্ঠানের ক্ষেত্রে প্রযোজ্য অনুযায়ী তার আইনগত কোম্পানির নাম, কর শনাক্তকারী ও সেটি প্রদানকারী দেশ, ঠিকানা এবং শিল্পখাত অক্ষুণ্ণ রাখুন। একক মালিকানার ব্যবসার ক্ষেত্রে এর পরিবর্তে সংশ্লিষ্ট ব্যক্তির নাম ও মোবাইলে যোগাযোগের ফিল্ডগুলো অক্ষুণ্ণ রাখুন। নিবন্ধনের উদাহরণের নমুনা মান নয়, প্রকৃত বর্তমান মান ব্যবহার করুন।
| ফিল্ডসমূহ | যেভাবে ব্যবহার করবেন |
|---|---|
| displayName, email, phone | সহজে চেনা যায় এমন ব্র্যান্ডের নাম এবং বৈধ যোগাযোগের তথ্য। সর্বোচ্চ দৈর্ঘ্য যথাক্রমে 255, 100 এবং 20 অক্ষর। ফোন নম্বরে আন্তর্জাতিক রীতি অনুযায়ী + চিহ্নের পরে দেশের কোড ব্যবহার করুন। |
| street, city, state, postalCode, country | ব্যবসার প্রকৃত ঠিকানা দিন, যার সব অংশ পরস্পরের সঙ্গে সামঞ্জস্যপূর্ণ। দৈর্ঘ্যের সীমা যথাক্রমে 255, 100, 20, 10 এবং 2 অক্ষর। যেখানে প্রযোজ্য, যুক্তরাষ্ট্রের অঙ্গরাজ্যের বর্তমান কোড ব্যবহার করুন। |
| entityType, companyName, ein, einIssuingCountry | আইনগত পরিচয়। ক্যাম্পেইন বা বহিরাগত মূল্যায়ন অপেক্ষমাণ বা সক্রিয় থাকলে এসব পরিবর্তনে বিধিনিষেধ থাকে। শুধু পরিচয়সংক্রান্ত বিধিনিষেধ এড়াতে কার্যকর ক্যাম্পেইন মুছে ফেলবেন না। |
| firstName, lastName, mobilePhone, businessContactEmail | সত্তার ধরন অনুযায়ী প্রযোজ্য হলে পরিচয়সংক্রান্ত বা যাচাইয়ের জন্য যোগাযোগের তথ্য। দৈর্ঘ্যের সীমা যথাক্রমে 100, 100, 20 এবং 255 অক্ষর। |
| brandRelationship, vertical | বর্তমান সম্পর্ক ও শিল্পখাতের কোড। তিন মাসে মাত্র একবার সম্পর্ক পরিবর্তন করা যায়। পোর্টালের সাধারণ সম্পাদনা ফর্মে সম্পর্ক পরিবর্তনের সুবিধা নেই। |
| website, altBusinessIdType, altBusinessId, stockSymbol, stockExchange | প্রযোজ্য ওয়েবসাইট, ব্যবসার বিকল্প পরিচয় এবং পাবলিক কোম্পানির বিবরণ। সত্তাটির বৈধতা যাচাইয়ের জন্য প্রয়োজনীয় মানগুলো অক্ষুণ্ণ রাখুন। |
| referenceId, ipAddress | সমর্থিত ব্যবসায়িক রেফারেন্স এবং উৎস আইপি-সংক্রান্ত মেটাডেটা। এগুলোর কোনোটিই অ্যাকাউন্টের মালিকানা নির্ধারণ করে না বা অনুরোধের আইডেমপোটেন্সি কী হিসেবে কাজ করে না। |
কোডের জন্য বর্তমান মেসেজিং ক্যাটালগগুলো ব্যবহার করুন। হালনাগাদের স্কিমায় ব্র্যান্ডের পরিবেশ পরিবর্তনের উপায় হিসেবে mock ব্যবহারের সুযোগ নেই। সম্পাদনার সময় ওই ফ্ল্যাগ বদলানোর পরিবর্তে স্যান্ডবক্স থেকে প্রোডাকশনে যাওয়ার পৃথক, পর্যালোচিত কর্মপ্রবাহ ব্যবহার করুন।
পর্যালোচিত সংশোধনটি জমা দিন
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 @brand-update.json \
"https://api.multitel.net/tcr/v2/brand/$BRAND_ID"এই নির্দিষ্ট হালনাগাদের জন্য একটি কী ব্যবহার করুন এবং অনুরোধের মূল অংশের বাইটগুলো হুবহু সংরক্ষণ করুন। মেথড, পাথ, কোয়েরি বা মূল অংশ বদলে একই কী আবার ব্যবহার করলে সংঘাত ঘটে; JSON-এর বিন্যাস বদলালেও ফিঙ্গারপ্রিন্ট বদলে যায়। চলমান অনুরোধের অনুলিপির ক্ষেত্রে Retry-After-সহ 409 ফেরত আসতে পারে। সম্পন্ন অনুরোধের সংরক্ষিত ফলাফল পুনরায় ফেরত আসতে পারে, এমনকি সেটি ত্রুটি হলেও। সময়সীমা অতিক্রম করা অনুরোধের ফলাফল মেলানোর সময় স্বয়ংক্রিয়ভাবে নতুন কী তৈরি না করে অনুরোধের বিবরণ সংরক্ষণ করুন।
সংরক্ষিত রেকর্ড ও বৈধতা যাচাইয়ের অবস্থা পরীক্ষা করুন
সফল হালনাগাদে HTTP 200 এবং সরাসরি ব্র্যান্ডের একটি JSON অবজেক্ট ফেরত আসে; পুরোনো v3-এর status/response আবরণ থাকে না। এর brandId পরীক্ষা করুন, তারপর GET দিয়ে একই ব্র্যান্ড আবার পড়ুন এবং কাঙ্ক্ষিত ফিল্ডগুলোর সঙ্গে মিলিয়ে দেখুন। সর্বসাধারণের জন্য উন্মুক্ত হালনাগাদের রুট পোর্টালের changes/version মোড়ক গ্রহণ করে না এবং পোর্টালের মতো আশাবাদী সমসাময়িকতা পরীক্ষা দেয় না। একই সময়ে যারা সম্পাদনা করছেন, তাদের মধ্যে সমন্বয় করুন; আইডেমপোটেন্সি কী একই অনুরোধ একাধিকবার জমা পড়া ঠেকায়, অন্য সম্পাদকের পরিবর্তন ঠেকায় না।
বর্তমান পোর্টাল ব্র্যান্ডের তথ্য পড়ে, লেখার উপযোগী ফিল্ডগুলো অক্ষুণ্ণ রাখে, সংরক্ষণের আগে ফর্মের সংস্করণ পরীক্ষা করে এবং ফলাফল আবার পড়ে। সক্রিয় ক্যাম্পেইন পাওয়া গেলে এটি আইনগত পরিচয়ের মূল ফিল্ডগুলো লক করে দেয়। কোনো ফিল্ড ফর্মে সম্পাদনার জন্য দেওয়া হলেও রেজিস্ট্রি অতিরিক্ত বিধিনিষেধ আরোপ করতে পারে, যার মধ্যে বহিরাগত মূল্যায়নসংক্রান্ত বিধিনিষেধও রয়েছে।
সংশোধিত তথ্য সংরক্ষণ করলে স্বয়ংক্রিয়ভাবে নতুন পরিচয় যাচাইয়ের অনুরোধ করা হয় না এবং অনুমোদনের নিশ্চয়তাও পাওয়া যায় না। পুনরায় যাচাই একটি পৃথক কাজ, যার জন্য ফি লাগতে পারে; বর্তমান অবস্থা পর্যালোচনা করতে পোর্টাল ব্যবহার করুন এবং জানানো কোনো চার্জ থাকলে তা স্পষ্টভাবে নিশ্চিত করুন। বর্তমান API সেবায় ব্র্যান্ডের সাধারণ PUT হালনাগাদের ফলে নিবন্ধনের জন্য আলাদাভাবে অর্থ কাটা হয় না। বিদ্যমান ক্যাম্পেইন, মেসেজিং ও অন্যান্য চার্জ পৃথক থাকে।
একই ব্র্যান্ড আবার নিবন্ধন না করে ত্রুটি সমাধান করুন
HTTP অবস্থা এবং JSON-এ দেওয়া ত্রুটির বিবরণ পড়ুন। 400 হলে নির্দিষ্ট ফিল্ডটি সংশোধন করুন অথবা পরিচয়/সম্পর্কসংক্রান্ত বিধিনিষেধ মেনে চলুন। 401, 403 বা 404 হলে প্রমাণীকরণের তথ্য, অনুমোদিত উৎস আইপি এবং অ্যাকাউন্টের মালিকানা পরীক্ষা করুন। 429 হলে Retry-After নির্দেশনা মেনে চলুন। রেজিস্ট্রি হালনাগাদ গ্রহণ করার পরেও 500 বা 502 হতে পারে; কোনো requestId থাকলে সেটি সংরক্ষণ করুন এবং আবার জমা দেওয়ার আগে বিদ্যমান রেকর্ডটি পড়ুন।
হালনাগাদের প্রতিক্রিয়া খালি না হলেও অসম্পূর্ণ হলে স্থানীয় স্ন্যাপশট অসম্পূর্ণ থেকে যেতে পারে; সফল প্রতিক্রিয়ার মূল অংশ খালি হলে স্ন্যাপশটের পুরোনো ফিল্ডগুলো রয়ে যেতে পারে। শুধু সফলতার অবস্থা দেখে ফিল্ডগুলো অক্ষুণ্ণ আছে বলে ধরে নেবেন না। ব্র্যান্ডের সম্পূর্ণ তথ্য আবার পড়ুন এবং কোনো অমিল থাকলে সহায়তা বিভাগের মাধ্যমে তা মিটিয়ে নিন। রেজিস্ট্রি, স্থানীয় ক্যাশ ও বিলিংয়ের হালনাগাদ একক অবিভাজ্য কার্যক্রম হিসেবে সম্পন্ন হবে বলে এই নির্দেশিকা প্রতিশ্রুতি দেয় না।