پرش به مطلب اصلی

انتشار نسخهٔ جدید با APIهای مایکت

APIهای پنل توسعه‌دهندگان امکان خودکارسازی ایجاد بسته، بارگذاری فایل نسخه و ارسال آن برای بررسی را فراهم می‌کنند. جریان کلی کار:

۱. اطلاعات بستهٔ انتشار را ایجاد یا ویرایش کنید. ۲. فایل APK را بارگذاری کنید. ۳. بسته را برای بررسی و تأیید ارسال کنید.

امنیت

تمام APIهای این بخش فقط باید از سرور شما فراخوانی شوند. توکن X-Access-Token را در برنامهٔ کلاینت قرار ندهید یا در اختیار دیگران نگذارید.

احراز هویت​

برای تمام درخواست‌ها، توکن صحت‌سنجی برنامه را از پنل توسعه‌دهندگان دریافت و در هدر X-Access-Token ارسال کنید. در مسیرهای این صفحه، {PACKAGE_NAME} نام پکیج برنامه است.

دریافت فهرست بسته‌ها​

curl --get \
'https://developer.myket.ir/api/partners/applications/{PACKAGE_NAME}/release-bundle' \
--header 'X-Access-Token: {ACCESS_TOKEN}' \
--data-urlencode 'status={STATUS}' \
--data-urlencode 'offset={OFFSET}' \
--data-urlencode 'limit={LIMIT}'

پارامتر status اختیاری است. مقادیر آن عبارت‌اند از:

  • JustCreated: بستهٔ تازه ایجادشده که هنوز برای بررسی ارسال نشده است.
  • WaitingForApproval: بسته در حال بررسی است.
  • Rejected: بسته رد شده است.
  • Approved: بسته تأیید شده است.
  • RolledBack: انتشار بسته لغو شده است.

offset برای صفحه‌بندی و باید بزرگ‌تر از صفر باشد. مقدار limit باید بین 1 تا 20 باشد.

پاسخ شامل eol برای مشخص‌کردن پایان فهرست و آرایهٔ releases است. هر بسته می‌تواند شامل عنوان، وضعیت، زمان ایجاد و اطلاعات نسخه‌ها مانند شمارهٔ نسخه، وضعیت تأیید، معماری پردازنده، حداقل SDK و اندازهٔ فایل باشد.

ایجاد یا ویرایش بسته​

اگر بسته‌ای برای برنامه وجود داشته باشد، درخواست زیر اطلاعات آن را ویرایش می‌کند؛ در غیر این صورت بستهٔ جدیدی می‌سازد:

curl --request PUT \
'https://developer.myket.ir/api/partners/applications/{PACKAGE_NAME}/release-bundle' \
--header 'X-Access-Token: {ACCESS_TOKEN}' \
--header 'Content-Type: application/json' \
--data '{
"title": "عنوان نسخه",
"stagedRolloutPercent": 100,
"translationInfos": [
{
"description": "Release notes in English",
"language": "en"
},
{
"description": "توضیحات نسخه به فارسی",
"language": "fa"
}
]
}'

stagedRolloutPercent درصد کاربرانی را مشخص می‌کند که نسخهٔ جدید را دریافت می‌کنند. translationInfos توضیحات انتشار را به تفکیک زبان نگه می‌دارد.

بارگذاری فایل نسخه​

پس از ایجاد بسته، فایل APK را با درخواست PUT و به‌صورت multipart/form-data بارگذاری کنید. حجم فایل نباید بیشتر از ۵۰۰ مگابایت باشد؛ برای فایل‌های بزرگ‌تر از پنل توسعه‌دهندگان استفاده کنید.

curl --request PUT \
'https://developer.myket.ir/api/partners/applications/{PACKAGE_NAME}/release-bundle/upload' \
--header 'X-Access-Token: {ACCESS_TOKEN}' \
--form '=@app.apk'

ارسال بسته برای بررسی​

پس از تکمیل اطلاعات و بارگذاری فایل، بسته را برای بررسی بفرستید:

curl --request POST \
'https://developer.myket.ir/api/partners/applications/{PACKAGE_NAME}/release-bundle/commit' \
--header 'X-Access-Token: {ACCESS_TOKEN}' \
--header 'Content-Type: application/json' \
--data '{
"isManualPublish": false,
"message": "Please review this release"
}'

اگر isManualPublish برابر false باشد، پس از تأیید مدیر نسخه منتشر می‌شود. اگر مقدار آن true باشد، پس از تأیید باید نسخه را به‌صورت دستی منتشر کنید. در فیلد message می‌توانید پیامی برای مدیر ارسال کنید.

حذف بسته یا لغو درخواست بررسی​

برای حذف بستهٔ جاری:

curl --request DELETE \
'https://developer.myket.ir/api/partners/applications/{PACKAGE_NAME}/release-bundle' \
--header 'X-Access-Token: {ACCESS_TOKEN}'

برای لغو درخواست بررسی بسته:

curl --request DELETE \
'https://developer.myket.ir/api/partners/applications/{PACKAGE_NAME}/release-bundle/revert' \
--header 'X-Access-Token: {ACCESS_TOKEN}'

درخواست‌های موفق با کد 200 پاسخ داده می‌شوند. بستهٔ ناموجود، دسترسی نداشتن به برنامه، اطلاعات ناقص یا نسخهٔ در حال بررسی می‌تواند باعث خطا شود.