আপনি Apigee Edge-এর ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন .info- তে যান।
এই বিভাগে বর্ণনা করা হয়েছে কীভাবে API ব্যবহার করে একটি প্রকাশিত রেট প্ল্যান কেনা যায় এবং প্রয়োজন অনুযায়ী কেনা রেট প্ল্যানটির মেয়াদ শেষ করা বা বাতিল করা যায়।
এপিআই ব্যবহার করে একটি প্রকাশিত রেট প্ল্যান ক্রয় করা
একটি রেট প্ল্যান প্রকাশিত হওয়ার পর, একজন ডেভেলপার বা কোম্পানি /mint/organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans একটি POST রিকোয়েস্ট পাঠিয়ে সেটি ক্রয় (বা "গ্রহণ") করতে পারে, যেখানে {org_name} হলো প্রতিষ্ঠানের নাম এবং {developer_or_company_id} হলো ডেভেলপার বা কোম্পানির আইডি।
রেট প্ল্যান কেনার সময় সেটআপ ফি মওকুফ করতে, waivefees কোয়েরি প্যারামিটারটি true তে সেট করুন। এই ফ্ল্যাগটি তখন কাজে লাগে যখন আপনি ডেভেলপারদের মনিটাইজেশনে মাইগ্রেট করছেন, যেমনটি "ডেভেলপারদের মনিটাইজেশনে মাইগ্রেট করা" অংশে বর্ণনা করা হয়েছে।
নিম্নলিখিত সারণিতে অনুরোধের মূল অংশে আপনি উল্লেখ করতে পারেন এমন কনফিগারেশন বৈশিষ্ট্য, সেগুলোর ডিফল্ট মান এবং সেগুলো আবশ্যক কিনা, তার একটি সংক্ষিপ্ত বিবরণ দেওয়া হয়েছে।
| নাম | বর্ণনা | ডিফল্ট | প্রয়োজন? |
|---|---|---|---|
startDate | যে তারিখে রেট প্ল্যানটি শুরু হয়। উদাহরণস্বরূপ: ২০১৭-০৩-২৪ । | প্রযোজ্য নয় | হ্যাঁ |
endDate | যে তারিখে রেট প্ল্যানটি শেষ হবে। উদাহরণস্বরূপ: ২০১৭-০৯-২৪ । রেট প্ল্যানটি নির্দিষ্ট তারিখের দিন শেষ হওয়া পর্যন্ত কার্যকর থাকবে। উদাহরণস্বরূপ, আপনি যদি ১ ডিসেম্বর, ২০১৭ তারিখে একটি রেট প্ল্যানের মেয়াদ শেষ করতে চান, তাহলে আপনাকে endDate-এর মান 2017-11-30 সেট করতে হবে। এই ক্ষেত্রে, রেট প্ল্যানটির মেয়াদ ৩০ নভেম্বর, ২০১৭ তারিখের দিন শেষে শেষ হয়ে যাবে; ১ ডিসেম্বর, ২০১৭-এর সমস্ত অনুরোধ ব্লক করা হবে। | প্রযোজ্য নয় | না |
developer | | প্রযোজ্য নয় | হ্যাঁ |
quotaTarget | অ্যাপ ডেভেলপারের জন্য অনুমোদিত লেনদেনের একটি নির্দিষ্ট লক্ষ্যমাত্রা থাকে। লক্ষ্যমাত্রার কত শতাংশ (যেমন ৯০%, ১০০% বা ১৫০%) অর্জিত হয়েছে, তার উপর ভিত্তি করে নোটিফিকেশন পাঠানো হবে কি না এবং কখন পাঠানো হবে, তা আপনি কনফিগার করতে পারেন। লক্ষ্যমাত্রা অর্জিত হওয়ার পর অতিরিক্ত লেনদেন ব্লক করা হয় না। অ্যাপ ডেভেলপারের জন্য নোটিফিকেশন নিষ্ক্রিয় করতে এই মানটি একটি ধনাত্মক পূর্ণসংখ্যা বা 0-তে সেট করুন। | 0 | না |
ratePlan | রেট প্ল্যান আইডি প্রদর্শিত নাম থেকে ভিন্ন। আইডি সহ রেট প্ল্যানের বিস্তারিত তথ্য দেখতে, ‘Exploring the rate plans’ পৃষ্ঠাটি দেখুন। | প্রযোজ্য নয় | হ্যাঁ |
suppressWarning | ডেভেলপার যদি এমন একটি রেট প্ল্যান কেনার চেষ্টা করেন যা অন্য একটি কেনা রেট প্ল্যানের সাথে ওভারল্যাপ করে, তবে ত্রুটিটি দমন করা হবে কিনা তা নির্দিষ্ট করার জন্য একটি ফ্ল্যাগ। এর মান নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:
| প্রযোজ্য নয় | না |
waveTerminationCharge | নতুন রেট প্ল্যান সক্রিয় করার অংশ হিসেবে কোনো সক্রিয় রেট প্ল্যান বাতিল করা হলে, বাতিলকরণ ফি মওকুফ করা হবে কিনা তা নির্দিষ্ট করার জন্য একটি ফ্ল্যাগ। এর মান নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:
| প্রযোজ্য নয় | না |
উদাহরণস্বরূপ, নিম্নলিখিত অনুরোধটি নির্দিষ্ট ডেভেলপারের জন্য location_&_messaging রেট প্ল্যানটি ক্রয় করে:
curl "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/5cTWgdUvdr6JW3xU/developer-rateplans" \
-X POST \
-H "Content-Type:application/json" \
-u email:password \
-d '{
"developer":{
"id":"5cTWgdUvdr6JW3xU"
},
"startDate":"2017-08-30",
"ratePlan":{
"id":"location_&_messaging"
},
"suppressWarning":false
}'
এই উদাহরণে, suppressWarning প্রপার্টিটি false এ সেট করা আছে। এক্ষেত্রে, কোনো দ্বন্দ্বের (conflict) ক্ষেত্রে একটি এরর (error) দেখানো হবে। উদাহরণস্বরূপ, যদি ডেভেলপার এমন একটি রেট প্ল্যান কেনার চেষ্টা করেন যা অন্য একটি কেনা রেট প্ল্যানের সাথে ওভারল্যাপ করে, তাহলে একটি এরর দেখানো হয়। এটি মনিটাইজেশনের জন্য ইউজার ইন্টারফেস প্রদানকারী একটি অ্যাপ্লিকেশনকে এররটি ইন্টারসেপ্ট করতে এবং ডেভেলপারকে নিশ্চিতকরণের জন্য (প্রয়োজন অনুযায়ী) দ্বন্দ্বপূর্ণ প্রোডাক্টগুলো প্রদর্শন করতে সক্ষম করে। যদি suppressWarning true তে সেট করা হয়, তাহলে মনিটাইজেশন ডেভেলপারের কেনা সেই সমস্ত রেট প্ল্যান বাতিল করে দেয় যেগুলোতে দ্বন্দ্বপূর্ণ প্রোডাক্ট থাকা এপিআই প্যাকেজগুলো রয়েছে। এরপর এটি ডেভেলপারের জন্য একটি নতুন এপিআই প্যাকেজ কিনে নেয়।
নিম্নলিখিত অনুরোধটি একটি পরিবর্তনযোগ্য নোটিফিকেশন রেট প্ল্যান ক্রয় করে এবং লেনদেনের লক্ষ্যমাত্রা ৪০০০-এ নির্ধারণ করে।
curl "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/5cTWgdUvdr6JW3xU/developer-rateplans" \
-X POST \
-H "Content-Type:application/json" \
-u email:password \
-d '{
"developer":{
"id":"5cTWgdUvdr6JW3xU"
},
"ratePlan":{
"id":"adjustable-notification-plan"
},
"startDate": "2017-03-24",
"quotaTarget": 4000,
"suppressWarning":false
}'
উপরের উদাহরণ দুটির যেকোনো একটিতে, যদি নিম্নলিখিত ত্রুটি বার্তাটি ফেরত আসে:
Developer legal name not specified.
এরপর আপনাকে অবশ্যই MINT_DEVELOPER_ADDRESS এবং MINT_DEVELOPER_LEGAL_NAME এই মনিটাইজেশন অ্যাট্রিবিউটগুলো সেট করতে হবে এবং তারপর এপিআই কলটি পুনরায় করতে হবে।
এপিআই ব্যবহার করে কোনো ডেভেলপারের কেনা রেট প্ল্যানের মেয়াদ শেষ হয়ে যাওয়া
কোনো ডেভেলপারের কেনা রেট প্ল্যানের মেয়াদ শেষ করতে (বা বাতিল করতে), কেনা রেট প্ল্যানের বিবরণ আপডেট করুন এবং /organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans/{developer_rateplan_id} রিসোর্সে একটি PUT অনুরোধের রিকোয়েস্ট বডিতে endDate প্রপার্টিটি উল্লেখ করুন।
রেট প্ল্যানটি নির্দিষ্ট শেষ তারিখের দিন শেষ হওয়া পর্যন্ত কার্যকর থাকবে। উদাহরণস্বরূপ, আপনি যদি ১ ডিসেম্বর, ২০১৭ তারিখে একটি রেট প্ল্যানের মেয়াদ শেষ করতে চান, তাহলে আপনাকে endDate-এর মান 2017-11-30 সেট করতে হবে। এই ক্ষেত্রে, রেট প্ল্যানটির মেয়াদ ৩০ নভেম্বর, ২০১৭ তারিখের দিন শেষে শেষ হয়ে যাবে; ১ ডিসেম্বর, ২০১৭ তারিখের সমস্ত অনুরোধ ব্লক করা হবে।
আপনি প্রকাশিত রেট প্ল্যানটি ক্রয় করলে রেসপন্সে {developer_rateplan_id} ফেরত আসে।
উদাহরণস্বরূপ:
{
"created": "2017-03-31 18:59:54",
"developer": {
...
},
"id": "b1c600b8-f871-496d-8173-12b9950d6ab1",
"quotaTarget": 3000,
"ratePlan": {
...
},
"startDate": "2017-03-31 00:00:00",
"updated": "2017-03-31 18:59:54",
"waiveTerminationCharge": false
}
বিকল্পভাবে, আপনি /organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans একটি GET অনুরোধ পাঠিয়ে ডেভেলপার রেট প্ল্যানের জন্য {developer-rateplan-id} পেতে পারেন, যেখানে {developer_id} হলো ডেভেলপারের ইমেল ঠিকানা। আরও তথ্যের জন্য, একজন ডেভেলপারের কেনা সমস্ত রেট প্ল্যান দেখা দেখুন।
নিম্নলিখিত অনুরোধটি শেষ তারিখ আপডেট করে ১ ডিসেম্বর, ২০১৭ করছে। অর্থাৎ, রেট প্ল্যানটির মেয়াদ ৩০ নভেম্বর, ২০১৭ তারিখ দিনের শেষে শেষ হয়ে যাবে; ১ ডিসেম্বর, ২০১৭-এর সমস্ত অনুরোধ ব্লক করা হবে।
curl "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/developer-rateplans/b1c600b8-f871-496d-8173-12b9950d6ab1"
-X PUT \
-H "Content-Type:application/json" \
-u email:password \
-d '{
"id" : "b1c600b8-f871-496d-8173-12b9950d6ab1",
"developer":{
"id":"dev@mycompany.com"
},
"ratePlan":{
"id":"p1_adjustable-notification-plan"
},
"startDate": "2017-04-15 00:00:00",
"endDate": "2017-11-30",
"quotaTarget": 3000,
"suppressWarning":false
}'
আপনি Apigee Edge-এর ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন .info- তে যান।
এই বিভাগে বর্ণনা করা হয়েছে কীভাবে API ব্যবহার করে একটি প্রকাশিত রেট প্ল্যান কেনা যায় এবং প্রয়োজন অনুযায়ী কেনা রেট প্ল্যানটির মেয়াদ শেষ করা বা বাতিল করা যায়।
এপিআই ব্যবহার করে একটি প্রকাশিত রেট প্ল্যান ক্রয় করা
একটি রেট প্ল্যান প্রকাশিত হওয়ার পর, একজন ডেভেলপার বা কোম্পানি /mint/organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans একটি POST রিকোয়েস্ট পাঠিয়ে সেটি ক্রয় (বা "গ্রহণ") করতে পারে, যেখানে {org_name} হলো প্রতিষ্ঠানের নাম এবং {developer_or_company_id} হলো ডেভেলপার বা কোম্পানির আইডি।
রেট প্ল্যান কেনার সময় সেটআপ ফি মওকুফ করতে, waivefees কোয়েরি প্যারামিটারটি true তে সেট করুন। এই ফ্ল্যাগটি তখন কাজে লাগে যখন আপনি ডেভেলপারদের মনিটাইজেশনে মাইগ্রেট করছেন, যেমনটি "ডেভেলপারদের মনিটাইজেশনে মাইগ্রেট করা" অংশে বর্ণনা করা হয়েছে।
নিম্নলিখিত সারণিতে অনুরোধের মূল অংশে আপনি উল্লেখ করতে পারেন এমন কনফিগারেশন বৈশিষ্ট্য, সেগুলোর ডিফল্ট মান এবং সেগুলো আবশ্যক কিনা, তার একটি সংক্ষিপ্ত বিবরণ দেওয়া হয়েছে।
| নাম | বর্ণনা | ডিফল্ট | প্রয়োজন? |
|---|---|---|---|
startDate | যে তারিখে রেট প্ল্যানটি শুরু হয়। উদাহরণস্বরূপ: ২০১৭-০৩-২৪ । | প্রযোজ্য নয় | হ্যাঁ |
endDate | যে তারিখে রেট প্ল্যানটি শেষ হবে। উদাহরণস্বরূপ: ২০১৭-০৯-২৪ । রেট প্ল্যানটি নির্দিষ্ট তারিখের দিন শেষ হওয়া পর্যন্ত কার্যকর থাকবে। উদাহরণস্বরূপ, আপনি যদি ১ ডিসেম্বর, ২০১৭ তারিখে একটি রেট প্ল্যানের মেয়াদ শেষ করতে চান, তাহলে আপনাকে endDate-এর মান 2017-11-30 সেট করতে হবে। এই ক্ষেত্রে, রেট প্ল্যানটির মেয়াদ ৩০ নভেম্বর, ২০১৭ তারিখের দিন শেষে শেষ হয়ে যাবে; ১ ডিসেম্বর, ২০১৭-এর সমস্ত অনুরোধ ব্লক করা হবে। | প্রযোজ্য নয় | না |
developer | | প্রযোজ্য নয় | হ্যাঁ |
quotaTarget | অ্যাপ ডেভেলপারের জন্য অনুমোদিত লেনদেনের একটি নির্দিষ্ট লক্ষ্যমাত্রা থাকে। লক্ষ্যমাত্রার কত শতাংশ (যেমন ৯০%, ১০০% বা ১৫০%) অর্জিত হয়েছে, তার উপর ভিত্তি করে নোটিফিকেশন পাঠানো হবে কি না এবং কখন পাঠানো হবে, তা আপনি কনফিগার করতে পারেন। লক্ষ্যমাত্রা অর্জিত হওয়ার পর অতিরিক্ত লেনদেন ব্লক করা হয় না। অ্যাপ ডেভেলপারের জন্য নোটিফিকেশন নিষ্ক্রিয় করতে এই মানটি একটি ধনাত্মক পূর্ণসংখ্যা বা 0-তে সেট করুন। | 0 | না |
ratePlan | রেট প্ল্যান আইডি প্রদর্শিত নাম থেকে ভিন্ন। আইডি সহ রেট প্ল্যানের বিস্তারিত তথ্য দেখতে, ‘Exploring the rate plans’ পৃষ্ঠাটি দেখুন। | প্রযোজ্য নয় | হ্যাঁ |
suppressWarning | ডেভেলপার যদি এমন একটি রেট প্ল্যান কেনার চেষ্টা করেন যা অন্য একটি কেনা রেট প্ল্যানের সাথে ওভারল্যাপ করে, তবে ত্রুটিটি দমন করা হবে কিনা তা নির্দিষ্ট করার জন্য একটি ফ্ল্যাগ। এর মান নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:
| প্রযোজ্য নয় | না |
waveTerminationCharge | নতুন রেট প্ল্যান সক্রিয় করার অংশ হিসেবে কোনো সক্রিয় রেট প্ল্যান বাতিল করা হলে, বাতিলকরণ ফি মওকুফ করা হবে কিনা তা নির্দিষ্ট করার জন্য একটি ফ্ল্যাগ। এর মান নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:
| প্রযোজ্য নয় | না |
উদাহরণস্বরূপ, নিম্নলিখিত অনুরোধটি নির্দিষ্ট ডেভেলপারের জন্য location_&_messaging রেট প্ল্যানটি ক্রয় করে:
curl "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/5cTWgdUvdr6JW3xU/developer-rateplans" \
-X POST \
-H "Content-Type:application/json" \
-u email:password \
-d '{
"developer":{
"id":"5cTWgdUvdr6JW3xU"
},
"startDate":"2017-08-30",
"ratePlan":{
"id":"location_&_messaging"
},
"suppressWarning":false
}'
এই উদাহরণে, suppressWarning প্রপার্টিটি false এ সেট করা আছে। এক্ষেত্রে, কোনো দ্বন্দ্বের (conflict) ক্ষেত্রে একটি এরর (error) দেখানো হবে। উদাহরণস্বরূপ, যদি ডেভেলপার এমন একটি রেট প্ল্যান কেনার চেষ্টা করেন যা অন্য একটি কেনা রেট প্ল্যানের সাথে ওভারল্যাপ করে, তাহলে একটি এরর দেখানো হয়। এটি মনিটাইজেশনের জন্য ইউজার ইন্টারফেস প্রদানকারী একটি অ্যাপ্লিকেশনকে এররটি ইন্টারসেপ্ট করতে এবং ডেভেলপারকে নিশ্চিতকরণের জন্য (প্রয়োজন অনুযায়ী) দ্বন্দ্বপূর্ণ প্রোডাক্টগুলো প্রদর্শন করতে সক্ষম করে। যদি suppressWarning true তে সেট করা হয়, তাহলে মনিটাইজেশন ডেভেলপারের কেনা সেই সমস্ত রেট প্ল্যান বাতিল করে দেয় যেগুলোতে দ্বন্দ্বপূর্ণ প্রোডাক্ট থাকা এপিআই প্যাকেজগুলো রয়েছে। এরপর এটি ডেভেলপারের জন্য একটি নতুন এপিআই প্যাকেজ কিনে নেয়।
নিম্নলিখিত অনুরোধটি একটি পরিবর্তনযোগ্য নোটিফিকেশন রেট প্ল্যান ক্রয় করে এবং লেনদেনের লক্ষ্যমাত্রা ৪০০০-এ নির্ধারণ করে।
curl "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/5cTWgdUvdr6JW3xU/developer-rateplans" \
-X POST \
-H "Content-Type:application/json" \
-u email:password \
-d '{
"developer":{
"id":"5cTWgdUvdr6JW3xU"
},
"ratePlan":{
"id":"adjustable-notification-plan"
},
"startDate": "2017-03-24",
"quotaTarget": 4000,
"suppressWarning":false
}'
উপরের উদাহরণ দুটির যেকোনো একটিতে, যদি নিম্নলিখিত ত্রুটি বার্তাটি ফেরত আসে:
Developer legal name not specified.
এরপর আপনাকে অবশ্যই MINT_DEVELOPER_ADDRESS এবং MINT_DEVELOPER_LEGAL_NAME এই মনিটাইজেশন অ্যাট্রিবিউটগুলো সেট করতে হবে এবং তারপর এপিআই কলটি পুনরায় করতে হবে।
এপিআই ব্যবহার করে কোনো ডেভেলপারের কেনা রেট প্ল্যানের মেয়াদ শেষ হয়ে যাওয়া
কোনো ডেভেলপারের কেনা রেট প্ল্যানের মেয়াদ শেষ করতে (বা বাতিল করতে), কেনা রেট প্ল্যানের বিবরণ আপডেট করুন এবং /organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans/{developer_rateplan_id} রিসোর্সে একটি PUT অনুরোধের রিকোয়েস্ট বডিতে endDate প্রপার্টিটি উল্লেখ করুন।
রেট প্ল্যানটি নির্দিষ্ট শেষ তারিখের দিন শেষ হওয়া পর্যন্ত কার্যকর থাকবে। উদাহরণস্বরূপ, আপনি যদি ১ ডিসেম্বর, ২০১৭ তারিখে একটি রেট প্ল্যানের মেয়াদ শেষ করতে চান, তাহলে আপনাকে endDate-এর মান 2017-11-30 সেট করতে হবে। এই ক্ষেত্রে, রেট প্ল্যানটির মেয়াদ ৩০ নভেম্বর, ২০১৭ তারিখের দিন শেষে শেষ হয়ে যাবে; ১ ডিসেম্বর, ২০১৭ তারিখের সমস্ত অনুরোধ ব্লক করা হবে।
আপনি প্রকাশিত রেট প্ল্যানটি ক্রয় করলে রেসপন্সে {developer_rateplan_id} ফেরত আসে।
উদাহরণস্বরূপ:
{
"created": "2017-03-31 18:59:54",
"developer": {
...
},
"id": "b1c600b8-f871-496d-8173-12b9950d6ab1",
"quotaTarget": 3000,
"ratePlan": {
...
},
"startDate": "2017-03-31 00:00:00",
"updated": "2017-03-31 18:59:54",
"waiveTerminationCharge": false
}
বিকল্পভাবে, আপনি /organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans একটি GET অনুরোধ পাঠিয়ে ডেভেলপার রেট প্ল্যানের জন্য {developer-rateplan-id} পেতে পারেন, যেখানে {developer_id} হলো ডেভেলপারের ইমেল ঠিকানা। আরও তথ্যের জন্য, একজন ডেভেলপারের কেনা সমস্ত রেট প্ল্যান দেখা দেখুন।
নিম্নলিখিত অনুরোধটি শেষ তারিখ আপডেট করে ১ ডিসেম্বর, ২০১৭ করছে। অর্থাৎ, রেট প্ল্যানটির মেয়াদ ৩০ নভেম্বর, ২০১৭ তারিখ দিনের শেষে শেষ হয়ে যাবে; ১ ডিসেম্বর, ২০১৭-এর সমস্ত অনুরোধ ব্লক করা হবে।
curl "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/developer-rateplans/b1c600b8-f871-496d-8173-12b9950d6ab1"
-X PUT \
-H "Content-Type:application/json" \
-u email:password \
-d '{
"id" : "b1c600b8-f871-496d-8173-12b9950d6ab1",
"developer":{
"id":"dev@mycompany.com"
},
"ratePlan":{
"id":"p1_adjustable-notification-plan"
},
"startDate": "2017-04-15 00:00:00",
"endDate": "2017-11-30",
"quotaTarget": 3000,
"suppressWarning":false
}'