پایگاه دانش مایکت

View Categories

مدیریت محصولات درون‌برنامه‌ای با استفاده از API

دریافت محصولات درون‌برنامه‌ای

برای دریافت لیست محصولات درون‌برنامه‌ای که ثبت کرده‌اید، می‌توانید این سرویس را فراخوانی کنید:

[GET]
[Header: X-Access-Token]

https://developer.myket.ir/api/partners/applications/{PACKAGE_NAME}/products?limit=10&offset=0

ورودی‌ها

X-Access-Token

برای استفاده از این سرویس باید کلید X-Access-Token را از پنل توسعه‌دهندگان بخش محصولات درون‌برنامه‌ای برنامه مورد نظر، قسمت محصولات و «توکن صحت‌سنجی» دریافت نمایید و به عنوان Header در سرویس خود قرار دهید. به عنوان مثال:

X-Access-Token: 650e0714-a4348-v475-a40-3f3ec5fcf001

PAKCAGE_NAME

پارامتر {PACKAGE_NAME} برابر نام پکیج برنامه شماست: مثلا org.medrik.roosterwars

Limit

کوئری limit برابر تعداد آیتم‌های برگشتی است. در صورتی که این مقدار ارسال نشود، مقدار پیش‌فرض ۱۰۰ برای آن در نظر گرفته می‌شود. همچنین حداکثر میزان درخواستی ۱۰۰۰عدد می‌باشد و در صورتی که بیشتر از این مقدار درخواست شود، مقدار آن ۱۰۰۰ در نظر گرفته می‌شود.

Offset

کوئری offset برابر شماره صفحه‌ی برگشتی است. در صورتی که این مقدار ارسال نشود، مقدار پیش‌فرض ۰ برای آن در نظر گرفته می‌شود که معادل اولین صفحه است.

خروجی‌‌ها

خروجی موفق

در صورتی که محصولی ثبت کرده باشید. خروجی به صورت زیر خواهد بود:

{
    "skus": [{
            "skuId": "GEM1",
            "englishTitle": "Gem Level 1",
            "farsiTitle": "الماس ۱۰۰۰ تومانی مرحله اول",
            "price": 10000,
            "creationDate": "2024-07-27T00:00:05.41",
            "isActive": false
        }, {
            "skuId": "SUBS2",
            "englishTitle": "subscription ",
            "farsiTitle": "اشتراک",
            "price": 2728000,
            "creationDate": "2024-06-19T18:34:18.7",
            "isActive": true
        }
    ],
    "totalCount": 2
}

خروجی‌های ناموفق

در صورتی که X-Access-Token  اشتباه فرستاده شود یا نام پکیج اشتباه باشد. با خطای 401 Unauthorized مواجه می‌شوید:

{
    "code": 401,
    "messageCode": "UnAuthorized",
    "translatedMessage": "دسترسی غیرمجاز"
}

ایجاد محصولات درون‌برنامه‌ای

برای ایجاد یک محصول درون برنامه‌ای از نوع مصرف شدنی از این سرویس میتوانید استفاده کنید:

[POST]
[Header: X-Access-Token]

https://developer.myket.ir/api/partners/applications/{PAKCAGE_NAME}/products

[Body:]
{
	"skuId": "100GOLD2000",
	"farsiTitle": "صد طلا",
	"price": 20000,
	"englishTitle" : "100 Gold 2000 Tuman",
	"isActive": false
}

ورودی‌ها

X-Access-Token

«توکن صحت‌سنجی» که از پنل توسعه‌دهندگان بخش محصولات درون‌برنامه‌ای برنامه مورد نظر دریافت کرده‌اید.

PAKCAGE_NAME

پارامتر {PACKAGE_NAME} برابر نام پکیج برنامه شماست: مثلا org.medrik.roosterwars

پارامترهای Body:

پارامتر skuId برابر شناسه‌ی محصول درون‌برنامه‌ای شما است: مثلا GEM2. ارسال مقدار برای این پارامتر اجباری است و حداکثر طول آن ۱۰۰ کاراکتر در نظر گرفته شده، در صورت عدم ارسال یا رعایت طول کاراکتر با خطای BadRequest مواجه می‌شوید.

پارامتر farsiTitle عنوان فارسی برای محصول درون برنامه‌ای شما است. ارسال مقدار برای این پارامتر اجباری است و حداکثر طول آن ۱۵۰ کاراکتر در نظر گرفته شده، در صورت عدم ارسال یا رعایت طول کاراکتر با خطای  BadRequest مواجه می‌شوید.

پارامتر price قیمتی است که شما برای این محصول به ریال در نظر گرفته‌اید. ارسال مقدار برای این پارامتر اجباری است و حداقل میزان آن ۱۰۰۰ در نظر گرفته شده، در صورت عدم ارسال یا رعایت محدوده‌ی قیمت با خطای BadRequest مواجه می‌شوید.

پارامتر englishTitle عنوان انگلیسی برای محصول درون برنامه‌ای شما است. حداکثر طول این پارامتر ۱۵۰ کاراکتر در نظر گرفته شده، در صورت ارسال آن و عدم رعایت طول کاراکتر با خطای BadRequest مواجه می‌شوید.

پارامتر isActive برای فعال کردن یا غیر فعال کردن این محصول در نظر گرفته می‌شود. در صورت عدم ارسال این مقدار به صورت پیش‌فرض false‌ خواهد بود.

خروجی‌‌ها

خروجی موفق

در صورتی که محصولی ثبت شده باشد. خروجی به صورت زیر خواهد بود:

{
    "code": 200,
    "messageCode": "Successful",
    "translatedMessage": "عملیات با موفقیت انجام شد."
}

خروجی‌های ناموفق

در صورتی که درخواست با خطا همراه باشد، خروجی مشابه زیر خواهد بود:

{
    "code": 401,
    "messageCode": "UnAuthorized",
    "translatedMessage": "دسترسی غیرمجاز"
}

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

ویرایش محصولات درون‌برنامه‌ای

برای ویرایش یک محصول درون برنامه‌ای از نوع مصرف شدنی از این سرویس میتوانید استفاده کنید:

[PUT]
[Header: X-Access-Token]

https://developer.myket.ir/api/partners/applications/{PAKCAGE_NAME}/products/{SKU_ID}

[Body:]
{
	"farsiTitle": "صد طلا",
	"price": 20000,
	"englishTitle" : "100 Gold 2000 Tuman",
	"isActive": false
}

ورودی‌ها

X-Access-Token

«توکن صحت‌سنجی» که از پنل توسعه‌دهندگان بخش محصولات درون‌برنامه‌ای برنامه مورد نظر دریافت کرده‌اید.

PAKCAGE_NAME

پپارامتر {PACKAGE_NAME} برابر نام پکیج برنامه شماست: مثلا org.medrik.roosterwars

SKU_ID

پارامتر {SKU_ID} شناسه محصول درون‌برنامه‌ای شما است: مثلا GEM2.

پارامترهای Body:

پارامتر farsiTitle برای تغییر عنوان فارسی محصول درون برنامه‌ای شما است. در صورتی که مایل به تغییر آن نیستید این پارامتر را ارسال نکنید. حداکثر طول این پارامتر ۱۵۰ کاراکتر در نظر گرفته شده، در صورت عدم رعایت طول کاراکتر با خطای  InternalServerError مواجه می‌شوید.

پارامتر price قیمتی است که شما برای این محصول به ریال در نظر گرفته‌اید. حداقل مقدار آن ۱۰۰۰ در نظر گرفته شده است. در صورتی که مایل به تغییر آن نیستید این پارامتر را ارسال نکنید. در صورت عدم رعایت محدوده‌ی قیمت با خطای InternalServerError مواجه می‌شوید.

پارامتر englishTitle برای تغییر عنوان انگلیسی محصول درون برنامه‌ای شما است. در صورتی که مایل به تغییر آن نیستید این پارامتر را ارسال نکنید. حداکثر طول این پارامتر۱۵۰ کاراکتر در نظر گرفته شده، در صورت عدم رعایت طول کاراکتر با خطای InternalServerError مواجه می‌شوید.

پارامتر isActive برای فعال کردن یا غیر فعال کردن این محصول در نظر گرفته می‌شود.

خروجی‌‌ها

خروجی موفق

در صورتی که محصولی ویرایش شده باشد. خروجی به صورت زیر خواهد بود:

{
    "code": 200,
    "messageCode": "Successful",
    "translatedMessage": "عملیات با موفقیت انجام شد."
}

خروجی‌های ناموفق

در صورتی که درخواست با خطا همراه باشد، خروجی مشابه زیر خواهد بود:

{
    "code": 500,
    "messageCode": "InternalError",
    "translatedMessage": "خطای داخلی سرور"
}

خروجی ناموفق در صورتی رخ می‌دهد که درخواست به اشتباه فرستاده شود  و یا محدودیت‌های body رعایت نشود.