REST API ডকুমেন্টেশন

LRN রাউটিং লুকআপ REST API

প্রতি লুকআপে একই নির্ধারিত দরে উত্তর আমেরিকার একটি টেলিফোন নম্বরের রাউটিং নম্বর এবং উপলব্ধ ক্যারিয়ার তথ্য খুঁজুন।

API এবং ক্রেডেনশিয়াল একসঙ্গে বেছে নিন

অনুমোদিত ডেভেলপার ও অটোমেশন, ব্যবসা এবং কমিউনিকেশন প্রোভাইডার অ্যাকাউন্টগুলো সক্রিয় সার্ভিসের সঙ্গে ইন্টিগ্রেট করতে পারে। একজন স্বতন্ত্র ডেভেলপারকে কোম্পানি সাজার প্রয়োজন নেই। অ্যাপ্লিকেশন SMS/MMS-এর জন্য প্রযোজ্য প্রেরণ অনুমোদন ও নিবন্ধন আবশ্যক। ব্যক্তি ও পরিবার সার্ভিসে গ্রাহকদের বার্তা পাঠানো শুরু করার জন্য কোনো API নেই।

API পরিবারবেস URLঅথেনটিকেশন ও ফলাফল
Communications v3https://api.multitel.net/v3অনুমোদিত Basic ক্রেডেনশিয়াল; প্রভিশন করা উপযুক্ত টোকেন কেবল সেসব অপারেশনে যেগুলো তা সমর্থন করে। JSON status এবং response।
জরুরি কলিংয়ের জন্য নিবন্ধনhttps://api.multi.tel/emergencyঅনুমোদিত Basic ক্রেডেনশিয়াল বা বিশেষভাবে প্রভিশন করা bearer অ্যাক্সেস। JSON code, message এবং data।
পোর্টাল REST ইন্টিগ্রেশনআপনার অ্যাকাউন্টের ডেভেলপার রেফারেন্সে দেখানো হোস্ট ও অপারেশনসংশ্লিষ্ট অপারেশনের ডকুমেন্টেড ক্রেডেনশিয়াল, স্কোপ ও স্কিমা ব্যবহার করুন। ব্রাউজার সেশন অনুরোধের ইন্টারফেস আলাদা।

উদাহরণগুলো ব্যবহারের আগে আপনার সার্ভারের সিক্রেট কনফিগারেশনের মাধ্যমে MULTITEL_API_USERNAME এবং MULTITEL_API_PASSWORD সেট করুন। এগুলো কখনো পাবলিক ব্রাউজার JavaScript, URL বা সোর্স কন্ট্রোলে রাখবেন না। নির্দিষ্ট ক্রেডেনশিয়ালগুলো API ইন্টিগ্রেশন সেটিংসে পরিচালনা করা হয়।

একটি নম্বর লুকআপ করুন

GET /v3/lrn/{number} পাথের মধ্যে গন্তব্য নম্বর গ্রহণ করে। কলকারী নম্বরের ওপর নির্ভরশীল তথ্যের জন্য ঐচ্ছিকভাবে সেই নম্বর /v3/lrn/{number}/{ani} হিসেবে দেওয়া যায়। উত্তর আমেরিকার ফোন নম্বর শুধু অঙ্ক দিয়ে লিখুন এবং প্রযোজ্য ক্ষেত্রে দেশের কোড যুক্ত করুন; উদাহরণগুলোতে সংরক্ষিত কাল্পনিক নম্বর ব্যবহার করা হয়েছে।

curl --fail-with-body \
  --user "$MULTITEL_API_USERNAME:$MULTITEL_API_PASSWORD" \
  --header "Accept: application/json" \
  "https://api.multitel.net/v3/lrn/12025550123"
curl --fail-with-body \
  --user "$MULTITEL_API_USERNAME:$MULTITEL_API_PASSWORD" \
  --header "Accept: application/json" \
  "https://api.multitel.net/v3/lrn/12025550123/12025550124"

বৈধ ক্রেডেনশিয়াল দিয়ে লুকআপ চালালে তা বিলযোগ্য। রেট প্রতি লুকআপ ০.০০০২৫ US$: প্রতি ১,০০০-এ ০.২৫ US$ অথবা প্রতি মিলিয়নে ২৫০ US$। কোনো ভলিউম ডিসকাউন্ট নেই। এটি রাউটিং-তথ্যের লুকআপ; এটি কোনো টেলিফোন কল করে না।

ফলাফল পড়ুন

{
  "status": {
    "code": 200,
    "msg": "Success"
  },
  "response": {
    "lrn": "12025550123",
    "ported": 0,
    "ocn": "",
    "lata": "",
    "rc": "",
    "cost": "$0.00025"
  }
}

এই বানানো উদাহরণ শুধু রেসপন্সের কাঠামো দেখায়; এটি কোনো পরিমাপ করা রাউটিং ফলাফল নয়। response ব্যবহারের আগে status.code পরীক্ষা করুন। cost ফিল্ডটি মুদ্রা-প্রিফিক্সযুক্ত একটি স্ট্রিং, JSON সংখ্যা নয়।

ফিল্ডঅর্থ
lrnরাউটিং গন্তব্য শনাক্ত করতে ব্যবহৃত Location Routing Number।
portedএই লুকআপ থেকে পাওয়া নম্বর পোর্ট হওয়ার নির্দেশক: সাধারণত 0 বা 1। এটিকে মালিকানা বা সার্ভিসের যোগ্যতার প্রমাণ হিসেবে ব্যবহার করবেন না।
ocnOperating Company Number, প্রদান করা হলে।
lataLocal Access and Transport Area, প্রদান করা হলে।
rcরেট সেন্টার, প্রদান করা হলে।
city, state, lec, lectype, jurisdiction, localঅতিরিক্ত অবস্থান, ক্যারিয়ার বা উৎস-সংক্রান্ত বিবরণ, থাকলে। এগুলো অনুপস্থিত বা ফাঁকা থাকতে পারে।

প্রতিটি রাউটিং ফিল্ড উপস্থিত থাকা বাধ্যতামূলক করবেন না। বিশেষ করে, টোল-ফ্রি ফলাফলে স্থানীয় রেট-সেন্টার ও ক্যারিয়ার-কোডের বিবরণ বাদ থাকতে পারে। ফেরত আসা LRN রিয়েল-টাইমে পৌঁছানোর নিশ্চয়তা নয় এবং কলের মান পরীক্ষাও নয়।

আপনার রাউটিং ওয়ার্কফ্লোতে লুকআপ ব্যবহার করুন

  1. অনুরোধ পাঠানোর আগে নম্বরটি যাচাই করুন এবং নির্ধারিত মানসম্মত বিন্যাসে আনুন।
  2. HTTP ও অ্যাপ্লিকেশন স্ট্যাটাস পরীক্ষা করুন। সমস্যা সমাধানের জন্য নম্বর, সময় ও ফলাফলের একটি গোপনীয় তথ্য মুছে ফেলা রেকর্ড রাখুন।
  3. আপনার রাউটিং নিয়মের জন্য প্রাসঙ্গিক ফিল্ডগুলোই শুধু ব্যবহার করুন এবং অনুপস্থিত মান স্পষ্টভাবে সামলান।
  4. অনিশ্চিত রেসপন্সের পর পুনঃচেষ্টা সীমিত রাখুন। লুকআপ পুনরায় চালালে আরেকটি চার্জ হতে পারে; এই এন্ডপয়েন্টের জন্য কোনো ডকুমেন্টেড idempotency কী নেই।

LRN পণ্য ও নির্দিষ্ট মূল্য দেখুন। পাবলিক OpenAPI পাথে একটি ANI সেগমেন্ট রয়েছে; ডিপ্লয় করা LRN বাস্তবায়ন ANI ছাড়া ছোট অনুরোধও গ্রহণ করে। lrninfo একটি আলাদা অপারেশন এবং এই এন্ডপয়েন্টের পরিবর্তে এটি ব্যবহার করা উচিত নয়।

ত্রুটি ও পুনঃচেষ্টা সামলানো

অথেনটিকেশন বা অনুমতি সংক্রান্ত ব্যর্থতা
API ক্রেডেনশিয়ালটি সক্রিয় আছে কি না, অনুমোদিত সার্ভিস কোনটি এবং সোর্স-আইপি সীমাবদ্ধতা কী, তা পরীক্ষা করুন। পোর্টাল সেশন কুকি কোনো ইন্টিগ্রেশন ক্রেডেনশিয়াল নয়।
অপর্যাপ্ত ক্রেডিট বা অপূর্ণ অনুমোদন
অপারেশনটি পুনরায় চালানোর আগে অ্যাকাউন্ট ব্যালেন্স, প্রেরণ অনুমোদন বা ডকুমেন্ট সংক্রান্ত শর্ত পূরণ করুন।
কোনো ফলাফল নেই
খালি ইনভেন্টরি বা অনুপস্থিত কলারের নামকে একটি স্বাভাবিক ফলাফল হিসেবে সামলান। ধরে নেবেন না যে বাক্যগঠনগতভাবে বৈধ কোনো নম্বরে সব সার্ভিস রয়েছে।
নেটওয়ার্ক টাইমআউট বা সার্ভিস ব্যর্থতা
রিড অপারেশনের জন্য ব্যাকঅফসহ সীমিত সংখ্যক পুনঃচেষ্টা করুন। ক্রয়, প্রেরণ বা নিবন্ধনের ক্ষেত্রে আগে অপারেশনের অবস্থা পরীক্ষা করুন; গৃহীত অনুরোধ পুনরায় পাঠালে একই বিলযোগ্য কাজ দুইবার হয়ে যেতে পারে।

Idempotency সমর্থন প্রতিটি API পরিবারের নিজস্ব বিষয়। Emergency API রিট্রাই কী সমর্থন করে; এর অর্থ এই নয় যে যেকোনো v3 অনুরোধ idempotent। সাপোর্টের জন্য টাইমস্ট্যাম্প, ফেরত পাওয়া ID এবং গোপনীয় তথ্য মুছে ফেলা রেসপন্স সংরক্ষণ করুন।

আপনার অ্যাকাউন্টের রেফারেন্স চালিয়ে যান

সাইন‑ইন করা রেফারেন্স আপনার অনুমতি এবং সক্রিয় সার্ভিস অনুযায়ী অপারেশন ফিল্টার করে। এর সঠিক হোস্ট, ক্রেডেনশিয়াল টাইপ, রিকোয়েস্ট ফিল্ড এবং রেসপন্স স্কিমা ব্যবহার করুন। কনসোলগুলি লাইভ অপারেশন সম্পাদন করতে পারে, যার মধ্যে ক্রয় এবং মেসেজ অন্তর্ভুক্ত।