در بعضی از سناریوهای پشتیبانی کاربر برای پرداخت درونبرنامهای نیاز است که با استفاده از API محصول درونبرنامهای را برای یک کاربر مصرف (Consume) کنید. این سناریوها معمولا موقعی پیش میآید که کاربر در فرایند پرداخت درونبرنامهای محصولی را خریداری کرده و به هر دلیلی تحویل نگرفته و توسعهدهندگان از طریق پشتیبانی محصول را به کاربر تحویل میدهند. در این حالت نیاز است که بعد از تحویل محصول با استفاده از API آن محصول را برای کاربر مورد نظر Consume کنند.
استفاده از API مصرف محصولات درونبرنامهای
[PUT] [Header: X-Access-Token] https://developer.myket.ir/api/partners/applications/{PAKCAGE_NAME}/purchases/products/{SKU_ID}/tokens/{TOKEN}/consume
ورودیها
X-Access-Token
برای استفاده از این سرویس باید کلید X-Access-Token را از پنل توسعهدهندگان بخش محصولات درونبرنامهای برنامه مورد نظر، قسمت محصولات و «توکن صحتسنجی» دریافت نمایید و به عنوان Header در سرویس خود قرار دهید. به عنوان مثال:
X-Access-Token: 650e0714-a4348-v475-a40-3f3ec5fcf001
PAKCAGE_NAME
پارامتر {PACKAGE_NAME} برابر نام پکیج برنامه شماست: مثلا org.medrik.roosterwars
SKU_ID
پارامتر {SKU_ID} برابر شناسهی محصول درونبرنامهای شما است: مثلا GEM2
TOKEN
پارامتر {TOKEN} برابر توکن خرید درونبرنامهای است: مثلا 12345678
خروجیها
خروجی موفق
در صورتی که Consume شدن محصول مورد نظر با موفقیت انجام شد، خروجی زیر را همراه با دریافت میکنید:
HttpStatusCode: 200 { "code": 200, "messageCode": "Successful", "translatedMessage": "عملیات با موفقیت انجام شد" }
خروجیهای ناموفق
در صورتی که یک محصول قبلا مصرف شده باشد:
HttpStatusCode: 400 { "code": 400, "messageCode": "SkuAlreadyConsumed", "translatedMessage": "محصول قبلا مصرف شده است" }
در صورتی که توکن مورد نظر یافت نشود:
HttpStatusCode: 404 { "code": 404, "messageCode": "PurchasedSkuNotFound", "translatedMessage": "خرید مورد نظر پیدا نشد" }
در صورتی که محصول مورد نظر یافت نشود:
HttpStatusCode: 404 { "code": 404, "messageCode": "SkuIdNotFound", "translatedMessage": "محصول درون برنامه ای یافت نشد" }
در صورت بروز خطاهای داخلی:
HttpStatusCode: 500 { "code": 500, "messageCode": "InternalError", "translatedMessage": "خطای داخلی سرور" }