আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন দেখুন। তথ্য
নিচের বিভাগগুলি আপনাকে API প্রোডাক্ট এবং সম্পর্কিত মূল ধারণা সম্পর্কে জানাবে।
API প্রোডাক্ট কী?
API প্রদানকারী হিসেবে, আপনি API-এর বান্ডেল তৈরি করতে এবং সেগুলি অ্যাপ ডেভেলপারদের ব্যবহারের জন্য উপলভ্য করতে API প্রোডাক্ট তৈরি করেন। API প্রোডাক্টকে আপনার প্রোডাক্ট লাইন হিসেবে বিবেচনা করতে পারেন।
বিশেষত, API প্রোডাক্ট নিম্নলিখিত বিষয়গুলিকে একসাথে বান্ডেল করে:
- API রিসোর্সের (URI) সংগ্রহ
- পরিষেবা প্ল্যান
- পর্যবেক্ষণ বা অ্যানালিটিক্সের জন্য আপনার ব্যবসার নির্দিষ্ট মেটাডেটা (ঐচ্ছিক)
API প্রোডাক্টে বান্ডেল করা API রিসোর্স এক বা একাধিক API থেকে আসতে পারে, তাই আপনি বিশেষ ফিচার সেট তৈরি করতে রিসোর্সগুলিকে মিশিয়ে নিতে পারেন, যেমনটি নিচের ছবিতে দেখানো হয়েছে।
নির্দিষ্ট প্রয়োজন মেটানোর জন্য আপনি একাধিক API প্রোডাক্ট তৈরি করতে পারেন। যেমন, আপনি এমন একটি API প্রোডাক্ট তৈরি করতে পারেন যা ডেভেলপারদের তাদের অ্যাপ্লিকেশনে সহজেই ম্যাপ ইন্টিগ্রেট করতে সক্ষম করতে ম্যাপিং রিসোর্সের একটি বান্ডেল তৈরি করে। এছাড়াও, আপনি প্রতিটি API প্রোডাক্টে আলাদা আলাদা প্রপার্টি সেট করতে পারেন, যেমন আলাদা আলাদা দামের লেভেল। যেমন, আপনি হয়ত নিম্নলিখিত API প্রোডাক্টের কম্বিনেশন অফার করতে পারেন:
- খুব কম দামে কোনও API প্রোডাক্টের অ্যাক্সেস সীমিত করা হয়েছে, যেমন, দিনে ১০০০ বার অনুরোধ করা যাবে। দ্বিতীয় API প্রোডাক্ট একই রিসোর্সে অ্যাক্সেস দেয়, তবে অ্যাক্সেস সীমা ও দাম বেশি।
- রিসোর্সে শুধু পড়ার অ্যাক্সেস সহ একটি ফ্রি API প্রোডাক্ট। একটি দ্বিতীয় API প্রোডাক্ট যা সামান্য চার্জের বিনিময়ে একই রিসোর্সে রিড/রাইট অ্যাক্সেস প্রদান করে।
এছাড়াও, আপনি API প্রোডাক্টে API রিসোর্সে অ্যাক্সেস কন্ট্রোল করতে পারবেন। যেমন, আপনি এমন রিসোর্স বান্ডেল করতে পারেন যা শুধুমাত্র ইন্টার্নাল ডেভেলপার বা পেমেন্টকারী গ্রাহকরা অ্যাক্সেস করতে পারবেন।
API প্রোডাক্ট হল আপনার API-তে অনুমোদন ও অ্যাক্সেস কন্ট্রোল করার মূল পদ্ধতি। Apigee-তে, API কী API-এর জন্য নয়, API প্রোডাক্টের জন্য প্রদান করা হয়। অন্যভাবে বলতে গেলে, API কীগুলি অ্যাটাচ করা পরিষেবা প্ল্যান সহ রিসোর্সের বান্ডেলের জন্য প্রদান করা হয়।
অ্যাপ ডেভেলপাররা তাদের অ্যাপ রেজিস্টার করার মাধ্যমে আপনার API প্রোডাক্ট অ্যাক্সেস করেন, যেমন অ্যাপ রেজিস্টার করা নিবন্ধে বর্ণনা করা হয়েছে। কোনও অ্যাপ এপিআই প্রোডাক্ট অ্যাক্সেস করার চেষ্টা করলে, রানটাইমে Apigee-এর মাধ্যমে অনুমোদন প্রয়োগ করা হয় যাতে এগুলি নিশ্চিত করা যায়:
- অনুরোধকারী অ্যাপকে নির্দিষ্ট API রিসোর্স অ্যাক্সেস করার অনুমতি দেওয়া হয়েছে।
- অনুরোধকারী অ্যাপ অনুমোদিত কোটার সীমা অতিক্রম করেনি।
- সংজ্ঞায়িত করা হলে, API প্রোডাক্টে সংজ্ঞায়িত OAuth স্কোপ অ্যাপের দেওয়া অ্যাক্সেস টোকেনের সাথে যুক্ত স্কোপের সাথে ম্যাচ করে।
মূল ধারণাগুলি বোঝা
আপনার API প্রোডাক্ট তৈরি করার আগে নিম্নলিখিত মূল ধারণাগুলি পর্যালোচনা করুন।
API কী
আপনার প্রতিষ্ঠানে কোনও ডেভেলপারের অ্যাপ রেজিস্টার করলে, অ্যাপটিকে অবশ্যই অন্তত একটি API প্রোডাক্টের সাথে যুক্ত থাকতে হবে। এক বা একাধিক API প্রোডাক্টের সাথে অ্যাপ পেয়ার করার ফলে, Edge অ্যাপটিকে একটি অনন্য কনজিউমার কী অ্যাসাইন করে।
কনজিউমার কী বা অ্যাক্সেস টোকেন অনুরোধের ক্রেডেনশিয়াল হিসেবে কাজ করে। অ্যাপ ডেভেলপার অ্যাপে কনজিউমার কী এম্বেড করেন, যাতে Edge-এর হোস্ট করা API-তে অ্যাপ কোনও অনুরোধ করলে অ্যাপটি নিম্নলিখিত কোনও একটি উপায়ে অনুরোধে কনজিউমার কী পাস করে:
- API, API key যাচাইকরণ ব্যবহার করলে, অ্যাপকে অবশ্যই সরাসরি কনজিউমার কী পাস করতে হবে।
- API, OAuth টোকেন যাচাইকরণ ব্যবহার করলে, অ্যাপকে অবশ্যই এমন একটি টোকেন পাস করতে হবে যা কনজিউমার কী থেকে পাওয়া গেছে।
API কী এনফোর্সমেন্ট অটোমেটিক হয় না। অনুরোধের ক্রেডেনশিয়াল হিসেবে কনজিউমার কী বা OAuth টোকেন ব্যবহার করা হোক না কেন, API প্রক্সি আপনার API প্রক্সিতে VerifyAPIKey নীতি বা OAuth/VerifyAccessToken নীতি যোগ করে, উপযুক্ত ফ্লোতে অনুরোধের ক্রেডেনশিয়াল যাচাই করে। আপনার API প্রক্সিতে ক্রেডেনশিয়াল এনফোর্সমেন্ট নীতি অন্তর্ভুক্ত না করলে, যেকোনও কলার আপনার API ইনভোক করতে পারবেন। আরও তথ্যের জন্য, API কী যাচাইকরণ সংক্রান্ত নীতি দেখুন।
অনুরোধে পাস করা ক্রেডেনশিয়াল যাচাই করতে, Edge নিম্নলিখিত ধাপগুলি অনুসরণ করে:
- অনুরোধের সাথে পাস করা ক্রেডেনশিয়াল পান। OAuth টোকেন যাচাইকরণের ক্ষেত্রে, Edge যাচাই করে যে টোকেনের মেয়াদ শেষ হয়ে যায়নি এবং তারপরে টোকেন জেনারেট করতে ব্যবহৃত কনজিউমার কী খুঁজে দেখে।
- কনজিউমার কী যুক্ত আছে এমন API প্রোডাক্টের তালিকা পান।
- কনফার্ম করুন যে বর্তমান API প্রক্সি API প্রোডাক্টে অন্তর্ভুক্ত আছে এবং বর্তমান রিসোর্স পাথ (URL পাথ) API প্রোডাক্টে চালু আছে।
- কনজিউমার কীয়ের মেয়াদ শেষ হয়ে গেছে বা সেটি প্রত্যাহার করা হয়েছে কিনা তা যাচাই করুন, অ্যাপ প্রত্যাহার করা হয়েছে কিনা তা চেক করুন এবং অ্যাপ ডেভেলপার অ্যাক্টিভ আছেন কিনা তা চেক করুন।
উপরের সবকটি চেক পাস করলে, ক্রেডেনশিয়াল যাচাইকরণ সফল হয়।
মোটকথা, Edge অটোমেটিক কনজিউমার কী তৈরি করে, কিন্তু API প্রকাশকদের উপযুক্ত নীতি ব্যবহার করে API প্রক্সিতে কী চেক করার প্রক্রিয়া প্রয়োগ করতে হয়।
অনুমোদনের অটোমেটিক বনাম ম্যানুয়াল প্রক্রিয়া
ডিফল্ট হিসেবে, কোনও অ্যাপ থেকে API প্রোডাক্ট অ্যাক্সেস করার জন্য কী পাওয়ার সব অনুরোধ অটোমেটিক অনুমোদন করা হয়। বিকল্প হিসেবে, আপনি ম্যানুয়ালি কী অনুমোদন করার জন্য API প্রোডাক্ট কনফিগার করতে পারেন। এই ক্ষেত্রে, API প্রোডাক্ট যোগ করে এমন যেকোনও অ্যাপ থেকে আসা কী সংক্রান্ত অনুরোধ আপনাকে অনুমোদন করতে হবে। আরও তথ্যের জন্য, অ্যাপ রেজিস্টার করা ও API কী ম্যানেজ করা দেখুন।
কোটা
কোটা বেশি ট্রাফিকের জন্য আপনার ব্যাকএন্ড সার্ভারকে সুরক্ষিত রাখতে এবং আপনার প্রোডাক্ট লাইনকে আলাদা করতে পারে। যেমন, আপনি প্রিমিয়াম প্রোডাক্ট হিসেবে বেশি কোটা সহ রিসোর্স বান্ডেল করতে এবং একই বান্ডেল কম কোটা সহ বেসিক প্রোডাক্ট হিসেবে ব্যবহার করতে পারেন। কোনও প্রোডাক্ট জনপ্রিয় হলে এবং প্রচুর অনুরোধ পেলে, কোটা আপনার সার্ভারকে অতিরিক্ত লোড থেকে রক্ষা করতে সাহায্য করতে পারে।
কোটা কনফিগার করা সংক্রান্ত তথ্যের জন্য, কোটা নীতি দেখুন। কোটা নীতিতে প্রোডাক্ট কোটা সেটিংস ব্যবহার করা সম্পর্কে তথ্য পেতে, নিম্নলিখিত কমিউনিটি নিবন্ধটি দেখুন API প্রোডাক্টের কোটা সেটিংস কীভাবে API প্রক্সির কোটা নীতির সাথে ইন্টার্যাক্ট করে?।
OAuth স্কোপ
অতিরিক্ত সুরক্ষা হিসেবে, আপনি কমা-সেপারেটেড তালিকা হিসেবে, যেকোনও OAuth স্কোপকে সংজ্ঞায়িত করতে পারেন যা প্রোডাক্টের মাধ্যমে পাঠানো অ্যাক্সেস টোকেনে অবশ্যই থাকতে হবে। আপনি কোনও প্রোডাক্ট তৈরি করার সময়, আপনার প্রতিষ্ঠান যেসব স্কোপ ব্যবহার করে সেই সম্পর্কে আপনাকে সচেতন থাকতে হবে। কোনও প্রোডাক্টে যোগ করা স্কোপ আগে থেকে থাকা স্কোপের সাথে মিলতে হবে, তা না হলে প্রোডাক্টটি সুরক্ষিত নয়।
Edge OAuth নীতির সাথে স্কোপ ব্যবহার করা সম্পর্কে আরও তথ্যের জন্য, OAuth2 স্কোপের সাথে কাজ করা দেখুন।
অ্যাক্সেস লেভেল
API প্রোডাক্ট নির্ধারণ করার সময়, আপনি নিম্নলিখিত অ্যাক্সেস লেভেল সেট করতে পারবেন।
| অ্যাক্সেস স্তর | বিবরণ |
|---|---|
| সর্বজনীন | সব ডেভেলপারদের জন্য উপলভ্য API প্রোডাক্ট। আপনি ইন্টিগ্রেটেড বা Drupal-ভিত্তিক ডেভেলপার পোর্টালে সেগুলি যোগ করতে পারবেন। |
| শুধুমাত্র ব্যক্তিগত বা ইন্টার্নাল | ব্যক্তিগত বা ইন্টার্নাল ব্যবহারের জন্য ডিজাইন করা API প্রোডাক্ট। মনে রাখবেন: 'শুধুমাত্র ইন্টার্নাল' ও 'প্রাইভেট' অ্যাক্সেস লেভেলের মধ্যে কোনও কার্যকরী পার্থক্য নেই। API প্রোডাক্টের লক্ষ্য পূরণের উদ্দেশ্যে তৈরি করা দর্শকের জন্য সবচেয়ে উপযুক্ত লেবেল বেছে নিন। ইন্টিগ্রেটেড পোর্টালের জন্য, আপনি শুধুমাত্র ব্যক্তিগত বা ইন্টার্নাল API প্রোডাক্ট যোগ করতে এবং প্রয়োজন অনুযায়ী অ্যাপ ডেভেলপারদের জন্য সেগুলি উপলভ্য করতে পারবেন। Drupal-ভিত্তিক ডেভেলপার পোর্টালের জন্য, আপনি নিজের ডেভেলপার পোর্টালের শুধুমাত্র ব্যক্তিগত বা ইন্টার্নাল API প্রোডাক্টের অ্যাক্সেস ম্যানেজ করতে পারবেন, যেমনটি নিম্নলিখিত বিভাগে বর্ণনা করা হয়েছে:
|