برنامه های نرخ خرید با استفاده از API

شما در حال مشاهده مستندات Apigee Edge هستید.
به مستندات Apigee X مراجعه کنید .
اطلاعات

این بخش نحوه خرید یک طرح تعرفه منتشر شده و در صورت تمایل، انقضا یا لغو طرح تعرفه خریداری شده را با استفاده از API توضیح می‌دهد.

خرید یک طرح نرخ منتشر شده با استفاده از API

پس از انتشار یک طرح نرخ، یک توسعه‌دهنده یا شرکت می‌تواند با ارسال یک درخواست POST به /mint/organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans آن را خریداری (یا "پذیرش") کند، که در آن {org_name} نام سازمان و {developer_or_company_id} شناسه توسعه‌دهنده یا شرکت است.

برای چشم‌پوشی از هزینه‌های راه‌اندازی هنگام خرید یک طرح تعرفه‌ای، پارامتر پرس‌وجوی waivefees را روی true تنظیم کنید. این علامت زمانی مفید است که شما در حال انتقال توسعه‌دهندگان به کسب درآمد هستید، همانطور که در بخش «مهاجرت توسعه‌دهندگان به کسب درآمد» توضیح داده شده است.

جدول زیر خلاصه‌ای از ویژگی‌های پیکربندی که می‌توانید در بدنه درخواست مشخص کنید، مقادیر پیش‌فرض آنها و اینکه آیا الزامی هستند یا خیر را نشان می‌دهد.

نام توضیحات پیش‌فرض الزامی است؟
startDate

تاریخ شروع طرح تعرفه. به عنوان مثال: 2017-03-24 .

ناموجود بله
endDate

تاریخ پایان طرح تعرفه. به عنوان مثال: 2017-09-24 .

طرح تعرفه تا پایان روز در تاریخ مشخص شده معتبر خواهد بود. برای مثال، اگر می‌خواهید یک طرح تعرفه را در ۱ دسامبر ۲۰۱۷ منقضی کنید، باید مقدار endDate را روی ۲۰۱۷-۱۱-۳۰ تنظیم کنید. در این حالت، طرح تعرفه در پایان روز ۳۰ نوامبر ۲۰۱۷ منقضی می‌شود؛ تمام درخواست‌های ۱ دسامبر ۲۰۱۷ مسدود خواهند شد.

ناموجود خیر
developer

ویژگی id که شناسه توسعه‌دهنده یا شرکتی را که طرح نرخ را خریداری می‌کند، تعریف می‌کند.

ناموجود بله
quotaTarget

تعداد تراکنش‌های هدف مجاز برای توسعه‌دهنده برنامه. می‌توانید پیکربندی کنید که آیا و چه زمانی اعلان‌ها بر اساس درصد دستیابی به تعداد هدف، مانند ۹۰٪، ۱۰۰٪ یا ۱۵۰٪، ارسال شوند. تراکنش‌های اضافی پس از رسیدن به تعداد هدف مسدود نمی‌شوند.

برای غیرفعال کردن اعلان‌ها برای توسعه‌دهنده برنامه، این مقدار را روی یک عدد صحیح مثبت یا ۰ تنظیم کنید.

0 خیر
ratePlan

ویژگی id که شناسه طرح نرخ را تعریف می‌کند.

شناسه طرح تعرفه با نام نمایشی متفاوت است. برای مشاهده جزئیات طرح تعرفه شامل شناسه، به صفحه «بررسی طرح‌های تعرفه» مراجعه کنید.

ناموجود بله
suppressWarning

پرچمی که مشخص می‌کند آیا در صورت تلاش توسعه‌دهنده برای خرید یک طرح تعرفه که با طرح تعرفه خریداری شده دیگری همپوشانی دارد، خطا نمایش داده شود یا خیر. مقدار می‌تواند یکی از موارد زیر باشد:

  • true - کسب درآمد تمام طرح‌های نرخ خریداری شده‌ای را که توسعه‌دهنده برای بسته‌های API حاوی محصولات API متناقض دارد، خاتمه می‌دهد. سپس یک بسته API جدید برای توسعه‌دهنده خریداری می‌کند.
  • false - در صورتی که یک طرح نرخ همپوشانی وجود داشته باشد، خطایی رخ می‌دهد.
ناموجود خیر
waveTerminationCharge

پرچمی که مشخص می‌کند آیا هزینه‌های فسخ قرارداد، هنگام فسخ یک طرح نرخ فعال به عنوان بخشی از فعال‌سازی طرح نرخ جدید، لغو می‌شوند یا خیر. مقدار می‌تواند یکی از موارد زیر باشد:

  • true - هنگام لغو یک طرح نرخ فعال به عنوان بخشی از فعال‌سازی طرح نرخ جدید، از هزینه فسخ قرارداد صرف نظر کنید.
  • false - هنگام لغو یک طرح نرخ فعال به عنوان بخشی از فعال‌سازی طرح نرخ جدید، از هزینه فسخ قرارداد صرف نظر نکنید.
ناموجود خیر

برای مثال، درخواست زیر طرح نرخ 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 تنظیم شده است. در این حالت، در صورت بروز تداخل، خطایی ایجاد می‌شود. برای مثال، اگر توسعه‌دهنده سعی کند یک طرح نرخی را خریداری کند که با طرح نرخی خریداری‌شده‌ی دیگری همپوشانی دارد، خطایی ایجاد می‌شود. این امر به برنامه‌ای که رابط کاربری برای کسب درآمد ارائه می‌دهد، امکان می‌دهد تا خطا را رهگیری کرده و محصولات متناقض را برای تأیید (در صورت لزوم) به توسعه‌دهنده نمایش دهد. اگر suppressWarning روی true تنظیم شده باشد، کسب درآمد تمام طرح‌های نرخی خریداری‌شده‌ای را که توسعه‌دهنده برای بسته‌های API حاوی محصولات متناقض دارد، خاتمه می‌دهد. سپس یک بسته API جدید برای توسعه‌دهنده خریداری می‌کند.

درخواست زیر یک طرح نرخ اعلان قابل تنظیم را خریداری می‌کند و تعداد تراکنش‌های هدف را روی ۴۰۰۰ تنظیم می‌کند.

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 را تنظیم کنید و سپس فراخوانی API را تکرار کنید.

انقضای طرح تعرفه‌ای خریداری شده توسط یک توسعه‌دهنده با استفاده از API

برای انقضا (یا لغو) یک طرح نرخ که توسط یک توسعه‌دهنده خریداری شده است، جزئیات طرح نرخ خریداری شده را به‌روزرسانی کنید و ویژگی endDate را در بدنه درخواست در یک درخواست PUT به منبع /organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans/{developer_rateplan_id} مشخص کنید.

طرح نرخ تا پایان روز در تاریخ پایان مشخص شده معتبر خواهد بود. برای مثال، اگر می‌خواهید یک طرح نرخ را در ۱ دسامبر ۲۰۱۷ منقضی کنید، باید مقدار endDate را روی ۲۰۱۷-۱۱-۳۰ تنظیم کنید. در این حالت، طرح نرخ در پایان روز ۳۰ نوامبر ۲۰۱۷ منقضی می‌شود؛ تمام درخواست‌های ۱ دسامبر ۲۰۱۷ مسدود خواهند شد.

هنگام خرید طرح نرخ منتشر شده، {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
}

روش دیگر این است که می‌توانید با ارسال یک درخواست GET به آدرس /organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans ، {developer_id {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 مراجعه کنید .
اطلاعات

این بخش نحوه خرید یک طرح تعرفه منتشر شده و در صورت تمایل، انقضا یا لغو طرح تعرفه خریداری شده را با استفاده از API توضیح می‌دهد.

خرید یک طرح نرخ منتشر شده با استفاده از API

پس از انتشار یک طرح نرخ، یک توسعه‌دهنده یا شرکت می‌تواند با ارسال یک درخواست POST به /mint/organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans آن را خریداری (یا "پذیرش") کند، که در آن {org_name} نام سازمان و {developer_or_company_id} شناسه توسعه‌دهنده یا شرکت است.

برای چشم‌پوشی از هزینه‌های راه‌اندازی هنگام خرید یک طرح تعرفه‌ای، پارامتر پرس‌وجوی waivefees را روی true تنظیم کنید. این علامت زمانی مفید است که شما در حال انتقال توسعه‌دهندگان به کسب درآمد هستید، همانطور که در بخش «مهاجرت توسعه‌دهندگان به کسب درآمد» توضیح داده شده است.

جدول زیر خلاصه‌ای از ویژگی‌های پیکربندی که می‌توانید در بدنه درخواست مشخص کنید، مقادیر پیش‌فرض آنها و اینکه آیا الزامی هستند یا خیر را نشان می‌دهد.

نام توضیحات پیش‌فرض الزامی است؟
startDate

تاریخ شروع طرح تعرفه. به عنوان مثال: 2017-03-24 .

ناموجود بله
endDate

تاریخ پایان طرح تعرفه. به عنوان مثال: 2017-09-24 .

طرح تعرفه تا پایان روز در تاریخ مشخص شده معتبر خواهد بود. برای مثال، اگر می‌خواهید یک طرح تعرفه را در ۱ دسامبر ۲۰۱۷ منقضی کنید، باید مقدار endDate را روی ۲۰۱۷-۱۱-۳۰ تنظیم کنید. در این حالت، طرح تعرفه در پایان روز ۳۰ نوامبر ۲۰۱۷ منقضی می‌شود؛ تمام درخواست‌های ۱ دسامبر ۲۰۱۷ مسدود خواهند شد.

ناموجود خیر
developer

ویژگی id که شناسه توسعه‌دهنده یا شرکتی را که طرح نرخ را خریداری می‌کند، تعریف می‌کند.

ناموجود بله
quotaTarget

تعداد تراکنش‌های هدف مجاز برای توسعه‌دهنده برنامه. می‌توانید پیکربندی کنید که آیا و چه زمانی اعلان‌ها بر اساس درصد دستیابی به تعداد هدف، مانند ۹۰٪، ۱۰۰٪ یا ۱۵۰٪، ارسال شوند. تراکنش‌های اضافی پس از رسیدن به تعداد هدف مسدود نمی‌شوند.

برای غیرفعال کردن اعلان‌ها برای توسعه‌دهنده برنامه، این مقدار را روی یک عدد صحیح مثبت یا ۰ تنظیم کنید.

0 خیر
ratePlan

ویژگی id که شناسه طرح نرخ را تعریف می‌کند.

شناسه طرح تعرفه با نام نمایشی متفاوت است. برای مشاهده جزئیات طرح تعرفه شامل شناسه، به صفحه «بررسی طرح‌های تعرفه» مراجعه کنید.

ناموجود بله
suppressWarning

پرچمی که مشخص می‌کند آیا در صورت تلاش توسعه‌دهنده برای خرید یک طرح تعرفه که با طرح تعرفه خریداری شده دیگری همپوشانی دارد، خطا نمایش داده شود یا خیر. مقدار می‌تواند یکی از موارد زیر باشد:

  • true - کسب درآمد تمام طرح‌های نرخ خریداری شده‌ای را که توسعه‌دهنده برای بسته‌های API حاوی محصولات API متناقض دارد، خاتمه می‌دهد. سپس یک بسته API جدید برای توسعه‌دهنده خریداری می‌کند.
  • false - در صورتی که یک طرح نرخ همپوشانی وجود داشته باشد، خطایی رخ می‌دهد.
ناموجود خیر
waveTerminationCharge

پرچمی که مشخص می‌کند آیا هزینه‌های فسخ قرارداد، هنگام فسخ یک طرح نرخ فعال به عنوان بخشی از فعال‌سازی طرح نرخ جدید، لغو می‌شوند یا خیر. مقدار می‌تواند یکی از موارد زیر باشد:

  • true - هنگام لغو یک طرح نرخ فعال به عنوان بخشی از فعال‌سازی طرح نرخ جدید، از هزینه فسخ قرارداد صرف نظر کنید.
  • false - هنگام لغو یک طرح نرخ فعال به عنوان بخشی از فعال‌سازی طرح نرخ جدید، از هزینه فسخ قرارداد صرف نظر نکنید.
ناموجود خیر

برای مثال، درخواست زیر طرح نرخ 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 تنظیم شده است. در این حالت، در صورت بروز تداخل، خطایی ایجاد می‌شود. برای مثال، اگر توسعه‌دهنده سعی کند یک طرح نرخی را خریداری کند که با طرح نرخی خریداری‌شده‌ی دیگری همپوشانی دارد، خطایی ایجاد می‌شود. این امر به برنامه‌ای که رابط کاربری برای کسب درآمد ارائه می‌دهد، امکان می‌دهد تا خطا را رهگیری کرده و محصولات متناقض را برای تأیید (در صورت لزوم) به توسعه‌دهنده نمایش دهد. اگر suppressWarning روی true تنظیم شده باشد، کسب درآمد تمام طرح‌های نرخی خریداری‌شده‌ای را که توسعه‌دهنده برای بسته‌های API حاوی محصولات متناقض دارد، خاتمه می‌دهد. سپس یک بسته API جدید برای توسعه‌دهنده خریداری می‌کند.

درخواست زیر یک طرح نرخ اعلان قابل تنظیم را خریداری می‌کند و تعداد تراکنش‌های هدف را روی ۴۰۰۰ تنظیم می‌کند.

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 را تنظیم کنید و سپس فراخوانی API را تکرار کنید.

انقضای طرح تعرفه‌ای خریداری شده توسط یک توسعه‌دهنده با استفاده از API

برای انقضا (یا لغو) یک طرح نرخ که توسط یک توسعه‌دهنده خریداری شده است، جزئیات طرح نرخ خریداری شده را به‌روزرسانی کنید و ویژگی endDate را در بدنه درخواست در یک درخواست PUT به منبع /organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans/{developer_rateplan_id} مشخص کنید.

طرح نرخ تا پایان روز در تاریخ پایان مشخص شده معتبر خواهد بود. برای مثال، اگر می‌خواهید یک طرح نرخ را در ۱ دسامبر ۲۰۱۷ منقضی کنید، باید مقدار endDate را روی ۲۰۱۷-۱۱-۳۰ تنظیم کنید. در این حالت، طرح نرخ در پایان روز ۳۰ نوامبر ۲۰۱۷ منقضی می‌شود؛ تمام درخواست‌های ۱ دسامبر ۲۰۱۷ مسدود خواهند شد.

هنگام خرید طرح نرخ منتشر شده، {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
}

روش دیگر این است که می‌توانید با ارسال یک درخواست GET به آدرس /organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans ، {developer_id {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
  }'